
SSH-2プロトコルを実装した純JavaのSSHクライアント/サーバーライブラリ。複数の暗号、鍵交換、認証方式、SFTP、SCP、ポートフォワーディングをサポートし、安全なリモートアクセスを実現。

Apache MINA SSHD は、クライアント側とサーバー側の両方で SSH プロトコルをサポートする 100% 純粋な Java ライブラリです。これは、 Unix オペレーティングシステムの SSH クライアントや SSH サーバーの置き換えを目的とするものではなく、SSH サポートを必要とする Java ベースのアプリケーションにサポートを提供します。
このライブラリは、複数の I/O バックエンドを利用できます。
AsynchronousSocketChannel を使用します。server-sig-algs 拡張のデフォルトのクライアント実装とサーバー実装も提供します。supported - DRAFT 05 - セクション 4.4supported2 - DRAFT 13 - セクション 5.4versions - DRAFT 09 - セクション 4.6vendor-id - DRAFT 09 - セクション 4.4acl-supported - DRAFT 11 - セクション 5.4newline - DRAFT 09 - セクション 4.3md5-hash、md5-hash-handle - DRAFT 09 - セクション 9.1.1check-file-handle、 - eddsa optional module), [email protected], [email protected]
, [email protected], [email protected], [email protected]
, [email protected], [email protected], [email protected]注: 上記のリストには、コード内でサポートされているすべてのセキュリティ設定が含まれています。ただし、最新の推奨事項に従い、 デフォルトのクライアント/サーバー設定には、現在安全に使用できると見なされているセキュリティ設定のみが含まれています。含めたいユーザーは、 安全でない設定を 明示的に 行う必要があります。次の設定は非推奨となり、デフォルト設定には含まれなくなりました:
注意:: RFC 8332 - セクション 3.3 によると
実装経験から、SSH サーバーがサポートしていない公開鍵アルゴリズムを試みるクライアントに対して、 認証ペナルティを課すサーバーが存在することが示されています。
"server-sig-algs" 拡張を実装していないサーバーに対して RSA 鍵で認証する場合、クライアントは認証ペナルティを 避けるために "ssh-rsa" 署名をデフォルトにしてもよい (MAY)。新しい rsa-sha2-* アルゴリズムが十分に広く採用され、 "ssh-rsa" を無効にすることが正当化される場合、クライアントは新しいアルゴリズムのいずれかを デフォルトにしてもよい (MAY)。
これは、この問題 (および関連する問題) に遭遇したユーザーは、問題を回避するためにサポートされているセキュリティ設定を 明示的に 変更する必要があることを意味します。
特記事項: ssh-rsa は、まだ多くのシステム / ユーザーが使用しているため、デフォルト設定の一部として残されています。
ただし、将来のバージョンではデフォルトから削除されます。そのため、ユーザーにはできるだけ早く他の鍵 (例: ECDSA、ED25519) への
移行を強くお勧めします。
バグ報告や改善・機能リクエストは、GitHub イシュートラッカー または Apache イシュートラッカー に登録できます。
セキュリティ脆弱性などの機密性の高い問題は、いずれのイシュートラッカーでもなく、プライベートチャネル を通じて報告する必要があります。
Java 8+ (バージョン 1.3 時点)
コードに必要なのは、コアの抽象 slf4j-api モジュールのみです。ロギング API の 実際の実装は、既存の多くのアダプターから選択できます。
sshd-common - プロジェクト全体で使用される基本クラスと、クライアント/サーバーのネットワークサポートを必要としないコードが含まれています。
sshd-core - 接続、トランスポート、チャネル、転送などを実装する基本的な SSH クライアント/サーバーコードが含まれています。
sshd-sftp - サーバー側の SFTP サブシステムと SFTP クライアントコードが含まれています。
sshd-scp - サーバー側の SCP コマンドハンドラーと SCP クライアントコードが含まれています。
sshd-ldap - LDAP サーバーを使用するサーバー側のパスワードおよび公開鍵認証器が含まれています。
sshd-git - JGit SSH セッションファクトリの代替品が含まれています。
sshd-osgi - sshd-common と sshd-core を組み合わせたアーティファクトが含まれており、OSGi 環境にデプロイできます。
sshd-putty - PUTTY 鍵ファイルを解析できるコードが含まれています。
sshd-openpgp - OpenPGP 鍵ファイルを解析できるコードが含まれています (いくつかの制限あり - 関連セクションを参照)。
sshd-cli - コマンドラインクライアント/サーバー用のシンプルなテンプレートが含まれており、Linux の ssh/sshd コマンドに似たルックアンドフィールを提供します。
sshd-contrib - 現在レビュー中の実験的コードで、他のアーティファクトのいずれかに組み込まれる可能性があります (または、まったく新しいアーティファクトになる可能性もあります - 例: sshd-putty はこのようにして発展しました)。
テストを含む
mvn clean install
テストなし
mvn -Pquick clean install
check-file-namecopy-file、copy-data - DRAFT 00 - セクション 6、7space-available - DRAFT 09 - セクション 9.2filename-charset、filename-translation-control - DRAFT 13 - セクション 6 - クライアント側のみ