DebianにSSH公開鍵認証を導入する
今日はmac環境!
現状
- SSHでユーザー名とパスワード入れたらログインできる
- sshdも入れなきゃです?と思っていたら、最初からSSHのサービスは走っている模様だった。
目標
SSHログインに鍵認証を導入しよう。
手順
ssh-keygenで公開鍵と秘密鍵のペアを作る。
認証に使う秘密鍵と公開鍵のペアを作ります。
Windows環境だとPuTTYなどについているツールを使うとよろしいかと。
SCPコマンドで公開鍵を転送
SCPコマンドを使って公開鍵をVPS上においてあげます。パスワードは一般ユーザーを作った時のものです。
VPSにSSHログイン
sshコマンドもしくはクライアントソフトなどで、VPSにSSHログインします。このときはまだパスワード認証のはずです。
公開鍵を「~/.ssh/authorized_keys」に追記する形で設置
この場所に置いておくと、鍵認証が有効になる模様。
~/.ssh$ cat id_rsa.pub >> authorized_keys
sudo、vim、chkconfigを入れる
今回直接関係はないのだけど、以下の要領で入れておきます。
- su -でrootになる。
- apt-getでvimとsudoとchkconfigを入れる。
- /etc/sudoersファイルを編集し、普段使うユーザをsudoersに指定する。
# User privilege specification
root ALL=(ALL:ALL) ALL
<ユーザ名> ALL=(ALL:ALL) ALL - $ sudo chkconfig –listで起動中のサービスが確認できたりできなかったり。
- viコマンドをvimへのシンボリックリンクにしたり。
sshdの設定をいじる
$ sudo vi /etc/ssh/sshd_config
:
PermitRootLogin no
:
PasswordAuthentication no
sshdの再起動
$ sudo /etc/init.d/ssh restart
今後のsshログイン
こんな感じのwindowが出てくる。