LoginSignup
11
14

More than 5 years have passed since last update.

【Debian 8 Jessie】sshの設定をこれだけはやっておく

Last updated at Posted at 2017-01-29

この記事は、下記の記事を構成している記事のひとつです。
さくらのVPS と Debian 8 Jessie で独自ドメインのWebサイトを立ち上げる手順

・さくらのVPS(プラン512)
・Debian 8 Jessie(さくらのVPS カスタムインストール)
の環境を前提にしています。

sshのポート番号を変更する

デフォルトでは、ポート22に設定されていますが、有名過ぎるポート番号なので、ちょっとわかりにくいポート番号に変更します。下記の例では、1234に変更しています。

[hoge]$
sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
#Port 22
Port 1234

設定を変更したら、sshdを再起動します。

[hoge]$
sudo systemctl restart ssh

sshにrootユーザでログイン出来ないようにする

今のところ、rootユーザが直接sshログイン出来る必要性が全くないので、rootユーザでは直接sshログイン出来ないように設定を変更します。

[hoge]$
sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
#PermitRootLogin without-password
PermitRootLogin no

設定を変更したら、sshdを再起動します。

[hoge]$
sudo systemctl restart ssh

公開鍵、秘密鍵を作成する

認証したいユーザでサーバにログインし、公開鍵と秘密鍵のキーペアを作成します。
下記の例では、hogeユーザでキーペアを作成しています。

[hoge]$
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hoge/.ssh/id_rsa): ★[Enter]を押下★
Created directory '/home/hoge/.ssh'.
Enter passphrase (empty for no passphrase): ★パスフレーズを入力★
Enter same passphrase again: ★パスフレーズを再入力★
Your identification has been saved in /home/hoge/.ssh/id_rsa.
Your public key has been saved in /home/hoge/.ssh/id_rsa.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx hoge@hostname
The key's randomart image is:
+---[RSA 2048]----+
|         .   .o. |
|        oo.  ..  |
|        .o+...   |
|         *..+    |
|        S .+.    |
|       oE..  .   |
|      . oo    .  |
|       . o.. o   |
|        . . o..  |
+-----------------+

公開鍵

/home/hoge/.ssh/id_rsa.pub

秘密鍵

/home/hoge/.ssh/id_rsa

公開鍵を配置する

作成した公開鍵を、authorized_keys という名前のファイルで配置します。

[hoge]$
cat /home/hoge/.ssh/id_rsa.pub >> /home/hoge/.ssh/authorized_keys

authorized_keys のパーミッションを、600に設定します。

[hoge]$
chmod 600 /home/hoge/.ssh/authorized_keys

id_rsa.pubは、削除して大丈夫です。

[hoge]$
rm /home/hoge/.ssh/id_rsa.pub

秘密鍵をクライアント側にダウンロードする

秘密鍵なので、ダウンロード自体をセキュアに実施する必要があります。
下記は、クライアントPC側から、SCPコマンドで取得する例です。
(WindowsPC で、WinSCPなどを使用してダウンロードしてもOKですが、その手順は省略します。)
注意!クライアント側作業です。

クライアントPC側
scp -P 1234 hoge@ipaddress:/home/hoge/.ssh/id_rsa ~/.ssh/.

ダウンロードが終われば、サーバ側に秘密鍵は不要ですので、削除します。
注意!サーバ側作業です。

[hoge]$
rm /home/hoge/.ssh/id_rsa

公開鍵認証でsshログインする設定

公開鍵認証を有効にします。

[hoge]$
sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
PubkeyAuthentication yes

設定を変更したら、sshdを再起動します。

[hoge]$
sudo systemctl restart ssh

クライアント側から公開鍵認証でsshログインする

ssh -p [ポート番号] -i [秘密鍵ファイル] -l [ユーザー名] [ipaddress or hostname]
(WindowsPCで、Teratermや、puttyでログインしてもOKですが、その手順は省略します。)
注意!クライアント側作業です。

クライアントPC側
ssh -p 1234 -i ~/.ssh/id_rsa -l hoge hostname
Enter passphrase for key '/home/hoge/.ssh/id_rsa': ★パスフレーズを入力★

パスワード認証でログイン出来ないようにする

注意!サーバ側作業です。

[hoge]$
sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config
#PasswordAuthentication yes
PasswordAuthentication no

設定を変更したら、sshdを再起動します。

[hoge]$
sudo systemctl restart ssh
11
14
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
11
14