インスタンスを立ち上げて外からSSHで繋ぐまで
AWSでEC2インスタンスを建てて一番最初にやることと言えば、SSH用のユーザーを作るところかな、と思います。visudoでNOPASSWDにするとか色々ツッコミところはあるかと思いますが。
これ、よくやるのに忘れるので健忘ログを兼ねて。
リモート側
Cent OS, Amazon Linux系の場合
ssh ec2-user@~ -i ~.pem
sudo yum update -y
Ubuntu の場合
ssh ubuntu@~ -i ~.pem
sudo apt update -y
ローカルタイムの変更
# ローカルタイムを【Japan】に変更
sudo ln -sf /usr/share/zoneinfo/Japan /etc/localtime
ユーザーの追加
sudo adduser nasayama
sudo visudo
Cent OS, Amazon Linuxの場合
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
+ nasayama ALL=(ALL) NOPASSWD: ALL
Ubuntuの場合
visudoがnanoで開かれてしまう場合がある
sudo update-alternatives --set editor /usr/bin/vim.basic
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
nasayama ALL=(ALL:ALL) ALL
接続キー設定
# newuserのホームディレクトリに.sshディレクトリを作成
mkdir .ssh
# ファイルパーミッションを700(所有者のみ、読み取り、書き込み、削除が可能)に変更
chmod 700 .ssh
# authorized_keysを作成
touch .ssh/authorized_keys
# ファイルパーミッションを600(所有者のみ、読み取りおよび書き込みが可能)に変更
chmod 600 .ssh/authorized_keys
vim .ssh/authorized_keys
ローカル側
cat id_rsa.pub >> pbcopy
# リモート側のauthorized_keysに貼り付けて :wq もしくは ZZ
ssh nasayama@~ -i id_rsa