Windows端末でTera Termでssh接続をしている。
しかしMac端末では、Tera TermをインストールしようとしたらMac版のTera Termがなかったため、標準のAppであるターミナルを使用してssh接続することとなりますので、メモを残します。
⭐️ .ssh フォダーが存在している。
方法
Macのターミナルで メニューバー → シェル → 新規リモート接続の順に選択

- 「サービス」 →
セキュアシェル(ssh)を選択。 - 「サーバ」 →
+をクリックすると以下のように接続先のIPアドレスの入力が促されるので、入力する。

パーミッションを設定する
パーミッションが緩すぎると警告が
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
そこでMacのターミナルから下記のコマンドでパーミッションを厳しくしておくと解決します。
$ cd .ssh
$ chmod 600 ID_rsa.html
configファイルを作成して設定をまとめておこう
.sshディレクトリ直下にconfigファイルを作成して、その中に接続先のホスト名やユーザー名、秘密鍵ファイルのパス等を全て記載する
configファイル作成
| ホスト名(or IPアドレス) | example1.com |
| ユーザー名 | testuser |
| 秘密鍵のパス | ~/.ssh/id_rsa |
| ポート番号 | 22 |
configファイルの作成と記述
configファイルの作成と同時に、ファイルに中身を記載していきます。
その前に念の為、既にconfigファイルが無いか確認しましょう。
Macのターミナルを開いて以下のコマンドを実行します。
$ ls -la ~/ssh
configが無ければOK、あれば追記という形になりますが覚えてなかったconfigファイルがあるようであればそれは果たして残しておくべきものなのかどうかしっかり確認して下さい。
$ vi ~/.ssh/config
viコマンドで新しく.ssh直下にconfigというファイルを作成し、同時に編集していきます(正確に言うと保存するまではまだ作成されていません)。
configファイルに以下の情報を書き込んで行きます。
Host example1.com
HostName example1.com
Port 22
User testuser
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
TCPKeepAlive yes
ServerAliveInterval 60
ServerAliveCountMax 10
全て「設定名 値」という形です。
| Host | 実際に接続する時に使う名前(自由に決めてOK) |
| HostName | VPSのホスト名やIPアドレス |
| Port | SSHのポート番号 |
| User | VPSのユーザー名 |
| IdentityFile | 秘密鍵の絶対パス |
| IdentitiesOnly | IdentityFileで指定した秘密鍵に限定するかどうか(yes/no) |
| TCPKeepAlive | 接続が有効であるか確認通知を出すかどうか(yes/no) |
| ServerAliveInterval | サーバーから応答が無い時タイムアウトする秒数 |
| ServerAliveCountMax | サーバーから応答がない時応答を求める回数 |
configファイルは誰彼構わず編集されたら困るので、パーミッションを変えておく。
$ chmod 600 ~/.ssh/config
これで準備OKです。
$ ssh example1.com
接続はこれだけ、めっちゃ短くできました!
Enter passphrase for key '/Users/ユーザー名/.ssh/id_rsa':
最後に秘密鍵のパスフレーズを聞かれるので、入力してEnterで接続完了
接続する
コマンドで接続の場合
$ ssh ユーザー名@ホスト名 -i ~/.ssh/秘密鍵までのパス -p ポート番号
ssh -i /Users/piao/.ssh/ID_rsa.html ✖︎✖︎✖︎@server.jp -p 22
Enter passphrase for key '/Users/user/.ssh/ID_rsa.html': → パスワードを入力する


コメント