概要
EC2サーバーへログインするとどのようなログが記録されるのかを整理する。
前提
- EC2インスタンスをパブリックサブネットで起動
- セキュリティグループで、22番ポートのインバウンドを許可
- OS: Amazon Linux 2023
- OpenSSH_8.7p1, OpenSSL 3.0.8 7 Feb 2023
- キーペア設定
SSH
ログ
$ sudo journalctl -u sshd
EC2 Instance Coreで接続した場合
18.237.140.165(EC2 Instance Coreのエンドポイント)からアクセスに成功していることが分かる。
Oct 28 03:17:51 ip-10-0-0-214.us-west-2.compute.internal ec2-instance-connect[2691]: Querying EC2 Instance Connect keys for matching fingerprint: SHA256:<hash>
Oct 28 03:17:51 ip-10-0-0-214.us-west-2.compute.internal ec2-instance-connect[2719]: Providing ssh key from EC2 Instance Connect with fingerprint: SHA256:<hash>, request-id: <uuid>, for IAM principal: arn:aws:iam::<AWSアカウントID>:user/<IAMユーザ名>
Oct 28 03:17:52 ip-10-0-0-214.us-west-2.compute.internal ec2-instance-connect[2856]: Querying EC2 Instance Connect keys for matching fingerprint: SHA256:<hash>
Oct 28 03:17:52 ip-10-0-0-214.us-west-2.compute.internal ec2-instance-connect[2884]: Providing ssh key from EC2 Instance Connect with fingerprint: SHA256:<hash>, request-id: <uuid>, for IAM principal: arn:aws:iam::<AWSアカウントID>:user/<IAMユーザ名>
Oct 28 03:17:53 ip-10-0-0-214.us-west-2.compute.internal sshd[2562]: Accepted publickey for ec2-user from 18.237.140.165 port 45002 ssh2: ED25519 SHA256:<hash>
Oct 28 03:17:53 ip-10-0-0-214.us-west-2.compute.internal sshd[2562]: pam_unix(sshd:session): session opened for user ec2-user(uid=1000) by (uid=0)
SSHでログイン成功した場合(公開鍵認証)
Oct 28 03:51:33 ip-10-0-0-214.us-west-2.compute.internal sshd[4877]: Accepted publickey for ec2-user from <接続元IP> port 63523 ssh2: RSA SHA256:<hash>
Oct 28 03:51:33 ip-10-0-0-214.us-west-2.compute.internal sshd[4877]: pam_unix(sshd:session): session opened for user ec2-user(uid=1000) by (uid=0)
SSHでログイン失敗した場合
-iに指定した秘密鍵(pem)が異なる場合
Oct 28 03:54:43 ip-10-0-0-214.us-west-2.compute.internal sshd[5038]: Connection closed by authenticating user ec2-user <接続元IP> port 63617 [preauth]`
※ 不正アクセス攻撃のリクエストだと、もう少し色んなパターンがあります。
lastコマンド
ログイン履歴を表示
$ last
- 1行目:SSHでログイン。03:51にログイン。2分後の03:54にログアウト
- 2行目:EC2 Instance Coreでログイン。03:40にログインし、現在もログイン中
- 3行目:EC2 Instance Coreでログイン。03:17にログインし、22分後の03:40にログアウト
- 4行目:再起動ログ。カーネルバージョンは6.1.112-122.189。03:08に起動して、現在も起動中。
ec2-user pts/4 xx.xx.xx.xx Mon Oct 28 03:51 - 03:54 (00:02)
ec2-user pts/0 18.237.140.165 Mon Oct 28 03:40 still logged in
ec2-user pts/0 18.237.140.165 Mon Oct 28 03:17 - 03:40 (00:22)
reboot system boot 6.1.112-122.189. Mon Oct 28 03:08 still running
※ セッションマネージャーで入ったものは出ないようなので、SSMのコンソール画面から履歴見るしかなさそうです。
おまけ
設定ファイル
$ sudo vi /etc/ssh/sshd_config
sshd_configの中身は以下の通り。
Include /etc/ssh/sshd_config.d/*.conf
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
PermitEmptyPasswords no
Subsystem sftp /usr/libexec/openssh/sftp-server
AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys %u %f
AuthorizedKeysCommandUser ec2-instance-connect