DebianにSSH公開鍵認証を導入する

2013-06-04   treby   Debian  , , このエントリーをはてなブックマークに追加

今日はmac環境!

現状

  • SSHでユーザー名とパスワード入れたらログインできる
    • sshdも入れなきゃです?と思っていたら、最初からSSHのサービスは走っている模様だった。

目標

SSHログインに鍵認証を導入しよう。

手順

ssh-keygenで公開鍵と秘密鍵のペアを作る。

認証に使う秘密鍵と公開鍵のペアを作ります。

ssh-keygenによる鍵作成

Windows環境だとPuTTYなどについているツールを使うとよろしいかと。

SCPコマンドで公開鍵を転送

SCPコマンドを使って公開鍵をVPS上においてあげます。パスワードは一般ユーザーを作った時のものです。

scpで転送

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が出てくる。

秘密鍵のパスワード入力