読者です 読者をやめる 読者になる 読者になる

公開鍵でログインするsshユーザを作る

凄く今更な話ですが、パッと出来なかったので纏めておきます

今までは自分用のサーバか、もしくは誰かがセットアップしたサーバしか使っていなかったので、いざ自分が管理者になって、他の人のアカウントを作成するときに少し悩みました

これを機にもっと勉強します…


さて、今回はCentOS6.6でsudoとか出来て公開鍵のみでログインするsshユーザを作成します

まずはsudoとか出来るユーザを作成します
(以下usernameは適宜書き換えて下さい)

# useradd username
# passwd username
# usermod -G wheel username
# vi /etc/pam.d/su
⇒auth required pam_wheel.so use_uidを非コメント化
# vi /etc/login.defs
⇒最終行にSU_WHEEL_ONLY yesを追加
# visudo
⇒%wheel ALL=(ALL) ALLを非コメント化


次に公開鍵でログイン出来るように設定します

# su username
$ ssh-keygen -t rsa
$ mv ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
$ su
# vi /etc/ssh/sshd_config
⇒PubkeyAuthentication yesに変更

この辺りで/home/username/.sshの中のid_rsaを抜き出して置いて下さい

最後に

# service sshd restart

すれば大体終わりです


この段階で公開鍵でログイン出来るかチェックしておくことをオススメします

$ ssh -l username -i 公開鍵 hostname

とかすれば繋がる?

後はconf書くとか

Host host
  HostName hostname
  User username
  Port 22
  IdentityFile 公開鍵


ログイン出来たら仕上げを行います


各々で色々あると思いますが、僕の場合はフォルダの権限を変更します

# chgrp wheel フォルダパス
# chmod 775 フォルダパス

後はrootでログインできないようにしたい場合は

# vi /etc/ssh/sshd_config
⇒PermitRootLogin noに変更
# service sshd restart

すれば完了です



凄く今更感がしますが、無事設定が出来て良かったです…