この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
さて、このアドペンとカレンダーに初めて参戦する大村です。
初日から平井くんがガッツリアプリを作ってボリューミーになっていますが、今回は少しおとなしく、以前はまってしまったmacのSSHキーでの落とし穴の件でも話したいと思います。
まずはおさらいから
Macでの開発をしていると、複数のSSHホストに対して接続することは多々ありますね。
そうした時、複数の鍵を生成して鍵を分けることとかあると思うんですけど、その場合は、~/.ssh/configファイルを書き換えるっていうのは定説のはず。
その場合は、以下の様な形で記述することになります。
# github account git.xxxx.jp コメント行は#ではじめる
Host git.xxxx.jp
HostName git.xxxx.jp
Port 10022
IdentityFile ~/.ssh/id_rsa.xxxx.jp.t_omura
User t_omura
Host yyyy.info
HostName yyyy.info
Port 7999
IdentityFile ~/.ssh/id_rsa
User omura.takatoshi
#トンネルを掘る場合はこうやって設定する
Host 111.111.111.111
ProxyCommand ssh ohmura_takatoshi@000.000.000.000 nc -w 10 111.111.111.111
Host 000.000.000.000
User ohmura_takatoshi
IdentityFile ~/.ssh/id_rsa
Port 22
あくまで一例です。
Hostから次のHostが出てくるまでが一つのセッションとなり、ポート番号や鍵ファイル設定などを記述できます。
これで、次のSSHアクセスする時は
ssh yyyy.info
の形でアクセスすれば良くなるので楽です。
落とし穴は接続するときに
この設定はしたのですが、接続するときに以下の文章が出てうまく行きません。
Permission denied (publickey).
パーミッションの設定がおかしいと出ます。
ちなみにこのファイル、
ssh-keygen -t rsa
というコマンドで出力しただけのシンプルなものでした。
パーミッション関係で色々調べると、とりあえずパーミッションを600にしろって言われたので、そのとおりにします。
chmod 600 ~/.ssh/id_rsa
これでもまだうまく行きません。
で、色々と調べてみたら、最後にこれをしなければならないというところにたどり着きました。
ssh-add ~/.ssh/id_rsa
複数のssh keyを作った場合、これで登録を行わないと使えないみたいです。
盲点でした。前に、別のプロジェクトで公開鍵を作っていたのが原因でした。
といったところで、2日目となります今回は、ちょっとしたMacでスマホアプリを作るときの落とし穴というか半日かかったトラブルについてのお話でした。