Proxmox의postfix 설정

개시하다

  • 원래 프로xmox는debian이기 때문에 일반적으로postfix를 설정하면 됩니다.
  • 배경.

  • Proxmox를 설치한 후postfix의 설정이 소박해서 일본에서는 메일을 보내지 않을 것 같다(SMTP를 간단하게 사용하기 때문에OP25B에 걸기)
  • 해결책


    sendgrid에서 메일을 중계하도록 설정합니다.

    절차.


    sendgrid 계정 만들기


    영어https://sendgrid.com/
    일본어https://sendgrid.kke.co.jp/(혹시 여기에 등록하려면 며칠이 걸려야 계좌를 등록할 수 있음)
    ※ 그나저나 어떤 방법을 써서든 동일한 결과를 얻을 수 있습니다.
    계정 생성에서 로그인까지 생략합니다.

    API Key 생성

  • 로그인한 후 왼쪽 상자의 Setting->API Keys
  • 를 클릭합니다.
  • 오른쪽 위에 있는 Create API Key 버튼
  • 을 클릭합니다.
  • 오른쪽 상자의 API Key Name에 원하는 이름을 입력합니다.예를 들면 Proxmox 같은 거.
  • 이름 아래의 Restricted Access
  • 선택
  • 사용 권한을 일람하는 Mail Send를 클릭하면 펼쳐진 항목 내의 Mail Send 오른쪽에 있는 슬라이더를 가장 오른쪽으로 설정합니다(이 항목은 ON/OFF 2단계만 있음)
  • 오른쪽 상자를 아래로 스크롤하고 Create and View Key 버튼
  • 을 클릭합니다.
  • API Key 화면이 전환되어 표시되므로 화면을 그대로 둡니다.이와 같이 API Key는 다시 표시할 수 없습니다.(단, 잃어버리면 이 순서대로 한 번 더 하면 되니까 귀찮은 거 말고는 문제 없어요)
  • Postfix 설정


    https://sendgrid.kke.co.jp/docs/Integrate/Mail_Servers/postfix.html
    일본어로 설명했기 때문에 위의 순서대로 하면 된다.
  • 셸로 Proxmox에 로그인합니다.(SSH 연결 또는 Proxmox를 통한 화면 관리 셸 버튼)
  • 필요한 모듈 넣기

  • apt-get install libsasl2-modules
  • main.cf

    vi /etc/postfix/main.cf
  • 밑에서 여섯 번째 줄 정도relayhost = 줄의 첫머리에 #를 더해서 평론 출력#relayhost =
  • 끝에 아래 내용을 삽입
  • # sendgrid
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_sasl_security_options = noanonymous
    smtp_sasl_tls_security_options = noanonymous
    smtp_tls_security_level = encrypt
    header_size_limit = 4096000
    relayhost = [smtp.sendgrid.net]:587
    

    sasl_passwd 만들기


    이 파일은 존재하지 않기 때문에 새로 만듭니다.
  • touch /etc/postfix/sasl_passwd
  • chmod 600 /etc/postfix/sasl_passwd
  • vi chmod 600 /etc/postfix/sasl_passwd
  • [smtp.sendgrid.net]:587 apikey:先程画面で表示されたキー
    
    예를 들면[smtp.sendgrid.net]:587 apikey:SG.Ti_nVs_fdjsleybadfErdFEF...같은 느낌이 된다.

    설정 반영하기

  • postmap /etc/postfix/sasl_passwd
  • systemctl restart postfix
  • 확인


    테스트 메시지 보내기


    mail -s testmail <メールアドレス>
    testmail
    .
    
    명령을 입력한 후 아무것도 보이지 않는 상태가 되어 본문을 입력한다.
    상기 예에서testmail을 입력하고 줄을 바꿉니다.나중에줄 바꿈만 입력하면 메일이 발송됩니다.

    메일 보내기 확인

  • mailqOK: Mail queue is empty
  • NG 예
    root@proxmox:~# mailq
    -Queue ID-  --Size-- ----Arrival Time---- -Sender/Recipient-------
    43B2E100F17    1399 Mon Nov  1 18:36:56  [email protected]
    (SASL authentication failed; cannot authenticate to server smtp.sendgrid.net[13.114.210.107]: no mechanism available)
    

    NG시

  • tail /var/log/mail.log
  • 아마 다음 중 어느 것일 것이다
  • apt-get install libsasl2-modules
  • postmap /etc/postfix/sasl_passwd
  • apikey를 잘못 놓았어요.
  • 다시 시도하다

  • postqueue -f
  • 좋은 웹페이지 즐겨찾기