본문 바로가기
개발환경/우분투

[Memo] 우분투에서 gmail활용하여 command line으로 email 전송

by Kibua20 2020. 6. 22.

우분투 20.04 에서 gmail 계정의 smtp를 활용해서 커맨드 라인으로 email을 송부하는 내용을 정리하였습니다. 우분투에서 자동으로 특정 프로그램을 실행하고 실행하고 그 결과를 email을 전송할 수 사용할 예정입니다.  우분투 20.04 설치 상태에서 아래 명령어를 copy&past 하면 잘 동작합니다.  이와 관련해서 출처 사이트에서 설명이 자세히 작성되어 있어, 명령어만 나열하였습니다. 

 

1. postfix package 설치

$ sudo apt-get install mailutils libsasl2-2 ca-certificates libsasl2-modules postfix

 

2. main.cf 파일 수정

$ sudo vi /etc/postfix/main.cf

 

#main.cf 파일 맨 밑에 아래 내용을 추가 

relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

 

3. email 주소의 ID와 pass 를 sasl_passwd 을 저장 ( email 송부에 사용하고자 하는 gmail 계정)

$ sudo vi /etc/postfix/sasl_passwd

 

#sasl_passwd 파일에  gmail ID와 password 저장
[smtp.gmail.com]:587 [YourID]@gmail.com:[YourPasswd]

#sasl_passwd권한 제한
$ sudo chmod 400 /etc/postfix/sasl_passwd
$ sudo postmap /etc/postfix/sasl_passwd

 

4. 인증서 설치

$ cat /etc/ssl/certs/thawte_Primary_Root_CA.pem | sudo tee -a /etc/postfix/cacert.pem

 

5. postfix 서비스 재샐행

$ sudo /etc/init.d/postfix reload

 

6.  아래 구글 계정 site에서 사용하고자 하는 gmail 계정의 설정을 "보안이 낮은 수준의 app 사용 허용"  참고) "2단계 인증 후 앱 비밀번호로 설정" 도 가능

구글 계정: https://myaccount.google.com/lesssecureapps

7.  mail 명령어로 email 전송

$ echo "Test mail from postfix" | mail -s "Test Postfix" kibua20@gmail.com (받을 주소)

 

#mail 명령어 사용법 요약 
$ mail -s "메일 제목" user@example.com (받을 주소)
명령어 실행후 콘솔에 이메일 내용을 입력하고 Ctrl-D 를 누르면 메일이 전송됨

 

#heredoc 문법 (<<<) 사용
$ mail -s "메일 제목" user@example.com <<< '메일 본문입니다'


#제목만 송부
$ mail -s "메일 제목" user@example.com < /dev/null

#첨부파일 전송 -a
$ mail -s "메일 제목" -a test.pdf user@example.com <<< '메일 본문입니다'

 

#여러명에게 전송

$ mail -s "메일제목"   email1@gmail.com  email2@daum.com email3@naver.com <<< '메일 본문- 여러명에게 전송'

 

* 참조자와 숨은참조자를 추가하는 방법을 찾고 있음

 

 

8. 디버깅 - 아래 로그 확인

$ cat var/log/mail.log


출처: 
https://webdir.tistory.com/227 
https://tsy0668.tistory.com/11
https://openbee.kr/435
http://blrun.egloos.com/v/11078183

https://www.lesstif.com/lpt/send-mail-from-linux-command-line-24445045.html

 

 

<관련글>

[개발환경] - WSL 2.0 Global configuration (.wlsconfig) 을 통한 성능 향상

[개발환경] - 윈도우용 MobaXterm - SSH 및 X-Server 지원

[모바일/Android] - repo 실행 시 DeprecationWarning: imp module 대처법

[개발환경] - [실패 사례] gcc 버전이 낮은 상용 리눅스 서버에서 프로그램 설치 시 GLIBCXX' not found 에러

[개발환경] - Ubuntu 동영상 플레이어: VLC Player 설치

[개발환경] - 우분투20.04에서 한글 오타 방지 (UIM '벼루' 설치기)

[개발환경] - Ubuntu 20.04에서 sshfs 를 이용한 원격 폴더 마운트

[개발환경] - [Tips] Ubuntu 20.04 에서 swap file 늘리기

[개발환경] - [Tips] Citrix Receiver for Chrome 설치 (우분투와 윈도우 동일)

[개발환경] - Ubuntu 테마 설치 (맥분투 만들기)

[개발환경] - [Tips] 우분투 화면 캡쳐 및 화면 녹화

[개발환경] - 우분투 터미널에 Putty 스타일 Copy&Paste 적용 (Terminator)

[개발환경] - Youtube 동영상 다운로드 방법(광고 없는 오프소스 기반)

[개발환경] - Window 와 Ubuntu 파일 공유하기 (듀얼부팅)




댓글2