本項のすべてのコマンドは、SSH Tectia Client を実行しているマシンからの sshg3 と scpg3 を使用して示されています。サーバ側の設定は、リモート サーバにログインし、コマンドをローカルで入力することによって実行することもできます。
鍵のペアを使用して公開鍵認証を有効にするには、以下の手順を実行してください。
Connection Broker が検索できるディレクトリに鍵を置きます。
デフォルトでは Connection Broker は、UNIX では $HOME/.ssh2
ディレクトリ、Windows では %APPDATA%\SSH\UserKeys
および %APPDATA%\SSH\UserCertificates
ディレクトリにある各鍵の使用を試行します。
また、Windows では、SSH Tectia 構成ツールの [鍵と証明書] ページで鍵の他のディレクトリの場所を追加することもできます。鍵と証明書の管理項を参照してください。UNIX では、ssh-broker-config.xml
ファイル内の general/key-stores/key-store
エレメントを使用できます。キー ストアの設定例項を参照してください。
(オプション) identification ファイルを作成します。
すべての鍵がデフォルトのディレクトリに保存され、公開鍵や証明書による認証にすべての鍵を使用できるようにしている場合は、identification
ファイルを使用する必要はありません。identification
ファイルが存在しない場合、Connection Broker はデフォルトのディレクトリにある各鍵の使用を試行します。identification
ファイルが存在する場合は、そのファイルに記述されている鍵が最初に試行されます。
UNIX では $HOME/.ssh2
ディレクトリに、Windows では %APPDATA%\SSH
ディレクトリに、identification
という名前のファイルを作成します。
そのファイルを任意のテキスト エディタで編集して、以下の行を追加します (id_dsa_2048_a
を秘密鍵のファイル名に置き換えてください)。
IdKey id_dsa_2048_a
鍵は identification
ファイルと同じディレクトリにあると見なされますが、絶対パスまたは相対パスを指定することもできます。
たとえば、Windows では以下のようになります。
IdKey UserKeys\id_dsa_2048_a
identification ファイルには、複数の鍵 ID を含めることができます。identification ファイルの構文の詳細については、$HOME/.ssh2/identification
を参照してください。
他の何らかの認証方法を使用して Server
に接続し、.ssh2
(および .ssh2/authorized_keys
) を作成します。または、ホーム ディレクトリの下に .ssh
ディレクトリがまだ存在しない場合は、そのディレクトリを作成します。
リモート ホストで実行しているサーバのバージョンに応じて、以下のいずれかのコマンドを実行します。
UNIX または z/OS 上の SSH Tectia Server:
$ sshg3 ServerUser@tectia_server mkdir .ssh2
UNIX 上の SSH Tectia Server 5.x 以降で承認ファイルを使用しない場合は、authorized_keys
ディレクトリも作成します。
$ sshg3 ServerUser@tectia_unix mkdir .ssh2/authorized_keys
Windows 上の SSH Tectia Server:
$ sshg3 ServerUser@tectia_win "cmd /c mkdir .ssh2"
Windows 上の SSH Tectia Server 5.x 以降で承認ファイルを使用しない場合は、authorized_keys
ディレクトリも作成します。
$ sshg3 ServerUser@tectia_win mkdir "cmd /c mkdir .ssh2/authorized_keys"
UNIX または z/OS 上の OpenSSH サーバ:
$ sshg3 ServerUser@open_server mkdir .ssh
公開鍵を Server
にコピーします。
リモート ホストで実行しているサーバのバージョンに応じて、以下のいずれかの手順を実行します。
UNIX および Windows 上の SSH Tectia Server 5.x 以降:
SCP を使用して、公開鍵をサーバの authorized_keys
ディレクトリ にアップロードします。デフォルトのディレクトリは、UNIX サーバでは $HOME/.ssh2/authorized_keys
、Windows サーバでは %USERPROFILE%\.ssh2\authorized_keys
です。
$ scpg3 id_dsa_2048_a.pub ServerUser@tectia_server:.ssh2/authorized_keys/
UNIX および Windows 上の SSH Tectia Server 4.x:
SCP を使用して、公開鍵をサーバ (デフォルトでは、UNIX では $HOME/.ssh2
ディレクトリ、Windows サーバでは %USERPROFILE%\.ssh2
ディレクトリ) にアップロードします。
$ scpg3 id_dsa_2048_a.pub ServerUser@tectia4x_server:.ssh2/
SSH Tectia Server for IBM z/OS:
公開鍵を EBCDIC 形式に変換する必要があります。これは、ファイル転送コマンドに dst-site
コマンドライン オプション (scpg3
を使用している場合)、または site
コマンド (sftpg3
を使用している場合) を含めることによって実行できます。
SCP を使用して、公開鍵をサーバ (デフォルトでは、$HOME/.ssh2
ディレクトリ) にアップロードします。
$ scpg3 --dst-site="C=ISO8859-1,D=IBM-1047,X=TEXT" id_dsa_2048_a.pub \ ServerUser@tectia_zos:$HOME/.ssh2/
UNIX 上の OpenSSH サーバ:
SCP を使用して、公開鍵をサーバの $HOME/.ssh
ディレクトリにアップロードします。
$ scpg3 id_dsa_2048_a.pub ServerUser@open_unix:.ssh/
Server
上で、authorization
または authorized_keys
ファイルを作成します。
リモート ホストで実行しているサーバのバージョンに応じて、以下のいずれかの手順を実行します。
UNIX および Windows 上の SSH Tectia Server 5.x 以降では、公開鍵がユーザの authorized_keys
ディレクトリに保存されている場合、承認ファイルは必要ありません。ただし、承認ファイルが使用される場合もあります。このファイルを作成する方法については、下の SSH Tectia Server 4.x に関する情報を参照してください。
UNIX および Windows 上の SSH Tectia Server 4.x と SSH Tectia Server for IBM z/OS では、ユーザの .ssh2
ディレクトリに保存された authorization
ファイルが必要です。承認ファイルでは、ログイン用に承認された公開鍵を指定します。
承認ファイルに鍵のエントリを追加します。UNIX または z/OS サーバでは、以下のようにします。
$ sshg3 ServerUser@tectia_server "echo Key id_dsa_2048_a.pub >> \ .ssh2/authorization"
Windows サーバでは、以下のようにします。
$ sshg3 ServerUser@tectia4x_win "cmd /c echo Key id_dsa_2048_a.pub >> \ .ssh2/authorization"
authorization ファイルの例を以下に示します (デフォルトでは、UNIX および z/OS サーバでは $HOME/.ssh2/authorization
、Windows サーバでは %USERPROFILE%\.ssh2\authorization
)。
Key id_dsa_2048_a.pub
これによって SSH Tectia Server は、ログインを承認するときに id_dsa_2048_a.pub
を有効な公開鍵として使用します。
OpenSSH サーバでは、公開鍵が OpenSSH 公開鍵ファイル形式に変換され、ユーザの .ssh
ディレクトリ内の authorized_keys
ファイルに保存されている必要があります。
サーバ上で公開鍵を OpenSSH 公開鍵ファイル形式に変換し、$HOME/.ssh/authorized_keys
ファイルに追加します。これは、以下のコマンドを使用して実行できます。
$ sshg3 ServerUser@open_server "ssh-keygen -i -f id_dsa_2048_a.pub >> \ .ssh/authorized_keys"
ssh-broker-config.xml
ファイルで公開鍵認証が有効になっていることを確認します (デフォルトでは有効です)。
<authentication-methods> <auth-publickey /> ... </authentication-methods>
この設定ファイルには、他の認証方法も記述できます。最も非対話的な方法を最初に記述します。
Server
が自分のアカウントに対する公開鍵認証を許可するように設定されている場合、これで公開鍵認証を使用して Client
から Server
にログインできます。
以下のようにログインを試行します。
Client$ sshg3 Server
秘密鍵のパスフレーズを入力するよう求められます。パスフレーズを入力した後、SecureShell 接続が確立されます。