Search
Duplicate
🌳

[Born2beRoot] 보너스 서비스로 sendmail 어때요? ⊂( ・ ̫・)⊃

간단소개
앗, 남들과는 다른 서비스를 한 번 깔아보고 싶다고요? sendmail 한 번 잡숴 봐 잡숴 봐~~~
팔만코딩경 컨트리뷰터 (Library DB (속성)에 관계됨)에 관계됨
ContributorNotionAccount
주제 / 분류
운영체제
Virtual Machine
Linux
태그
Scrap
8 more properties
본투비 서비스를 깔아야 하는데… 뭘 깔아야 하지…?
남들과는 다른 걸 깔아보고 싶은데… 똑같은 걸 하면 낭만이 없잖아 낭만이!
개성과 멋, 낭만을 추구하는 당신을 위해 준비했습니다!
바로 바로 Sendmail!
가상 머신으로 메일 보내서 평가 중에 평가자에게 메일 보내는게 찐간지라고요~~~

Sendmail이란?

간단 요약: 이름대로 메일을 보내줍니다
root 계정으로 진행하거나 sudo 명령어를 사용해주세요!
apt install sendmail sendmail-cf service sendmail status service sendmail start
Shell
cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.original diff /etc/mail/sendmail.mc.original /etc/mail/sendmail.mc m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.original
Shell

서비스 재시작

service sendmail restart
Shell

telnet 설치

apt install telnet
Shell

메일 발송

telnet localhost 25 # 메일 발송 시작 (telnet 명령어로 25번 포트에 접속 - 메일 서버는 25번 포트를 사용함) helo localhost # helo는 메일 서버에 연결하기 위해 클라이언트의 도메인 이름을 알려주는 명령어 mail from: <현재 접속한 유저 이름>@localhost # 발신자 rcpt to: <이메일 주소> # 수신자 data # 메일 시작 subject: <메일 제목> 메일 본문 . # 메일 본문 종료 quit # 메일 발송 및 종료
Shell

메일 로그 및 메일함 확인

# /var/log/mail.log cat /var/log/mail.log | grep <메일 ID>
Shell
아래 사진을 보면 잘 전송이 된 것을 볼 수 있습니다!
메일함에서도 확인 가능!
전송에 실패한 경우:
분명 아까와 같이 동일하게 보냈으나, 아래와 같이 뜹니다.
전송에 왜 실패했는지 알고 싶으면 아래의 파일을 열면 됩니다.
vi /var/mail/<메일을 전송한 유저ID>
Shell
아래는 파일의 내용입니다. 볼드로 표시한 부분을 보면, 스팸(…)으로 분류하고 차단했다는 의미입니다.
From MAILER-DAEMON Thu Sep 22 19:22:48 2022 Return-Path: <MAILER-DAEMON> Received: from localhost (localhost) by cheseo42 (8.15.2/8.15.2/Debian-14~deb10u1) id 28MAMmCi003042; Thu, 22 Sep 2022 19:22:48 +0900 Date: Thu, 22 Sep 2022 19:22:48 +0900 From: Mail Delivery Subsystem <MAILER-DAEMON> Message-Id: <202209221022.28MAMmCi003042@cheseo42> To: root@cheseo42 MIME-Version: 1.0 Content-Type: multipart/report; report-type=delivery-status; boundary="28MAMmCi003042.1663842168/cheseo42" Subject: Returned mail: see transcript for details Auto-Submitted: auto-generated (failure) This is a MIME-encapsulated message --28MAMmCi003042.1663842168/cheseo42 The original message was received at Thu, 22 Sep 2022 19:22:07 +0900 from localhost [127.0.0.1] ----- The following addresses had permanent fatal errors ----- 메일주소@gmail.com (reason: 550-5.7.26 This message does not pass authentication checks (SPF and DKIM both) ----- Transcript of session follows ----- ... while talking to gmail-smtp-in.l.google.com.: >>> DATA <<< 550-5.7.26 This message does not pass authentication checks (SPF and DKIM both <<< 550-5.7.26 do not pass). SPF check for [cheseo42] does not pass with ip: <<< 550-5.7.26 [121.135.181.35].To best protect our users from spam, the message <<< 550-5.7.26 has been blocked. Please visit <<< 550-5.7.26 https://support.google.com/mail/answer/81126#authentication for more <<< 550 5.7.26 information. me18-20020a17090b17d200b001fb35ed6fdesi6073649pjb.53 - gsmtp 554 5.0.0 Service unavailable --28MAMmCi003042.1663842168/cheseo42 Content-Type: message/delivery-status Reporting-MTA: dns; cheseo42 Received-From-MTA: DNS; localhost Arrival-Date: Thu, 22 Sep 2022 19:22:07 +0900 Final-Recipient: RFC822; 메일주소@gmail.com Action: failed Status: 5.7.26 Remote-MTA: DNS; gmail-smtp-in.l.google.com Diagnostic-Code: SMTP; 550-5.7.26 This message does not pass authentication checks (SPF and DKIM both Last-Attempt-Date: Thu, 22 Sep 2022 19:22:48 +0900 --28MAMmCi003042.1663842168/cheseo42 Content-Type: text/rfc822-headers Return-Path: <root@cheseo42> Received: from localhost (localhost [127.0.0.1]) by cheseo42 (8.15.2/8.15.2/Debian-14~deb10u1) with SMTP id 28MALPCi003039 for 메일주소@gmail.com; Thu, 22 Sep 2022 19:22:07 +0900 Date: Thu, 22 Sep 2022 19:21:25 +0900 From: root <root@cheseo42> Message-Id: <202209221022.28MALPCi003039@cheseo42> subject: hello hello! --28MAMmCi003042.1663842168/cheseo42--
Shell
메일 발송이 성공했을 경우도 볼 수 있습니다!
다만 이건 같은 가상 머신 내 하나의 유저에서 다른 유저로 메일 보냈을 경우에만 보여줍니다. (ex: user cheseo가 root에게 메일을 보낸 경우) 왜 그런지는 모르겠으나, gmail로 메일을 발송한 경우 2번째 사진처럼 보여주지 않습니다. (/var/mail/userID 는 메일함 역할도 해서 gmail은 gmail만의 메일함이 있으니 안 보여주는 것 같습니다.)

예상 질문

1.
Gmail이나 네이버 메일로는 발송 못 하나요?
수상한 도메인여서 그런가 메일 서비스들이 스팸으로 판단하고 메일을 차단합니다…ㅠ
그래서 intraID@student.42seoul.kr 이 이메일로 우회해서 보내는 것을 추천합니다!
2.
Debian만 가능한가요?
CentOS도 가능! 다만 이 글은 debian 기준으로 작성되었습니다.
3.
Sendmail도 서비스 맞나요?
systemctl status 명령어로 쳤을 때, 서비스로 나옵니다.
born2beroot 빨리 탈출하세요