스팸메일의 릴레이를 제한하는 것은 서버 보안과 안정성을 유지하는 중요한 작업입니다. 이 과정에서 특정 설정 파일과 명령어를 사용합니다. 아래는 이 과정을 단계별로 정리한 내용입니다.
sendmail.cf 파일에서 "Relaying denied" 메시지를 확인합니다.
# cat /etc/mail/sendmail.cf | grep "R$\*" | grep "Relaying denied"
R$* $#error $@5.7.1 $: "550 Relaying denied"
이 설정은 릴레이가 허용되지 않을 때 반환될 에러 메시지를 지정합니다.
/etc/mail/access 파일에서 릴레이를 허용할 도메인과 IP 주소를 지정합니다. 예를 들어, 로컬 호스트와 특정 도메인만 릴레이를 허용하고 나머지는 허용하지 않도록 설정할 수 있습니다.
# cat /etc/mail/access
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
spam.com REJECT # Relay를 허용하지 않음
여기서 RELAY는 해당 도메인이나 IP에서 릴레이를 허용한다는 의미이며, REJECT는 릴레이를 허용하지 않음을 의미합니다.
access 파일의 설정을 DB로 변환하여 sendmail에서 사용할 수 있도록 합니다. 이를 위해 makemap 명령어를 사용합니다.
# makemap hash /etc/mail/access < /etc/mail/access
이 명령어는 access 파일을 access.db 파일로 변환합니다.
sendmail.cf 파일에서 릴레이 거부 메시지 설정 확인./etc/mail/access 파일에서 릴레이를 허용할 도메인과 IP 주소 설정.makemap 명령어를 사용하여 access 파일을 access.db 파일로 변환.