始めにやること
SSH鍵について
SSH鍵ファイルは予め支給されることが一般的で、よく使用される拡張子は.pemです。Macの場合、SSH鍵は以下のディレクトリに配置します:/Users/【パソコンのユーザー名】/.ssh/。
接続方法
初めにコマンドラインで接続ができるか試し、その後Transmitで接続を試みます。Transmitでは、SSH鍵のエラーが表示されないため、先にコマンドでの接続確認が推奨されます。
コマンドで接続する場合
Macの場合、以下のコマンドをターミナルに入力します:
sftp -i 【SSH鍵のパス】 【ログインユーザー名】@【IP名】:/
ポイントは、ポート番号を指定しないことです。
例えば、IPが1.234.567.89、ログインユーザ名がuser-hoge、鍵ファイルがssh-hoge.pemの場合、次のようになります:
sftp -i /Users/【パソコンのユーザー名】/.ssh/ssh-hoge.pem user-hoge@1.234.567.89:/
エラーが出た場合
上記のコマンドを実行すると、以下のエラーが出ることがあります:
Warning: Permanently added '1.234.567.89' (ED25519) to the list of known hosts.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/【パソコンのユーザー名】/.ssh/ssh-hoge.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/Users/【パソコンのユーザー名】/.ssh/ssh-hoge.pem": bad permissions
user-hoge@1.234.567.89: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Connection closed
この問題は、秘密鍵ファイル(/Users/【パソコンのユーザー名】/.ssh/ssh-hoge.pem)のパーミッションに起因します。Unixベースのシステム(LinuxやMac OSなど)では、SSHは秘密鍵ファイルに他のユーザーがアクセスできないようにする必要があります。
これに対処するには、所有者だけが読み書きできるようにパーミッションを制限する必要があります。以下のchmodコマンドでパーミッションを変更します:
chmod 600 /Users/【パソコンのユーザー名】/.ssh/ssh-hoge.pem
このコマンドは、ファイルまたはディレクトリのパーミッションを変更するUnixコマンドで、600は数値でパーミッションレベルを表し、所有者に対する読み取りと書き込みのパーミッションを指定します。
このコマンドを実行した後に、もう一度sftpの接続コマンドを実行すると接続できます。
Transmitでの接続
接続設定で注意するポイントは次の通りです:
- プロトコルを「SFTP」に設定します。
- パスワードの鍵マークをクリックし、上記で設定したSSH鍵を選択します。

以上が、SSH鍵ファイルを使用したSFTPの接続方法(コマンド・Transmit)です。
