awsでユーザーを作成したので備忘録として残しておく
新規ユーザ作成
まずは、既存のユーザーでssh接続を行う
ssh -i ./.ssh/XXX.pem ec2-user@XX.XXX.XXX.XXX
rootユーザになる
sudo -s
ユーザーとパスワードの作成
useradd ユーザ名
passwd ユーザ名 #入力後設定するpassを求められる
ユーザの設定
sudoを行えるように/etc/sudoersファイルに以下を追加する
ファイルはsudo visudoで開く
# rootに同じ設定があるので、その下の方が良い
ユーザ名 ALL=(ALL) ALL
鍵の作成
#作成したユーザーに移動
sudo su - deploy
cd /home/deploy
#ディレクトリの作成
mkdir .ssh
cd .ssh
#keyの作成
ssh-keygen -t rsa
#ファイル名の変更
mv id_rsa.pub authorized_keys
id_rsa id_rsa.pubの二つが作成されていれば成功。
権限の変更を行う。これを行わないとssh接続ができない
chmod 600 authorized_keys
cd ../
chmod 700 .ssh
cat id_rsaなどで秘密鍵の中身を確認し、ローカルに保存しておく。
接続確認
ssh -i ローカルに保存した秘密鍵のパス ユーザ名@XX.XXX.XXX.XXX
接続できれば終了
エラーハンドリング
接続できなかった場合1
ローカルに保存した鍵の権限の変更
chmod 400 秘密鍵のファイル
接続できなかった場合2
aws側のshh接続の設定ミス.
ssh接続の設定が変わってしまっているかもしれないので、確認をする
vim /etc/ssh/sshd_config
次の記述があることを確認する。もしなければ追加する。
sshd_configAuthorizedKeysFile .ssh/authorized_keys
参考記事
EC2にSSH接続用のユーザーを作成する
https://qiita.com/nekonoprotocol/items/e1fc5c212bf6a7365f8f
Linuxユーザーの追加 SSH公開鍵で接続する。
http://onga-tec.hatenadiary.jp/entry/2016/11/10/Linux%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AE%E8%BF%BD%E5%8A%A0_SSH%E5%85%AC%E9%96%8B%E9%8D%B5%E3%81%A7%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B%E3%80%82