人々の暮らしや人生において成長と成功のきっかけを提供しているマイナビ。 誰もが知りたいと思う生活や働き方、ビジネスのヒントになるような ”トレンド” を様々な角度からお届けします。
DIGMIAは27日(スロバキア時間)、Digmia Enterprise SSHの最新版となるDigmia Enterprise SSH 1.0zを公開した。 DSSHはJavaで開発されたOpenSSHクライアント実装。OpenSSHクライアントを置き換えて使うことを目的に開発されたもので、SSH over SSHトンネリング機能、Groovyを使ったスクリプト機能のサポート、パスワードの保存機能、インタラクティブログインの自動化機能などの特徴がある。動作させるには少なくともJava 6以降のバージョンが必要。 SDDH 1.0zではサポートプラットフォームとしてMac OS X Leopardが追加された。FreeBSD Java 6を移植することで開発が進められているOS X向けJava 6で動作することを前提にしている。OpenSSHと組み合わせて機能拡張する方法はいくつもあるが
14日(米国時間)、SecureJSHの最新版となる「SecureJSH 1.0」が公開された。SecureJSHはJavaで実装されたSSH実装。サーバサイドにおけるRFC-4251 SSH 2.0プロトコルを実装しており、サーバサイドで動作しているJavaアプリケーションに対してSSHアクセスによる監視業務や開発業務を提供する。 プロダクト自体はThe BSD Licenseのもとで提供されている。SSHでサーバに接続して操作する要領で、SecureJSHでJavaアプリケーションに接続してJavaプログラムをコンパイル/実行できるという特徴がある。 SecureJSHにおける主な特徴は次のとおり。 Linux/FreeBSDで使われるシェルのようにインタラクティブに動作し、プロンプトからそのまま複数行のJavaソースコードを入力してそのまま実行できる。コンパイルは透過的に実行されるた
間があいてしまったが、id:n_shuyo:20060820:1156054408 の続き。 JSch で sftp を行うサンプルプログラムを書き散らかしただけで終わっていたので、簡単に説明。 以下ではサンプルソースを抜粋して個々に説明している。サンプルソース全体を見たい場合は前回の記事 id:n_shuyo:20060820:1156054408 参照。 JSch では、セッションインスタンスを生成し、コネクトメソッドで認証したあと、行いたい操作の種別に応じてチャネルを取得するという流れになる。 JSch jsch=new JSch(); // connect session Session session=jsch.getSession(userid, hostname, 22); session.setPassword(password); session.connect();これ
id:n_shuyo:20060814:1155547412 と id:n_shuyo:20060815:1155613198 の続き。 pure Java な SSH-2 実装である JSch で ssh のコマンド実行を実装してみたが、Ganymed SSH-2 と比べてもコーディング上の特に大きな違いはなかった。 一方、ファイル転送では2つのライブラリの違いが大きく出る。 Ganymed では scp が実装されているが、JSch では scp の実装は行われていない( ChannelScp とやらを実装すれば対応できそうだし、実際 sample ディレクトリには ChannelExec を使って scp を記述した場合のサンプルコードが納められているので、おそらくポリシーとしてあえて scp は実装していないのだろう)。その代わりというのも変だが、sftp が実装されており、かなり
id:n_shuyo:20060814:1155547412 の続き。 まずはシンプルな ssh によるリモートコマンド実行。 JSch の作法は、 各機能は ChannelSession を extends したチャネルクラスに実装されている JSch インスタンスに対して、openChannel() を発行して、チャネルインスタンスを取得する というもの。 チャネルクラスは exec(リモート実行), sftp, shell などなどが用意されている(scp はなぜかない……)。 リモートの HostKey チェックをおこなうかどうかの設定は、StrictHostKeyChecking 設定値に ask|yes|no を指定する。 ask を指定した場合はユーザインターフェースを定義して、対話的に確認させることもできるが、ここでは省く。 下の例では no を設定しているが、チェックをさ
JSch -- Java Secure Channel http://www.jcraft.com/jsch/ id:n_shuyo:20060706:1152162198, id:n_shuyo:20060707:1152290107, id:n_shuyo:20060714:1152899236 で3回に分けて SSH2 の pure Java 実装の一つ Ganymed SSH-2 で scp & ssh やってみたメモを記したが、今回は JSch に手を出してみた。 JSch の特徴はこんな感じ。 100% pure Java な SSH-2 実装 BSD style ライセンス ssh, scp, sftp, ポートフォワード, などなど一通りサポート ant タスク sshexec, scp に採用 Ganymed と比較してみる。 Ganymed はバージョンアップも止まって
id:n_shuyo:20060706:1152162198 と id:n_shuyo:20060707:1152290107 の続き。 pure Java での SSH 実装である Ganymed SSH-2 を使って、scp や単発のコマンド実行を行ってみたが、今回は SSH を通じて複数のコマンドを実行してみる。 基本は openSession() でセッションを都度開きながら、execCommand() を呼び出すという流れになるのだが、いくつか落とし穴がある。 まず session.getStdout() を read して標準出力を取得してやらないと、そもそもコマンドが実行されない。 これは touch のような何も出力しないコマンドであってもそうなってしまう。 それではということで、ループで session.getStdout() を read して標準出力をせっせと読み込ん
今日はもう眠いので、単純に1つのコマンド実行まで。 import java.io.*; import ch.ethz.ssh2.*; public class SshTest { private static final String hostname = "ホスト名"; private static final String userid = "ユーザ名"; private static final String password = "パスワード"; private static final int BUFFER_SIZE = 4096; public static void main(String[] arg) { try { SshTest test = new SshTest(); test.doProc(); } catch (IOException ex) {ex.print
ちょい仕事で Java で SSH/SCP を実行するライブラリがあるといいな的展開があって、ちょっと調べたら良さそうなのがあったので、メモ。 Ganymed SSH-2 for Java http://www.ganymed.ethz.ch/ssh2/ 最初読めなかったけど、「ガニメデ」ですね。 100% Pure Java SSH2 をサポート コマンド実行、shell, scp, port forward 機能をサポート BSD ライセンス 昔は Java から scp を叩ける良いライブラリがまだ無く、結局そのときは外部コマンド実行によって実現したものだが、今はこんないいものがあるんやね。 外部コマンド実行だと、どうしても コマンドごとに認証(よってパフォーマンス悪し) 若干不安定(よってエラー処理が面倒) 標準入出力周りの処理をしっかりする必要がある(よってコーディング量が増える
JSch is a pure Java implementation of SSH2. JSch allows you to connect to an sshd server and use port forwarding, X11 forwarding, file transfer, etc., and you can integrate its functionality into your own Java programs. JSch is licensed under BSD style license. Why JSch? Originally, our motivation to develop this stuff is to allow users of our pure java X servers, WiredX, to enjoy secure X session
JCTerm(JCraft's Term) is a pure Java VT100 terminal emulator for SSH2. This terminal emulator also allows you to enjoy port forwarding, X11 forwarding, etc. JCTerm is licensed under GNU LGPL and easily integrated into your programs. Features The current JCTerm has the following features. JCTerm requires JSch 0.1.48 or later. JCTerm runs on JDK 1.3 or previous, J2ME/CDC and J2ME/CLDC/MIDP2.0 by usi
Ganymed SSH-2 for Java is a library which implements the SSH-2 protocol in pure Java (tested on J2SE 1.4.2 and 5.0). It allows one to connect to SSH servers from within Java programs. It supports SSH sessions (remote command execution and shell access), local and remote port forwarding, local stream forwarding, X11 forwarding, SCP and SFTP. There are no dependencies on any JCE provider, as all cry
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く