AWSでEC2インスタンスを立ち上げるとSSHで接続する時は鍵認証になるのがデフォルトです。
ただ、ユーザを追加するたびに鍵を作成する必要があるのでかなり手間なんですね。
特に外部ベンダーの複数人が使う時はそれぞれのユーザ作って、鍵作ってとやらないといけないので、できれば馴染み深いパスワード認証にしたいですよね。
今日はそんなお悩み解決のために鍵認証からパスワード認証に変更する方法のお話です。
サーバ接続するユーザを作成
ひとまずデフォルトのユーザで鍵認証でログインしてください。
そしてユーザを作成します。
-
ユーザ作成
※drpotecoというユーザにします。みなさんは好きなユーザ名で作ってくださいね。useradd drpoteco
-
パスワード変更
※このパスワードでログインしますよ。下のコマンドを入力すると2回パスワード入力を求められます。passwd drpoteco
-
sudo権限を付与
vi /etc/sudoers
root ALL=(ALL) ALLの記述があるので、その下に下記を追加します。
drpoteco ALL=(ALL) ALL
保存するんですがReadOnlyのファイルなので「wq!」で保存して終了してくださいね。
SSH接続の設定を変更
SSH接続の設定を変更していくので、設定ファイルを開きます。
vi /etc/ssh/sshd_config
PasswordAuthentication no となっているので「yes」に変更してください。
PasswordAuthentication yes
これで保存します。※こちらは普通に「wq」で保存できます。
ここで忘れないようにsshdを再起動します。再起動しないと設定が反映しません。
sudo /etc/rc.d/init.d/sshd restart
パスワード接続
もうひとつウインドウ立ち上げてパスワード接続して見てください。
ボクはTeraTermで接続しています。
これで無事に接続できればOK。
ちなみにこの状態だとデフォルトユーザは鍵認証のままです。
最後に
こんな簡単にパスワード認証に変更することができました。
あとは外部のベンダーにサーバの情報とログインユーザの情報を渡せばOKです。
色々と便利なAWSですが、セキュリティには十分気をつける必要があります。
安くて便利だからといって情報ダダ漏れで穴だらけじゃ本末転倒ですからね。