공유할 서비스 선택

TECH


TECH

OS [Linux]Postfix 설명 및 설정

페이지 정보

작성자 LeeHyongDong 아이디로 검색 전체게시물 댓글 0건 조회 296회 좋아요 0회 작성일 22-02-28 11:15

본문

 

0. 테스트 환경

  - RHEL 7.9
  - Centos 7.9

 

1. Postfix 소개

  Postfix 전자메일을 송수신하는 무료 오픈소스 메일 전송 에이전트(MTA)로 IBM의 보안 전문가가 만든 메일 서비스이다.

  최초의 postfix는 뉴욕의 IBM Thomas J.Watson Research Center에서 Wietse Venema에 의해 1997년에 작성되었으며

  1998년 12월에 처음 발매된 postfix는 2021년을 기점으로 제작자 및 기타 기여자들에 의해 적극적으로 개발되고 있다.

  RHEL 5버전까지 Sendmail 기본 메일서버 데몬으로 설치되었으나  RHEL 6버전 이후 Postfix 기본 메일서버로 사용되고있다.

 

2. Postfix sendmail 비교점

  1. Postfix sendmail 비해 비교적 손쉬운 설정이 가능하다.

  2. postfix sendmail 비교했을때 보안측면에서 뛰어나게 설계 되었다.

  3. Postfix 빠른 메일 처리속도를 염두에 두고 설계되어 sendmail 비해 메일 송수신 속도가 빠르다.

 

3. Postfix 포트

  기본 SMTP 포트는 25 포트를 사용하며

  SSL 보안 적용시 465포트를 사용한다.

 

4. Postfix 설치

  Postfix RHEL, CentOS 경우 기본으로 설치되어 따로 설치할 필요가 없다.

 

5.Postfix 설정

  postfix는 기본 설정 파일에 많은 설정값이 있지만 메일서버를 구축할때 변경하는 설정을 위주로 설명함.

  

  /etc/postfix/main.cf 설정

 

  - host 및 domain설정

  d988882466259c00d836ac4c755b058d_1646201444_9665.png 

  myhostname = posttest # 호스트네임

  mydomain = posttest.co.kr # 도메인 네임

  myorigin = $mydomain   # 도메인 네임을 사용하여 메일을 송수신 할경우 mydomain 설정

  inet_interfaces = all      # 모든 interface의 메일을 수신

  inet_protocols = all      # ipv4와 ipv6 설정 

 

  -  mydestination 설정

  d988882466259c00d836ac4c755b058d_1646201641_6801.png 

  mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

  메일을 최종 목적지 설정으로 해당 설정에서 $mydomain값을 제거하면 외부 메일의 수신이 안된다.

 

  - mynetworks 설정

  d988882466259c00d836ac4c755b058d_1646201939_7061.png 

  mynetworks_style = host

  mynetworks = 192.168.11.0/24, 127.0.0.0/8

  mynetworks는 신뢰할 수 있는 네트워크로 해당 네트워크 주소로 들어오는 메일을 허용한다.

  mynetworks_style은 총 3개의 설정으로 class, subnet, host가 있으며

  class는 동일한 IP 클래스에서 들어오는 SMTP 클라이언트 메일을 수신

  subnet은 로컬 시스템과 동일한 하위 IP 네트워크에 있는 SMTP 클라이언트 메일 수신

  host는 로컬 SMTP 클라이언트 메일만 수신

  하지만 mynetworks의 설정이 우선으로 처리되어 mynetworks_style의 설정은 무시될 수 있다.

 

  - relay 설정

  d988882466259c00d836ac4c755b058d_1646202188_5584.png 

  relay_domains = $mydestination

  "신뢰할 수 있는" 클라이언트(IP 주소는 $mynetworks와 일치)에서 모든 대상으로,

  "신뢰할 수 없는" 클라이언트에서 $relay_domains와 일치하는 대상으로 또는 발신자 지정 라우팅이 있는 주소를 제외한 하위 도메인.

  기본 relay_domains 값은 $mydestination 이다.

 

  - home_mailbox

  d988882466259c00d836ac4c755b058d_1646378398_2885.png 

  user의 홈 디렉토리에 수신 메일 저장폴더 지정 (마지막 / 필수)

 

  기본 설정 이외 추가 설정

 

  - postfix 배너 설정

  d988882466259c00d836ac4c755b058d_1646202449_1303.png 

  # smtpd telnet 접속하면 보여주는 배너

  smtpd_banner = mytest banner

 

  - 메일 수신함과 메시지 사이즈 설정 (defaults)

  d988882466259c00d836ac4c755b058d_1646202556_0605.png 

  message_size_limit = 10485760

  mailbox_size_limit = 1073741824

  따로 설정을 하지 않을 경우 유저당 메일박스가 50M 메일 사이즈가 10M로 제한된다.

 

  

  # 이후 dovecot 연동설정을 위한 사용자 인증설정

  smtpd_sasl_type = dovecot          # sasl 인증 대상 

  smtpd_sasl_path = private/auth  # dovecot 인증 방식 

  smtpd_sasl_auth_enable = yes    # Postfix SMTP 서버에서 SMTP 인증을 활성화 

  smtpd_sasl_security_options = noanonymous

    # 항상 최소한 noanonymous옵션을 설정하십시오. 그렇지 않으면 Postfix SMTP 서버가 낯선 사람에게 제대로 인증된 클라이언트와 동일한 권한을 부여할 수 있습니다. 

  smtpd_sasl_local_domain = $myhostname   # 도메인 부분이 없는 SASL 로그인 이름에 도메인 이름(또는 기타 문자열)을 추가할 수 있습니다 

  smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject  

    # SASL 인증 SMTP 클라이언트가 원격 대상으로 메일을 보낼 수 있습니다. 


  메일 테스트

  - 테스트 메일 

  d988882466259c00d836ac4c755b058d_1646379229_408.png
  
