web-dev-qa-db-ja.com

コマンドラインからRSA / DSAキーを指定してopenssh sftpコマンドを使用する方法

Openssh sshおよびscpコマンドは-iコマンドラインオプションを使用して、認証に使用するRSA/DSAキーへのパスを指定します。

Sftpのmanページを見て、RSA/DSAキーを指定する方法を見つけることができませんでした。

〜/ .ssh/id_ {dsa、rsa}キーではなく、指定されたRSA/DSAキーを使用するsftpセッションを開始する方法を探しています。

LinuxでOpenSSH sftpクライアントを試しましたが、他のプラットフォームでも同じオプションが必要です。

39
Adi Roiban

可能なオプションの1つは、sftp -oIdentityFile=/path/to/private/keyfile。それがあなたのために働くかどうか言うためにより多くの情報が必要です。 Mac/Linuxで動作するようです。

43
dmourati

-i sftpまたはsshコマンドの引数。

sftp -i /path/to/private/keyfile ...

-iオプションを使用できない場合は、次のような構文で-oオプションを使用できます。

sftp -oIdentityFile=/path/to/private/keyfile ...
15
slubman

接続用の代替構成ファイルを作成し、-F sshに使用を指示するスイッチ。構成ファイルを作成します。 〜/ .ssh/config.sftpと内容

Host remote.Host.tld
User RemoteUserName
IdentityFile /path/to/atlernate/identityfile

次に、sftpを次のように呼び出します

sftp -F ~/.ssh/config.sftp remote.Host.tld
Connecting to remote.Host.tld...
Enter passphrase for key '/path/to/atlernate/identityfile':
sftp>

上記の設定は、(この設定ファイルが使用される場合)代替キーの使用をremote.Host.tldのRemoteUserNameユーザーに制限します。

代替構成ファイルの使用方法については、 ssh_confg のマニュアルページを参照してください。

8
user9517