EC2 SSH 접근을 로깅해보기

한승재·2026년 4월 4일
post-thumbnail

ssh로 접근할 때 password로 접근 가능하게 하려면 sshd_config 파일을 수정해줘야한다.

sudo vi /etc/ssh/sshd_config

위 명령어를 쳐서 PasswordAuthentication no 로 되어있는걸 PasswordAuthentication yes 로 수정해주고 아래 명령어로 sshd를 재시작 하면된다.

sudo systemctl restart sshd

명령어 입력후 비밀번호를 설정한다.

sudo passwd ec2-user

AL2023에 rsylog 패키지를 설치하고 서비스를 시작해준다.

sudo dnf install -y rsyslog
sudo systemctl enable --now rsyslog

/var/log/ 경로에 secure 파일이 생겼는지 확인해준다.

sudo cat /var/log/secure

cloudwatch ssh 로그는 cloudwatch agent를 이용해준다.

  • 설치 명령어
sudo yum install -y amazon-cloudwatch-agent
sudo systemctl enable --now amazon-cloudwatch-agent

Config 파일을 작성해준다.

sudo vi /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json
{
    "agent": {
        "run_as_user": "root"
    },
    "logs": {
        "logs_collected": {
            "files": {
                "collect_list": [
                    {
                        "file_path": "/var/log/secure",
                        "log_group_name": "/ssh/login",
                        "log_stream_name": "{instance_id}-ssh-login",
                        "retention_in_days": -1,
                        "filters": [
                            {
                                "type": "include",
                                "expression": "(Accepted password for ec2-user|Failed password for ec2-user)"
                            }
                        ],
                        "timezone": "Local"
                    }
                ]
            }
        }
    }
}

agent를 재시작해준다.

sudo systemctl restart amazon-cloudwatch-agent

log가 잘 찍힌거를 확인해준다.

| 기본적으로 flush_interval은 10초인거 같음

profile
안녕하세요

0개의 댓글