리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인

admin | | 조회 9


[주요 목차]

/etc/services 파일로 포트 번호 확인하기

Postfix 설치와 호스트네임 변경

shell에서 메일 보내고 받기 실습


리눅스 서버를 운영하다 보면 웹이나 FTP뿐 아니라 메일 서비스도 직접 다뤄야 할 때가 있어요. 특히 쉘 환경에서 메일을 보내고 받는 방법을 알아두면 관리 작업이 훨씬 편해지죠. 오늘은 리눅스 메일 서비스의 핵심인 Postfix를 활용해 mail 명령어로 메일을 주고받는 과정을 정리해 볼게요. 포트번호 확인부터 시작해서 Postfix 설치, 호스트네임 설정, 실제 메일 송수신 테스트까지 한 번에 따라 해 보세요. 영상을 보지 않아도 이 글만 보면 리눅스에서 메일이 어떻게 동작하는지 전체 흐름을 파악할 수 있을 거예요.


리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 - 실전 화면 1 - 리눅스메일서비스리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 · 실전 화면 1

/etc/services 파일로 포트 번호 확인하기

리눅스에서 서비스가 사용하는 포트 번호를 빠르게 확인하려면 /etc/services 파일을 보면 돼요. 이 파일에는 http, ftp, ssh, smtp 등 주요 서비스의 기본 포트가 미리 정리되어 있죠.

cat /etc/services | grep -E 'http|ftp|ssh|smtp|pop3|imap' 명령어로 바로 검색할 수 있어요. http는 80/tcp, ftp는 데이터 20/tcp와 제어 21/tcp, ssh는 22/tcp, smtp는 25/tcp, pop3는 110/tcp, imap은 143/tcp로 나와요.

이 포트들은 IANA에서 정한 표준이라 대부분의 리눅스 배포판에서 동일하게 적용돼요. MySQL처럼 3306/tcp처럼 자주 쓰이는 서비스도 함께 확인해 두면 방화벽 설정할 때 유용하죠.

실전에서는 ufw allow 25/tcp처럼 필요한 포트만 열고, telnet localhost 25로 서비스가 정상 동작하는지 즉시 테스트해 보세요. 포트 번호를 외우지 않아도 /etc/services 파일 하나만 있으면 언제든 확인할 수 있어요.

리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 - 참고 컷 2 - 리눅스메일서비스리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 · 참고 컷 2

Postfix 설치와 호스트네임 변경

메일을 보내는 역할을 하는 SMTP 서버로 Postfix를 설치해요. Debian/Ubuntu 계열에서는 apt install postfix 명령어로 설치하고, 설치 중에 ‘Internet Site’ 옵션을 선택하면 기본 설정이 자동으로 들어가요.

호스트네임은 mail.example.com처럼 FQDN 형식으로 맞추는 게 좋아요. hostnamectl set-hostname mail.example.com으로 변경한 뒤 /etc/hosts 파일에도 127.0.0.1 mail.example.com localhost를 추가해 주세요.

이 설정이 제대로 되어 있어야 메일 헤더에 올바른 도메인이 들어가고 외부 메일 서버와 통신할 때 거부당하지 않아요. 설치 후 systemctl status postfix로 데몬이 정상 실행 중인지 확인하고, 필요하면 postconf -e "myhostname = mail.example.com"으로 추가 설정을 마무리하세요.

리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 - 본문 이미지 3 - 리눅스메일서비스리눅스 메일 서비스 : postfix를 통해 mail을 쉘에서 보내고 받기 포트번호 확인 · 본문 이미지 3

shell에서 메일 보내고 받기 실습

메일 유틸리티를 설치한 뒤 mail 명령어로 바로 테스트할 수 있어요. apt install mailutils로 mailutils 패키지를 추가하고, 사용자 계정을 두 개 만들어 서로 메일을 주고받아 보세요.

echo "테스트 내용" | mail -s "제목" red처럼 간단히 보내고, mail 명령어로 받은 편지함을 확인할 수 있어요. 읽은 메일은 mbox 파일로 이동하고, q로 종료하면 돼요.

실제 운영 환경에서는 /var/mail/ 계정명 파일을 직접 열어 내용을 확인하거나, mail -f /var/mail/red로 특정 사용자의 메일함을 지정해서 볼 수도 있어요. 외부에서 메일을 받으려면 DNS MX 레코드와 Postfix relay 설정이 추가로 필요하다는 점도 잊지 마세요.


[자주 묻는 질문]

리눅스에서 SMTP 포트 번호를 확인하는 가장 빠른 방법은?

/etc/services 파일을 grep으로 검색하면 돼요. cat /etc/services | grep smtp라고 입력하면 25/tcp가 바로 나오고, pop3와 imap도 동시에 확인할 수 있어요. 이 파일은 시스템에 기본으로 포함되어 있어서 별도 설치 없이 언제든 사용할 수 있죠.

Postfix 설치 후 메일이 안 보내질 때는 어떻게 해야 하나요?

hostname이 FQDN 형식인지 먼저 확인하세요. hostnamectl set-hostname으로 변경하고 /etc/hosts에 도메인을 추가한 뒤 systemctl restart postfix를 실행해 보세요. 로그는 /var/log/mail.log에서 확인할 수 있어요.

shell에서 받은 메일을 파일로 저장하려면?

mail 프롬프트에서 s 파일명 명령어를 사용하면 현재 메일을 지정한 파일로 저장할 수 있어요. 예를 들어 s ~/backup.msg라고 하면 홈 디렉토리에 backup.msg 파일이 생성되죠. 저장 후 q로 종료하면 메일함에서 제거됩니다.

목록
글쓰기
한국 서버호스팅
전체보기 →

댓글 0