mail -s "email test" <테스트 메일 받을 주소>

  mail 명령어로 발신이 정상인지 확인

  입력후 Ctrl+D 입력 하여 발송

 

  - 메일 수신

  d988882466259c00d836ac4c755b058d_1646379095_1011.png 

  메일함을 확인해보면 정상적으로 메일이 온것을 확인할 수 있다.

 

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
123 Middleware 미들웨어 아이디로 검색 전체게시물 06-22 9
(오픈소스 활용-8) Flask 2장 - Flask 구성 및 실행 방법

카테고리 : Middleware

9 0
작성자 : 미들웨어 22/06/22
122 OS LeeHyongDong 아이디로 검색 전체게시물 06-17 55
[Linux] RHEL 8 loopback 인터페이스 IP 설정

카테고리 : OS

55 0
작성자 : LeeHyongDong 22/06/17
121 Middleware 미들웨어 아이디로 검색 전체게시물 06-08 39
(오픈소스 활용-7) Flask 1장 - Flask 설치 및 python (2.7 -> 3.6) 업그레이드 방법

카테고리 : Middleware

39 0
작성자 : 미들웨어 22/06/08
120 Middleware 미들웨어 아이디로 검색 전체게시물 05-23 92
(오픈소스 활용-6) nmap 활용하여 포트스캔 및 방화벽 port 오픈됐는지 확인

카테고리 : Middleware

92 0
작성자 : 미들웨어 22/05/23
119 Middleware 미들웨어 아이디로 검색 전체게시물 05-09 110
(Migration) 마이그레이션 툴킷 MTA 다운로드, 설치 및 특이사항 정리

카테고리 : Middleware

110 0
작성자 : 미들웨어 22/05/09
118 Middleware 미들웨어 아이디로 검색 전체게시물 04-20 134
(weblogic 활용) Weblogic Docker ConfigMap활용으로 Pod별 설정 제어 방법 (weblogic-kubernetes-operator 활용)

카테고리 : Middleware

134 0
작성자 : 미들웨어 22/04/20
117 Middleware 미들웨어 아이디로 검색 전체게시물 04-05 188
(weblogic 활용) Weblogic Coherence 설치하여 Session-Cluster 방법

카테고리 : Middleware

188 0
작성자 : 미들웨어 22/04/05
116 OS LeeHyongDong 아이디로 검색 전체게시물 03-31 201
[Linux] dovecot 설명 및 설정

카테고리 : OS

201 0
작성자 : LeeHyongDong 22/03/31
115 Middleware 미들웨어 아이디로 검색 전체게시물 03-23 208
(weblogic 활용) Weblogic Image Tool 활용하여 Docker 이미지 파일 생성

카테고리 : Middleware

208 0
작성자 : 미들웨어 22/03/23
114 Virtualization Leesangwoo 아이디로 검색 전체게시물 03-18 205
[ KVM ] KVM 네트워크 구성

카테고리 : Virtualization

205 0
작성자 : Leesangwoo 22/03/18
Total 123건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top