Założenia:

serwer A do ktorego mamy dostep przez ssh (dla potrzeb artykulu niech sie nazywa stary.serwer.pl)

Serwer B do którego rownież mamy dostę przez ssh (dla potrzeb artykulu niech sie nazywa nowy.serwer.pl)

format skrzynek: mbox

 

Logujemy się na stary serwer i robimy kopie katalogu /home/[nazwa_uzytkownika]/mail

najlepiej spakowac go do osobnego pliku np tar-em.

nastepnie poprzez scp kopiujemy z jednego serwera na drugi

scp nazwa_uzytkownika.tar.gz nowy.serwer.pl:/home/nazwa_uzytkownika

rozpakowujemy katalog mail (jesli wczesniej juz zalozylismy na nowym systemie uzytkownika to nadpisujemy wszystkie pliki w tym katalogu)

 

ze starego serwera kopiujemy tez /var/mail/nazwa_uzytkownika w to samo miejsce na nowym serwerze.

pozostaje zmienic uprawnienia

 chown -R nazwa_uzytkownika:mail /home/nazwa_uzytkownika/mail

tak samo dla /var/mail/nazwa_uzytkownika

i juz mozemy sie cieszyc przeniesiona poczta.

Jezeli po takich przenosinach beda problemy z dostepem do wiadomosci z danego falderu imap to trzeba wyrzucic z niego indexy dovecot-a wtedy sie one odbuduja i bedzie ok.

Po instalacji nowego thunderbirda 38.2 przestala dzialac mozliwosc wysylania e-maili.

Server F10 z sendmailem 8.14 . Łączenie przy pomocy STARTTLS.

w rozwiazaniu podanym ponizej, podano troche na skroty - wykonanie edycji pliku sendmail.cf. Gdyby jednak ktos zmodyfikowal plik sendmail.mc4 i wygenerowal nowy konfig, wtedy nadpisany zostanie konfig podany ponizej.

Dlatego proponuje modyfikacje:

zamiast: O DHParameters=/etc/pki/tls/certs/dhparams.pem w
sendmail.cf

proponuje:

define(`confDH_PARAMETERS',`/etc/mail/certs/dhparam.pem')
w pliku /etc/mail/sendmail.mc
potem:

/usr/bin/m4 /etc/mail/sendmail.mc > /etc/sendmail.cf

rozwiazanie na tej stronie:

https://networkpresence.com.au/np-blog/1664-tls-ssl-config-updates-to-sendmail-for-recent-openssl-versions.html

Recent SSL updates to the OpenSSL package have removed old DH parameters which are built into Sendmail mail server software, so the following are configuration updates to Sendmail (sendmail.cf) to enable the use of a longer DH Parameter to TLS/SSL activity of Sendmail.

 

First, create a longer DH Parameter file with:

 

openssl dhparam -out /etc/pki/tls/certs/dhparams.pem 1024

Then configure the use of this dhparams.pem file into sendmail.cf with the following added to the ‘Options’ section of your sendmail.cf file:

 

O DHParameters=/etc/pki/tls/certs/dhparams.pem

And then restart sendmail after making that sendmail.cf update.

 

This should remove TLS/SSL based email sending errors, which have maillog entries like:

STARTTLS=server: 1867:error:14094417:SSL routines:SSL3_READ_BYTES:sslv3 alert illegal parameter:s3_pkt.c:1092:SSL alert number 47

zauwazylem ze z niewiadomej przyczyny gdy w pliku sendmail.cf sa dwa odwolania do roznych plikow :

define(`confSERVER_CERT', `CERT_DIR/servername-cert.pem')
define(`confSERVER_KEY', `CERT_DIR/servername-key.pem')

to nie dziala.

Nalezy stworzyc jeden plik i w nim umiescic i klicz i certyfikat:

cat key.pem >> certyfikat.pem

wtedy STARTTLS dziala.

sprawdzamy telnetem:

telnet localhost 25
ehlo localhost

 

pojawi sie m.in.

250-STARTTLS

tzn ze dziala.

uruchomienie iptables konczy sie komunikatem:

 

libkmod: ERROR
../libkmod/libkmod.c:554 kmod_search_moddep: could not open moddep
file '/lib/modules/3.18.7+/modules.dep.bin'
iptables v1.4.14:
can't initialize iptables table `filter': Table does not exist (do
you need to insmod?)

Perhaps iptables or your kernel needs to be upgraded.


Zgodnie z sugestia wykonuyjemy:


sudo rpi-update
 

Problem z poprawnym uruchomieniem wynika z uszkodzenia/braku tego pliku a co za tym idzie MailScanner nie dziala poprawnie lub wcale,

root@server [/]# service MailScanner status
Checking MailScanner daemons:
         MailScanner:                                      [  OK  ]
         incoming sendmail: head: cannot open `/var/run/sendmail.in.pid' for reading: No such file or directory
                                                           [  OK  ]
         outgoing sendmail:                                [FAILED]

 

rozwiazaniem jest stworzenie takiego pliku:

touch /var/run/sendmail.in.pid

w srodku (np. przy pomocy vi czy nano) wkopiujemy:

 

/usr/sbin/sendmail -bd -OPrivacyOptions=noetrn -ODeliveryMode=queueonly -OQueueDirectory=/var/spool/mqueue.in -OPidFile=/var/run/sendmail.in.pid

pozostawiajac pierwsza linie pusta (w tej linii powinien byc PID procesu ale ze go nie znamy to zostawiamy miejsce a system sam sobie go tam dopisze)

plik ma miec odpowiednie uprawnienia:

chmod 600 /var/run/sendmail.in.pid
chown root:smmsp /var/run/sendmail.in.pid

 

jesli byl wczesniej uruchamiany sendmail osobno lub z innej przyczyny nadal chodzi to po restarcie w logach (var/log/maillog) bedzie:

sendmail[11774]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon MTA: cannot bind: Address already in use

zatem zatrzymujemy sendmaila i MailScannera:

service sendmail stop
service MailScanner stop

 i uruchamiamy juz sam tylko MailScanner:

service MailScanner start

sprawdzamy:

service MailScanner status

efekt:

Checking MailScanner daemons:
         MailScanner:                                      [  OK  ]
         incoming sendmail:                                [  OK  ]
         outgoing sendmail:                                [  OK  ]

sukces!