特に変わったことはないですが、個人的な健忘録として。
操作環境
Windows10 19H1
Terminal (Preview)@PowerShell Core
AWSの無料アカウントを作成する
特に苦労することなく作れると思います
EC2インスタンスを作成
無料枠で作成した
東京リージョン
t2.micro
Amazon Linux 2 AMI
30GB ディスク
キーペアを作成
(適当な名前).pemをダウンロード
C:\Users\ユーザー名\Documents
に置く。
SSH接続
Terminal (Preview)を起動
ssh -i "(適当な名前).pem" ec2-user@パブリック DNS (IPv4)
(インスタンスの作成の右にある接続ボタンから参照可能)
でログイン
初期設定
# パッケージ更新
$ sudo yum update
# タイムゾーン変更(UTCからJST)
$ timedatectl status
$ sudo timedatectl set-timezone Asia/Tokyo
# 日本語ロケール
$ localectl status
$ sudo localectl set-locale LANG=ja_JP.UTF-8
$ sudo localectl set-keymap jp106
ログインユーザー変更
デフォルトのec2-userから変更(ここではtanuki3に変更する)
# ユーザー追加
$sudo useradd tanuki3
# sudo権限の付与
$ sudo usermod -G wheel tanuki3
# ちゃんと出来ているか確認
$ grep wheel /etc/group
# /etc/sudoersの設定
$ sudo visudo
#一番下の行に追加
newuser ALL=(ALL) NOPASSWD: ALL
SSHでログインできるようにする
# ec2-userのauthorized_keysをtanuki3の.sshディレクトリにコピー
$ sudo rsync -a ~/.ssh/authorized_keys ~tanuki3/.ssh/
# 必要なパーミッションの設定
$ sudo chown -R tanuki3:tanuki3 ~tanuki3/.ssh
$ sudo chmod -R go-rwx ~tanuki3/.ssh
# sudoがちゃんと出来るか確認
$ sudo su - tanuki3
$ sudo -s
ec2-userの無効化
# /etc/ssh/sshd_configの設定でec2-userのsshログインを禁止
$ sudo vi /etc/ssh/sshd_config
#一番下の行に追加
DenyUsers ec2-user
# /etc/ssh/sshd_config設定の反映
$ sudo service sshd reload
sshdのLISTENポート変更
デフォルトのまま(ポート:22)だと危ないので、ポートを適当なものに変更(ここでは10022に変更)
# /etc/ssh/sshd_configの編集
Port 22 #追加
Port 10022 #追加
# 設定反映
$ sudo service sshd reload
一旦終了
$ exit
EC2 Management Console→セキュリティグループからポートを追加
・一旦ポート:22は残しておく
・ポート:10022を追加
Terminal Previewにて新しいポートでSSH接続
$ ssh -i "(適当な名前).pem" ec2-user@パブリック DNS (IPv4) -p 10022
接続が確認できたらポート:22を塞ぐ
# /etc/ssh/sshd_configの編集
Port 22 #削除
# 設定反映
$ sudo service sshd reload
EC2 Management Console→セキュリティグループからポートを削除
・ポート:22を削除
参考
https://qiita.com/yangci/items/ef2ab9b6f0d28bad0881
https://qiita.com/nekonoprotocol/items/e1fc5c212bf6a7365f8f
なお、SSH周りで失敗すると大変です(もしなった場合はこちらを)