![Sendmail 마이그레이션: 들어오는 모든 메일을 다른 메일 서버로 복사합니다.](https://linux55.com/image/144624/Sendmail%20%EB%A7%88%EC%9D%B4%EA%B7%B8%EB%A0%88%EC%9D%B4%EC%85%98%3A%20%EB%93%A4%EC%96%B4%EC%98%A4%EB%8A%94%20%EB%AA%A8%EB%93%A0%20%EB%A9%94%EC%9D%BC%EC%9D%84%20%EB%8B%A4%EB%A5%B8%20%EB%A9%94%EC%9D%BC%20%EC%84%9C%EB%B2%84%EB%A1%9C%20%EB%B3%B5%EC%82%AC%ED%95%A9%EB%8B%88%EB%8B%A4..png)
sendmail을 실행하는 메일 서버를 8.14.3
postfix 서버로 마이그레이션하고 있습니다. MDA
원활한 Dovecot
전환을 위해서는 수신 메일을 두 서버에 동시에 전달하는 것이 가장 좋습니다.
sendmail 의 SMART_HOST
및 옵션에 대해 들어봤지만 nullcient
그것이 내가 원하는 방식으로 작동하는지 잘 모르겠습니다. 나에게 필요한 것은 들어오는 모든 메일이 기존 서버의 사서함에도 배달되어야 하므로 기존 구성을 변경하지 않고 유지하면서 새 서버에도 배달되는 것입니다.
메일은 유사한 주소로 전송되며 (이전) 및 (신규) [email protected]
로 배달되어야 합니다 . 따라서 복사본을 으로 전달 해야 합니다 .mx1.mydomain.com
mx2.mydomain.com
mx1
mx2
이중 MX 레코드로는 충분하지 않습니다. 한 서버는 다른 서버에 연결할 수 없을 때만 연결되고 두 서버는 모두 메일을 수신해야 하기 때문입니다.
아마도 또 다른 옵션은 ?를 통해 새 서버 sendmail
로 직접 전송되도록 구성하는 것입니다 . 아니면 두 서버 모두에 사서함만 있을 수도 있습니다. 하지만 이것이 호환되는지 확실하지 않습니다.Dovecot
lmtp
rsync
고쳐 쓰다:형식이 다릅니다. 이전 서버에는 사서함당 일반 오래된 파일만 있었던 반면, Dovecot
구조 cur
는 각 사용자의 메일 디렉터리에 생성됩니다. new
tmp
그러나 궁극적으로 유사한 형식의 파일이 이러한 디렉터리에 상주합니다. 그러나 문자열을 분할하는 것은 다릅니다. 어쩌면 이전 형식을 주기적으로 번역하여 새 서버에 복사할 수 있을까요? 이것이 어떤 식으로든 방해가 될까요 Dovecot
? Dovecot
복제본이 인식되지만 영향을 받지 않도록 새 서버의 어디에 복제본을 배치할 수 있습니까 ?
어떤 종류의 해결책이 있기를 바랍니다.
시스템 메시지
사서함 수: ~100-200
이전 서버:
OS: Debian GNU/Linux 6.0
sendmail 8.14.3
mails are delivered to "real"/"passwd" users
Other Serives: apache2, mysql, other miscellaneous
새 서버:
OS: Debian GNU/Linux 9
postfix
dovecot
mails are delivered to virtual users/SQL
Other services: apache2, mysql, other miscellaneous
참조용 현재 MX 항목:
mydomain.com. IN MX 0 mx1.mydomain.com.
mydomain.com. IN MX 1 mx2.mydomain.com.
답변1
지금은 테스트할 수 없지만 양식의 항목을 sendmail
이해하고 있다고 확신합니다./etc/aliases
fred: fred, fred@otherserver
(미친 루프에 빠지면 두 번째 루프 앞에 fred
백슬래시를 넣으세요 \
.)
/etc/passwd
그런 다음 파일에서 직접 추출하십시오 aliases
. 그리고 newaliases
내부 sendmail
데이터베이스를 업데이트하려면 (?)를 실행하는 것을 잊지 마십시오.
다음은 추가할 행을 생성하는 예제 조각입니다. UID가 { 1000 ≤ uid < 65000 } 범위에 있는 사용자만 고려합니다.
[ ! -f /etc/aliases.save ] && cp -p /etc/aliases /etc/aliases.save
(
cat /etc/aliases.save
echo
getent passwd |
awk -F: '$3>=1000 && $3<65000 {printf "%s: %s, %[email protected]\n", $1, $1, $1}'
) >/etc/aliases
newaliases