frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

DKIM (domeno raktu tvirtinami laiškai) ir Postfix įdiegimas CentOS sistemoje

IV_RomanLIV_RomanL Interneto vizija
edited 2014 vasario 24 Į Pašto serveriai
Pamokoje paprastai ir suprantamai aprašomas būdas kurio pagalba galėsite įsidiegti OpenDKIM tarnybą naudodami Postfix mail servisą. DKIM laiškų pasirašymas suteikia galimybę padidinti siunčiamų laiškų patikimumo rodiklį.

Pamoka parengta naudojant CentOS x86_64 (64-bit) operacinę sistemą ir pritaikyta veikti tik mūsų savarankiškai administruojamuose virtualiuose dedikuotuose serveriuose.

0. Preliminarūs reikalavimai:

- Postfix 2.3.x arba naujesnė versija ( yum install postfix -y )
- Sendmail tarnyba privalo būti deaktyvuota ( service sendmail stop )
- Operacinė sistema privalo būti atnaujinta ( yum upgrade -y )

Patogiam tekstinių failų redagavimui naudojamas "nano" redaktorius. Jį galite įsidiegti įvykdę komandą:
yum install nano -y
1. Atsisiunčiame OpenSSL bei Sendamil-devel paketus:
yum install sendmail-devel openssl-devel -y
įdiegiame gcc paketą:

yum install gcc -y

