AWS 의 Amazon-Linux
OS 로 생성한 이미지 등의 경우 기본적으로 Password
방식의 로그인이 허용되어 있지 않으며, ssh 설정에서 주석처리를 해제하여도 이미지 백업 후 복원 시 Cloudinit
에 의해 다시 주석이 잠기는 보안성이 존재합니다.
이는 다량의 작업을 해야 할 때 번거로움으로 작용할 수 있는데
패스워드 로그인을 허용하는 방법은 2가지로 구분할 수 있습니다.
- 이미지에서 인스턴스 생성 시에 Advance의 User-data 에서
리눅스 스크립트
로 부팅 시 root 잠금 해제 - 기존 이미지에서
Cloudinit Config
의 설정 변경
# 이미지에서 인스턴스 생성 시 다음의 스크립트를 추가한다.
# sshd Permitrootlogin
sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
# Key root account permit
sed -i 's/^.*10" //g' /root/ssh/authorized_keys
# set root password
echo "P@ssw0rd" | passwd root --stdin
# sshd restart
systemctl restart sshd
이미지에서 인스턴스 생성 시 User-data 추가
생성 후 직렬 콘솔을 통해 root password 로그인이 가능하다.
이미지 생성 시에 리셋되지 않도록 하려면 Cloudinit 설정을 변경한다
disable_root : true --> false ( 0 )
ssh_pwauth: false --> true ( 1 )