プロジェクト

全般

プロフィール

Java SSH Client - Maverick Synergy

はじめに

JavaのSSH Clientライブラリの一つ Maverick Synergy SSH Clientを使ったプログラミングのメモです。
JADAPTIVE社が開発・サポートし、商用ライセンスとLGPL v3のデュアルライセンスで提供されるオープンソース製品です。

公式サイト: https://jadaptive.com/en/products/open-source-java-ssh

  • Maverick Synergyは、SSHサーバーライブラリなども提供しています。

はじめの一歩

GradleプロジェクトでMaverickを利用する

build.gradle記述

Maverick Synergy SSH Clientライブラリは、mavenリポジトリで公開されているので、次の記述をします。

  • build.gradle.kts
repositories {
    mavenCentral()
}

dependencies {
    implementation("com.sshtools:maverick-synergy-client:3.0.11")

SshClientで接続

import com.sshtools.client.SshClient;
import com.sshtools.common.ssh.SshException;

  :
        try (var sshClient = new SshClient(host, port, user, password.toCharArray())) {
            System.out.println("SshClient generated);
        } catch (IOException | SshException ex) {
            System.err.println("ERROR:SshClient failed to generate." + ex);
        }

com.sshtools.client.SshClient のコンストラクタで、SSHサーバーのホスト名、ポート番号、ユーザー、パスワードを指定して接続する例です。最初のサンプルなのでパスワード文字列をプログラム上で扱うコードを記載していますが、このほかコンストラクタには、公開鍵認証や実行時にユーザーにパスワードを入力してもらう方法などが用意されています。

参考資料

Javadoc API

Javadoc.io上のMaverick Synergy Client API

  • javadoc.ioは、mavenリポジトリのライブラリのJavadoc APIの公開サイト

チュートリアル

Java SSH Client by Example


3ヶ月前に更新