先日、SublimeText2 のsftp-configの設定について困った件という記事を書きました。
要は、SublimeText2で編集したファイルを、SFTP/FTPというプラグインを使って、サーバー側にUPLoadするためにsftp-config.jsonというファイルをどのように設定すれば良いのか?という問題です。
その後、各方面から、アドバイスをいただき、解決にこぎつけることができましたので、ご報告がてらブログ記事にしてみました。
解決方法その1 パスワード認証方式に変更
SSHサーバーへの接続のための方法を公開鍵暗号方式からそれをパスワード認証方式に変える。具体的には次のようにsshd_configの設定を変更します。
$sudo vi /etc/ssh/sshd_config
PasswordAuthentication yes
私の場合、パスワード認証方式がnoであったためそれをyesに変えました。
解決方法その2 FTPサーバーで接続
ファイル転送方式をSFTPからFTPに変えます。制御用のコネクションポートを21番ポートにします。この場合、sftp-config.jsonファイルを次のように書き換えます。
“type”: “ftp”
// “password”: “password”(コメントアウトする)
“port”: “21”
まとめ
ファイル転送は、公開鍵暗号方式で行うことがもっとも望ましいと思います。そういう観点で言えば、今回の解決方法は、ホントの解決にはなってません…。
今回紹介した方法について本番環境で同じことを行ってもいいかどうかは、専門家の方(インフラエンジニアなど)とよく相談されることをおすすめします。
SFTPによる公開鍵暗号方式を用いてファイル転送を行うためには、sftp-config.jsonの下の方に記述されている、“ssh_key_file”: “~/.ssh/id_rsa”という秘密鍵を何とかしないといけないと思います。
ちなみに私の場合、開発環境が”Windows+Linux”なんで、秘密鍵のファイル形式はPuTTY形式にしておいた方がいいでしょう。
今のところわかったのはここまで。何かの参考になれたら幸いです。関係者のみなさまありがとうございました。
〔参考サイト〕