postfix / smtpd : 경고 : Milter 서비스 Unix에 연결 : /var/run/opendkim/opendkim.sock : 해당 파일 또는 디렉토리가 없습니다. 것이 완벽하게 작동하여 이제 서비스

짜기에서 wheezy로 업그레이드 한 후 데비안에서 postfix에 문제가 있습니다. Postfix는 dkim-filter를 사용하여 메시지에 서명하도록 구성되었습니다. 업데이트하기 전에 모든 것이 완벽하게 작동하여 이제 서비스 연결 (tcp 또는 unix 소켓)에서 실패합니다. 데비안이 opendkim으로 전환했기 때문에 dkim-filter를 제거하고 opendkim을 설치했습니다. 심지어 tcp 옵션 대신 유닉스 파일 소켓 연결을 설정하려고 시도했습니다. 동일한 문제 :

postfix/smtpd: warning: connect to Milter service unix:/var/run/opendkim/opendkim.sock: No such file or directory

또는 (tcp / ip 사용) :

postfix/cleanup: warning: connect to Milter service inet:localhost:8891: Connection refused

소켓 파일이 존재하고 서비스가 포트 8891에서 수신 대기 중입니다.

이 문제를 해결하려면 어떻게해야합니까?



답변

  1. opendkim이 실행 중인지 확인하십시오. (소켓 파일을 본 것으로 가정합니다.)
  2. opendkim을 구성 했습니까? 구성 파일은 /etc/opendkim.conf입니다.

    사이트 / 도메인 및 dkim.key 경로 와 일치하도록 파일을 업데이트해야 합니다.

  3. opendkim 그룹에 접미사 추가

    opendkim.sock 권한이 다음과 같은 경우

    $ ls -l / var / run / opendkim
    
    -rw-rw-r-- 1 개의 opendkim opendkim 5 월 2 일 14:56 opendkim.pid
    srwxrwxr-x 1 opendkim opendkim 0 5 월 2 일 14:56 opendkim.sock
    

    그렇지 않을 경우, 확인 UMask으로 설정되어 0002에서 /etc/opendkim.conf.

    그런 다음 다음을 수행하십시오

    sudo adduser postfix opendkim
  4. chroot에서 실행되는 접미사

    수정 /etc/default/opendkim, SOCKET 옵션을 chfix chpost 위치로 변경

    SOCKET = "로컬 : /var/spool/postfix/var/run/opendkim/opendkim.sock"

    디렉토리를 작성 /var/spool/postfix/var/run/opendkim하고 권한을 변경해야합니다

    sudo mkdir -p / var / spool / postfix / var / run / opendkim
    sudo chown opendkim : opendkim / var / spool / postfix / var / run / opendkim
    
  5. opendkim을 다시 시작하십시오.

    sudo 서비스 opendkim 재시작
    

답변

Ubuntu 16.04 LTS : Postfix 버전 3.1.0-3ubuntu0.2 Opendkim 버전 2.10.3-3build1에서이 경고를 해결하는 데 도움이되는 간단한 요약

  • (Postfix와 Opendkim이 이미 설치되어 서로 통합되어 있다고 가정하고 유일한 경고는 ‘Milter 서비스 로컬에 연결 : / var / spool / postfix / opendkim / opendkim.sock : 해당 파일이나 디렉토리가 없습니다’)

  • opendkim 그룹에 사용자 접미사 추가 (이미 완료된 경우 건너 뛰기)

sudo adduser postfix opendkim

  • 디렉토리 생성 및 소유자 설정 (이미 완료된 경우 건너 뛰기)

sudo mkdir -p / var / spool / postfix / var / run / opendkim

sudo chown opendkim : opendkim / var / spool / postfix / var / run / opendkim

  • 권한 확인 :

ls -l / var / spool / postfix / var / run / opendkim

srwxrwxr-x 1 opendkim opendkim 0 Nov 12 14:34 opendkim.sock
  • opendkim 구성 파일을 편집하십시오. /etc/opendkim.conf, 라인 추가

소켓 로컬 : /var/spool/postfix/var/run/opendkim/opendkim.sock

/ etc / defaults / opendkim, 추가

SOCKET = “로컬 : /var/spool/postfix/var/run/opendkim/opendkim.sock”

  • 접미사 구성 편집 : /etc/postfix/main.cf
# Milter configuration
# Postfix ≥ 2.6 milter_protocol = 6, Postfix ≤ 2.5 milter_protocol = 2
milter_protocol = 6
milter_default_action = accept
smtpd_milters = unix:var/run/opendkim/opendkim.sock
non_smtpd_milters = unix:var/run/opendkim/opendkim.sock
  • 서비스 재시작 (또는 재부팅)

systemctl restartddkim

systemctl 재시작 접미사

그게 다야. 왜 글을 써야하는지 모르겠습니다

smtpd_milters = unix : var / run / opendkim / opendkim.sock

대신에

smtpd_milters = 로컬 : /var/spool/postfix/var/run/opendkim/opendkim.sock

. 누군가가 알고 있다면 설명을 환영합니다.


답변

데비안 스트레치에서 똑같은 문제에 직면했습니다 .opendkim에 대한 시스템 서비스 파일이 손상되어 발생했습니다. 해결책은 다음 답변을 참조하십시오 : https://serverfault.com/a/847442/84962

이 수정은 다음과 같이 요약됩니다.

/lib/opendkim/opendkim.service.generate
systemctl daemon-reload
service opendkim restart


답변

smtpd_milters = unix:var/run/opendkim/opendkim.sock, unix:var/run/opendmarc/opendmarc.sock
non_smtpd_milters = unix:var/run/opendkim/opendkim.sock, unix:var/run/opendmarc/opendmarc.sock

usermod -G opendkim,opendmarc


답변

다른 방법은를 비활성화하는 것입니다 chroot. 보안에 영향을 미칩니다.

vi /etc/postfix/master.cf

# service type  private unpriv  chroot  wakeup  maxproc command + args
cleanup   unix  n       -       n       -       0       cleanup

경고 postfix/cleanup가 표시되므로이 서비스에 대한 chroot를 비활성화 할 수 있습니다.


답변

Milter 서비스 Unix에 연결 : /clamav/clamav-milter.ctl : 권한이 거부되었습니다

ls -l / var / spool / postfix / clamav srw-rw —- 1 clamav clamav 0 4 월 4 일 17:59 clamav-milter.ctl

clamav-milter.conf

사용자 clamav MilterSocketGroup 접미사 MilterSocketMode 660

밀터에 대한 사용자 권한

chown 접미사 : postfix /var/spool/postfix/clamav/clamav-milter.ctl

나를 위해 작동


답변

OpenDKIM과 Postfix가 다른 사용자의 권한으로 작동하고 동일한 소켓에서 쓰고 읽기 때문에 문제가 발생했습니다.

opendkim 그룹에 postfix 사용자를 추가했습니다.

sudo usermod -a -G opendkim postfix