3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SSH接続をconfigファイルを使ってラクする

Last updated at Posted at 2022-01-21

概要

SSH接続するとき、鍵ファイルやホスト名などの長いパラメータを毎回入力しなくていい方法。

対象者

  • macでターミナルを使っている
  • ターミナルでファイルの操作が行える
  • テキストエディタを使える
  • シェルはzsh(最近のmacデフォルトはzsh:2022年時点)
  • SSH接続をよく使っている

関連記事

目次

普通のssh接続

sshのパラメータはこんな感じなので

ssh -i 鍵ファイル ユーザー名@ホスト名

普段、次のように入力していると思います。

ssh -i =/keys/hoge-key.pem hoge-user@hoge-server

SSHをよく使ってると面倒になりますよね。

configファイルを使ったssh接続

後述する設定ファイルを用意しておくと、こんな感じで接続できるようになります。

ssh hoge

configファイルを使うメリット

  • 入力が楽になる
  • 鍵ファイルやホスト名以外のパラメータも指定できる
  • 入力補完が使えるようになる(zshの設定が必要)
  • sftp、rsyncでも使える

configファイルの用意

ホームディレクトリに.sshディレクトリを作る

mkdir -p ~/.ssh

configファイルを作成する

vi ~/.ssh/config

configファイルの書き方はこんな感じ

Host 接続名
HostName ホスト名やIPアドレス
User ユーザー名
IdentityFile 鍵ファイルへのパス

SSHで接続がこうだったら

ssh -i ~/keys/hoge-key.pem hoge-user@hoge-server

configファイルの内容はこのように書きます。

Host hoge
HostName hoge-server
User hoge-user
IdentityFile ~/keys/hoge-key.pem

configファイルの設定で接続する(Host行に記載した名前を指定する)

ssh hoge

これで接続できるようになります。

さらに便利に

複数の接続先や、共通設定なども書けます。

# 共通設定
Host *
ServerAliveInterval 60

# コメント
Host hoge
HostName hoge-server
User hoge-user
IdentityFile ~/keys/hoge-key.pem

# コメント
Host fuga
HostName fuga-server
User fuga-user
IdentityFile ~/keys/fuga-key.pem
ssh hoge

ssh fuga

接続先の入力補完について

zshの入力補完機能を有効にすると接続先を補完してくれるようになります。

ssh h

と入力しておいて、「tabキー」を押すと

ssh hoge

と補完されます。

zshの補完機能を有効にするには、ホームディレクトリに.zshrcファイル作ります。

vi ~/.zshrc
autoload -U compinit
compinit

ターミナルを入り直すか、次のコマンドで読み込むと補完が有効になります。

source ~/.zshrc
3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?