Windows10に搭載されているOpenSSHを使って、configを読んでSSH接続する方法がやっとわかったので、備忘録として記載。
‘config’,’秘密鍵ファイル’,’known_hosts’の3つのファイルが先方から送られてきたものの、それをどうすればいいかわからず四苦八苦した。先方にやり方がわかりませんと聞いてみたけど、先方も「Windowsはちょっとわからないので、がんばって調べてみてください」とのこと…まぁそりゃそうだよね…世間はWindowsエンジニアに厳しい。
いろいろ調べたところ、どうやら’.ssh’というディレクトリに上記3つのファイルを置いて、普通ならコマンドプロンプトで
1 |
ssh hoge |
と打つだけでSSH接続ができるらしい。というところまではわかった。
ところが’.ssh’がどこにあるのかがわからなかったレベルで、ようやく置き場所がわかって接続もできたよというお話です。
OpenSSHの確認
まずWindows10のOpenSSHが入っているかチェックしましょう。
1 |
ssh -V |
以下のように出れば入ってます
1 |
OpenSSH_for_Windows_7.6p1, LibreSSL 2.6.4 |
入ってなければインストールしましょう。
ちなみに、Git付属のOpenSSHを使っている場合は、使用方法がいろいろ違うらしいので、あんまり使わないほうがいいんじゃないですかね…ややこしいです。
configの記述方法と設置場所
SSH接続する際、configというファイルを作ってそれを読み込むことで接続が簡単になります。configがないといろいろ大変です。
configの置き場所
configの置き場所は以下。
OpenSSHがインストールされていれば、既にそこに’.ssh’あるはず。
なければディレクトリを作りましょう。
このディレクトリに、”config”という名前のファイルを、拡張子なしで作成します。
ちなみに、秘密鍵(.key)もこのディレクトリに置くのが一般的です。
configの記述方法
configの基本的な記述方法は以下のような感じ
1 2 3 4 5 |
host hoge user hogehoge hostname hogehoge.com port 22 identityfile ~/.ssh/hoge.key |
Host | 接続名(任意) この名前をもとに、「ssh hoge」と入力します。 |
---|---|
HostName | ホスト名 |
User | ログインユーザ名 |
port | ポート番号 |
IdentityFile | 秘密鍵へのパス |
また、一つのconfigファイルで複数のssh接続設定ができます。
1 2 3 4 5 6 7 8 9 10 11 |
host hoge user hogehoge hostname hogehoge.com port 22 identityfile ~/.ssh/hoge.key host fuga user fugafuga hostname fugafuga.com port 22 identityfile ~/.ssh/fuga.key |
接続!
コマンドプロンプトで以下のように入力。
1 |
ssh hoge |
接続できましたでしょうか。
現場からは以上です。
コメント
チルダ(~)は、ユーザーのホームディレクトリです。
ご教示いただきありがとうございます!
configファイルというのはテキスト(.txt)ファイルですか?
どこにhost~を記述するのかわかりません
拡張子なしのテキストファイル config に記述します。
探していたコンテンツ!
LinuxかMacのことしかなかなか見つからず……四苦八苦しておりました。
大変助かりました。