MacからDebian(さくらVPSサーバー)にssh接続する
ssh接続の設定が初心者には難しかったので備忘録を残します。
サーバー:Debian10.6
クライアント:macOS catalina10.15.7
1. (Macから)(Debianに)ssh接続をパスワード認証で行う
まずはいったんパスワード認証で接続する(後にパスワード認証は無効にする)。
ssh root@xxx.xxx.xx.xxx
rootではデフォルトで拒否される(さくらVPSの場合)ssh -l username xxx.xxx.xx.xxx
一般ユーザーでは認証される
参考資料
ネコでもわかる!さくらのVPS講座 ~第二回「サーバーをさわってみよう!」 | さくらのナレッジ
2. (Debianで)sshサーバーの設定を変更して、rootで直接アクセスできないようにする
root権限で大切なファイルを消してしまうのを避けるため。
cd /etc/ssh
cp sshd_config sshd_config.old
vim sshd_config
#PermitRootLogin yes
→PermitRootLogin no
sudo systemctl restart ssh
sshdの再起動
3. (Debianで)sshサーバーのポート番号を変更する
セキュリティーホールを探す検索ロボットによる攻撃を避けるため。
cd /etc/ssh
cp sshd_config sshd_config.old
`vim sshd_config
#Port 22
→Port xxxxx
xxxxxは新しいポート番号
(ポート番号は0~65535番まであるが、0~1023のウェルノウンポートは避ける)(できるだけ大きい番号の方がいい)sudo systemctl restart ssh
sshdの再起動
設定の確認
- ssh -p xxxxx -l username xxx.xxx.xx.xxx
- ssh -p 22 -l username xxx.xxx.xx.xxx
22番ポートではログインできない
参考資料
ウェルノウンポート(well-knownポート)とは - IT用語辞典 e-Words
SSHのポート番号を変更 - SSHサーバーの設定 - Linux入門 - Webkaru
4. (Macから)(Debianに)ssh接続を鍵認証で行う
セキュリティーホールを探す検索ロボットが適当なパスワードを入れて検索しているので、パスワード認証を無効にするため。
1) (Debianで).sshディレクトリを作成する
mkdir ~/.ssh
chmod 700 ~/.ssh
2) (Macで)RSA鍵を作成する
ssh-keygen -t rsa
パスワード不要ならEnterls ~/.ssh
作成した鍵を確認する
3) (Macで)作成した公開鍵をDebianに送る
scp -P xxxxx ~/.ssh/id_rsa.pub username@xxx.xxx.xx.xxx:~/.ssh/authorized_keys
4) (Debianで)受け取った公開鍵のパーミッションを変更する
cd ~/.ssh
chmod 600 authorized_keys
所有者(自分のアカウント)だけが読み書きできる
5) (Macで)公開鍵でパスワードなしでssh接続できるか確認する
-ssh -p xxxxx username@xxx.xxx.xx.xxx
6) (Debianで)ssh接続を公開鍵認証のみにし、パスワード認証を不許可にする
-cd /etc/ssh
-cp sshd_config sshd_config.old
-vim sshd_config
-#PasswordAuthentication yes
→PasswordAuthentication no
-sudo systemctl restart ssh
sshdの再起動
参考資料
Mac OS X から Linuxサーバ へ、RSA 鍵を用いて SSH 接続する - joker8phoenix's diary
初期設定