Įdiegiame OpenDKIM servisą kataloge /usr/local/src (naujausia versija pasiekiama adresu http://sourceforge.net/projects/opendkim/files/ ):

cd /usr/local/src
wget http://sourceforge.net/projects/opendkim/files/opendkim-2.7.2.tar.gz
Išpakuojame archyvą ir įdiegiame tarnybą:
tar zxvf opendkim-2.7.2.tar.gz
cd opendkim-2.7.2
./configure --sysconfdir=/etc --prefix=/usr/local --localstatedir=/var
make
make install
2. Pridedame vartotoją:
useradd -s /sbin/nologin opendkim
3. Sukuriame darbinius aplankus:

mkdir -p /etc/opendkim/keys
chown -R opendkim:opendkim /etc/opendkim
chmod -R go-wrx /etc/opendkim/keys
4. Perkeliame startinį script'ą:

cp /usr/local/src/opendkim-2.7.2/contrib/init/redhat/opendkim /etc/init.d/
Suteikiame vykdymo teises startiniam script'ui:

chmod 755 /etc/init.d/opendkim
5. Generuojame raktus laiškų pasirašymui. Raktai generuojami konkrečiam domenui/subdomenui. Pavyzdinis subdomenas šiuo atveju bus server.roman.iv.lt :
mkdir /etc/opendkim/keys[B]/server.roman.iv.lt[/B]
/usr/local/sbin/opendkim-genkey -D /etc/opendkim/keys/[B]server.roman.iv.lt[/B]/ -d [B]server.roman.iv.lt[/B] -s default
chown -R opendkim:opendkim /etc/opendkim/keys/[B]server.roman.iv.lt[/B]
mv /etc/opendkim/keys/[B]server.roman.iv.lt[/B]/default.private /etc/opendkim/keys/[B]server.roman.iv.lt[/B]/default
6. Redaguojame bei sukuriame specifinius konfigūracinius failus:

- A. /etc/opendkim.conf –- OpenDKIM's pagrindinis konfigūracinis failas;
- B. /etc/opendkim/KeyTable –- raktų sąrašas kurie bus naudojami pasirašymui;
- C. /etc/opendkim/SigningTable -- domenų ir paskyrų sąrašas kurie gali naudotis pasirašymo funkcija;
- D. /etc/opendkim/TrustedHosts –- sąrašas "patikimų" serverių.

Sukuriame failą A:
nano /etc/opendkim.conf
Įrašome jame turinį:
##
## opendkim.conf -- configuration file for OpenDKIM filter
##
AutoRestart Yes
AutoRestartRate 10/1h
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
LogWhy Yes
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
SigningTable refile:/etc/opendkim/SigningTable
Socket inet:8891@localhost
Syslog Yes
SyslogSuccess Yes
TemporaryDirectory /var/tmp
UMask 022
UserID opendkim:opendkim
Sukuriame failą B:
nano /etc/opendkim/KeyTable
Įrašome jame šį turinį (pakeiskite pavyzdinį URL) į vieną eilutę:
default._domainkey.server.roman.iv.lt server.roman.iv.lt:default:/etc/opendkim/keys/server.roman.iv.lt/default
Sukuriame failą C:
nano /etc/opendkim/SigningTable
Įklijuojame jame turinį (pakeiskite pavyzdinį URL) į vieną eilutę:
server.roman.iv.lt default._domainkey.server.roman.iv.lt
Sukuriame failą D:
nano /etc/opendkim/TrustedHosts
Įklijuojame jame turinį:
127.0.0.1
hostname1.server1.roman.iv.lt
server1.roman.iv.lt
hostname1.server2.roman.iv.lt
server2.roman.iv.lt
7. Redaguojame postfix.conf failą:
nano /etc/postfix/main.cf
Failo apačioje įklijuojame šias eilutes:
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = $smtpd_milters
milter_default_action = accept
milter_protocol = 2
8. Įjungiame OpenDKIM servisą ir perkrauname Postfix mail servisą:

Įkrauname naujus paleidimo script'us:
hash -r
Pašaliname sendmail servisą iš autopaleisties:
chkconfig --del sendmail
Įjungiame OpenDKIM:
service opendkim start
Pastaba: Jei jums rodo pranešimą:
Starting OpenDKIM Milter: opendkim: /etc/opendkim.conf: configuration error at line 5: unrecognized parameter
Kažkur nurodydami domeną padarėte klaidą, peržiūrėkite visus konfigūracinius failus.

Perkrauname Postfix servisą:
/etc/init.d/postfix restart
Nesant jokioms klaidoms, įrašome autopaleisties nuostatą:
chkconfig --level 2345 opendkim on
9. Problemų sprendimas.

A. Jei gaunate klaidos pranešimus siunčiant laiškus, peržiūrėkite log failą (pavyzdinį domeną pakeiskite savu):
tail -f /var/log/maillog
B. Tam, jog kitiems el.pašto serveriams suteiktume teisingą informaciją apie tai, jog jūsų pašto serveris naudoja DKIM parašą reiktų sukurti TXT įrašą domeno vardų serveriuose.

Įvykdykite komandą (pavyzdinį domeną pakeiskite savu):
cat /etc/opendkim/keys/[B]server.roman.iv.lt[/B]/default.txt
Pavyzdinis teisingas turinys turėtų atrodyti taip:
default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCULh/Vr2XK6JlGTfeGFWI5dNa+1eRF2+SXbJDXdKzkMo/Dntg/C9uTBEzDrr208Me99uKMJokMn+uXNEEyv2zTeTu2B60j8Bb2X+Rlb02P3IRdo8Fk3ZaP6T1EiqESuzb0zTkh1z3UnkI/uGAW1c+5HiTo5uKEgLgI81Glig2SxwIDAQAB" ) ;
DKIM key default for server.roman.iv.lt
Pavadinimo default._domainkey TXT įraše turėtų būti reikšmė:

"v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCULh/Vr2XK6JlGTfeGFWI5dNa+1eRF2+SXbJDXdKzkMo/Dntg/C9uTBEzDrr208Me99uKMJokMn+uXNEEyv2zTeTu2B60j8Bb2X+Rlb02P3IRdo8Fk3ZaP6T1EiqESuzb0zTkh1z3UnkI/uGAW1c+5HiTo5uKEgLgI81Glig2SxwIDAQAB"

Geriausias būdas stebėti laiškų siuntimą yra stebėti log failą:
tail -f /var/log/maillog
Laiškas su korektišku DKIM parašu turėtų atsispindėti tokiu formatu log faile:
opendkim[22254]: 53D0314803B: DKIM-Signature header added

Komentarai

Norėdami palikti komentarą, turite prisijungti arba registruokis.