さくらのVPS(CentOS7)に公開鍵認証でPuttyからSSH接続をする際に詰まったこと
前置き
さくらのサーバーに公開鍵認証する手順は大体以下のようになる。
1. 公開鍵と秘密鍵のペアを作成する(Puttygen.exe)
2. 秘密鍵をローカルに、公開鍵をサーバ側に保存する
3. /etc/ssh/sshd_configを書き換える
(ポートの変更、パスワード認証の停止、rootでのログイン禁止、秘密鍵認証の有効化)
4. 秘密鍵のディレクトリパスをPutty側で指定して、サーバにアクセスする
この手順についてはQiitaのこちらの記事が詳しい
https://qiita.com/sango/items/816136188387221f05b3
ただし、このままではSSH接続ができなかった。ポートを22番ポートに戻し、22番ポートにSSH接続を行うと接続ができる。
結論
結論を言うと、私のサーバではFirewallが動いていて、22番ポート以外への接続を全て弾いていた。
この記事を参考にファイアウォール側で設定を変更し、22番ポートを閉じて、SSHで接続したいポート(仮に50000番)を開いた。
問題の切り分け
ファイアウォールが起動しているかは、
$systemctl status firewalld.service
で確認ができる。active(runnning)と緑色で表示されれば起動している。
Firewallが起動していないのに設定したポートへのSSH接続ができない場合は、他の原因を疑ったほうがいいかもしれない
次は、起動しているファイアウォールが本当に原因かどうか。
友人によると、こういうときはFirewallを一回落としてみて、今回設定したいポート番号(例えば50000)に接続して、接続できるかを確認するのがいいらしい。たしかに。
というわけで、ファイアウォールを落として、SSH接続をしてみる。
コマンドは
$systemctl stop firewalld.service
これでも、SSH接続ができない場合は、ファイアウォール以外にも原因がある可能性がある。他の原因も疑ってみよう。
VPS側で弾かれている可能性
半年後、2台目のサーバ構築の際、別の点で引っかかったのでメモ
VPSサービスの管理画面で設定したポート許可のポリシーで弾かれている可能性がある。確認して、全許可してfirewalldを適切に設定したり、
管理画面で適切なポリシーを設定したりして対応しよう。
鍵に関して
openssh -t rsa -f authorized_key
を使うのおすすめ。
permissionは.ssh/
が600, authorized_key
は700。
puttygenで作ってuploadしてもいいんだけど、ppk形式からrsa形式に変換する手間が発生する(慣れてないだけ)
今回の記事は以上。
Author And Source
この問題について(さくらのVPS(CentOS7)に公開鍵認証でPuttyからSSH接続をする際に詰まったこと), 我々は、より多くの情報をここで見つけました https://qiita.com/taro-hida/items/143bf928fb7103ca0c96著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .