Mainos / Advertisement:

Ero sivun ”Postfix” versioiden välillä

Kohteesta Taisto
Siirry navigaatioon Siirry hakuun
(Tämä versio merkittiin käännettäväksi)
Rivi 1: Rivi 1:
 
<languages/>
 
<languages/>
 
<translate>
 
<translate>
 +
<!--T:1-->
 
Postfix on sähköpostin välitysohjelmisto (MTA). Postfix on avoimen lisenssillä varustettu ohjelmisto. Tietoturvallisessa ja suorituskykyisessä Postfixissä on hyvä roskapostin suodatus.  
 
Postfix on sähköpostin välitysohjelmisto (MTA). Postfix on avoimen lisenssillä varustettu ohjelmisto. Tietoturvallisessa ja suorituskykyisessä Postfixissä on hyvä roskapostin suodatus.  
  
 +
<!--T:2-->
 
Suosittelemme käyttämään myös [[Spamassassin]] ja [[Amavis]] suojaamaan sähköpostipalvelinta roskapostittajilta.
 
Suosittelemme käyttämään myös [[Spamassassin]] ja [[Amavis]] suojaamaan sähköpostipalvelinta roskapostittajilta.
  
== Asennus ==
+
== Asennus == <!--T:3-->
  
   [[aptitude]] install postfix
+
   <!--T:4-->
 +
[[aptitude]] install postfix
  
 +
<!--T:5-->
 
Seuraa asennusohjelman ohjeita
 
Seuraa asennusohjelman ohjeita
  
 +
<!--T:6-->
 
[[Tiedosto:postfix1.png]]
 
[[Tiedosto:postfix1.png]]
  
  
 +
<!--T:7-->
 
Tämän jälkeen sinun tulee antaa palvelimen isäntänimi
 
Tämän jälkeen sinun tulee antaa palvelimen isäntänimi
  
 +
<!--T:8-->
 
esimerkiksi:
 
esimerkiksi:
  
   mail.example.com
+
   <!--T:9-->
 +
mail.example.com
  
== Konfigurointi ==
+
== Konfigurointi == <!--T:10-->
  
  
 +
<!--T:11-->
 
Avaa konfigurointi tiedosto:
 
Avaa konfigurointi tiedosto:
  
   [[nano]] /etc/postfix/main.cf
+
   <!--T:12-->
 +
[[nano]] /etc/postfix/main.cf
  
 +
<!--T:13-->
 
Tarkista postifixin konfigurointi tiedostossa on määritetty tietokoneen isäntänimi ja palvelimen osoite
 
Tarkista postifixin konfigurointi tiedostossa on määritetty tietokoneen isäntänimi ja palvelimen osoite
  
   myhostname = server.example.com
+
   <!--T:14-->
 +
myhostname = server.example.com
 
   alias_maps = hash:/etc/aliases
 
   alias_maps = hash:/etc/aliases
 
   alias_database = hash:/etc/aliases
 
   alias_database = hash:/etc/aliases
Rivi 41: Rivi 53:
 
   inet_interfaces = all
 
   inet_interfaces = all
  
 +
<!--T:15-->
 
Tallenna tiedosto ja avaa seuraavaksi tiedosto
 
Tallenna tiedosto ja avaa seuraavaksi tiedosto
  
   nano /etc/postfix/master.cf
+
   <!--T:16-->
 +
nano /etc/postfix/master.cf
  
 +
<!--T:17-->
 
Oletuksena master.cf tiedostossa on sallittu normaali SMTP yhteys portissa 25.
 
Oletuksena master.cf tiedostossa on sallittu normaali SMTP yhteys portissa 25.
  
   smtp      inet  n      -      -      -      -      smtpd
+
   <!--T:18-->
 +
smtp      inet  n      -      -      -      -      smtpd
  
  
 +
<!--T:19-->
 
Oletuksena seuraavat ovat risuaidalla merkitty (#).
 
Oletuksena seuraavat ovat risuaidalla merkitty (#).
  
 +
<!--T:20-->
 
Ota käyttöön poistamalla risuaita 587 portissa tapahtuva SMTP tiedonsiirtoa. Sillä voi myös siirtää salattua liikennettä komennolla STARTTLS.
 
Ota käyttöön poistamalla risuaita 587 portissa tapahtuva SMTP tiedonsiirtoa. Sillä voi myös siirtää salattua liikennettä komennolla STARTTLS.
  
   submission inet n      -      -      -      -      smtpd
+
   <!--T:21-->
 +
submission inet n      -      -      -      -      smtpd
 
     -o syslog_name=postfix/submission
 
     -o syslog_name=postfix/submission
 
     -o smtpd_tls_security_level=encrypt
 
     -o smtpd_tls_security_level=encrypt
Rivi 61: Rivi 80:
 
     -o milter_macro_daemon_name=ORIGINATING
 
     -o milter_macro_daemon_name=ORIGINATING
  
 +
<!--T:22-->
 
Ota käyttöön poistamalla risuaita SMTPS yhteys (portissa 465). SSL salaus käytetään tässä yhteydessä oletuksena. SASL todennusta suositellaan käytettäväksi.
 
Ota käyttöön poistamalla risuaita SMTPS yhteys (portissa 465). SSL salaus käytetään tässä yhteydessä oletuksena. SASL todennusta suositellaan käytettäväksi.
  
   smtps    inet  n      -      -      -      -      smtpd
+
   <!--T:23-->
 +
smtps    inet  n      -      -      -      -      smtpd
 
     -o syslog_name=postfix/smtps
 
     -o syslog_name=postfix/smtps
 
     -o smtpd_tls_wrappermode=yes
 
     -o smtpd_tls_wrappermode=yes
Rivi 70: Rivi 91:
 
     -o milter_macro_daemon_name=ORIGINATING
 
     -o milter_macro_daemon_name=ORIGINATING
  
=== Selitetään: ===
+
=== Selitetään: === <!--T:24-->
  
 +
<!--T:25-->
 
Palvelimesi nimi (tarkista että on sama kuin hostname (komento: hostname)):
 
Palvelimesi nimi (tarkista että on sama kuin hostname (komento: hostname)):
 
   myhostname = server.example.com
 
   myhostname = server.example.com
Rivi 84: Rivi 106:
 
Tämä vaaditaan jos ei ole suoraa yhteyttä verkkoon.  
 
Tämä vaaditaan jos ei ole suoraa yhteyttä verkkoon.  
  
 +
<!--T:26-->
 
Esimerkkinä Soneran postipalvelin:
 
Esimerkkinä Soneran postipalvelin:
 
   relayhost = [mail.inet.fi]:25
 
   relayhost = [mail.inet.fi]:25
  
 +
<!--T:27-->
 
DNA postipalvelin:
 
DNA postipalvelin:
 
   relayhost = [smtp.dnainternet.net]:25
 
   relayhost = [smtp.dnainternet.net]:25
  
  
 +
<!--T:28-->
 
Lähiverkkosi:
 
Lähiverkkosi:
 
   mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
 
   mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
Rivi 99: Rivi 124:
 
   inet_interfaces = all
 
   inet_interfaces = all
  
 +
<!--T:29-->
 
Sulje tiedosto ja käynnistä postfix uudelleen
 
Sulje tiedosto ja käynnistä postfix uudelleen
  
   service postfix restart
+
   <!--T:30-->
 +
service postfix restart
  
== Lisäasetukset ==
+
== Lisäasetukset == <!--T:31-->
  
=== Virtuaali sähköpostiosoitteet ===
+
=== Virtuaali sähköpostiosoitteet === <!--T:32-->
  
 +
<!--T:33-->
 
Voit ohjata virtuaali sähköpostiosoitteet esimerkiksi [email protected] ja [email protected] omalle käyttäjällesi.
 
Voit ohjata virtuaali sähköpostiosoitteet esimerkiksi [email protected] ja [email protected] omalle käyttäjällesi.
  
 +
<!--T:34-->
 
Avaa tiedosto:
 
Avaa tiedosto:
  
   /etc/aliases
+
   <!--T:35-->
 +
/etc/aliases
  
  # /etc/aliases
+
  <!--T:36-->
 +
# /etc/aliases
 
  mailer-daemon: postmaster
 
  mailer-daemon: postmaster
 
  postmaster: root
 
  postmaster: root
Rivi 128: Rivi 159:
 
  root = [username]
 
  root = [username]
  
 +
<!--T:37-->
 
Muuttamalla [username] kohta omaksi käyttäjätiliksi saat kaikki näiden käyttäjätilien sähköpostit samaan sähköpostilaatikkoon. Voit lisätä muitakin osoitteita tiedoston loppuun:
 
Muuttamalla [username] kohta omaksi käyttäjätiliksi saat kaikki näiden käyttäjätilien sähköpostit samaan sähköpostilaatikkoon. Voit lisätä muitakin osoitteita tiedoston loppuun:
  
  [alias_postinimi] = [käyttäjälle]
+
  <!--T:38-->
 +
[alias_postinimi] = [käyttäjälle]
  
 +
<!--T:39-->
 
Vahvista muutokset
 
Vahvista muutokset
  
   newaliases
+
   <!--T:40-->
 +
newaliases
  
=== Virtuaali domainit ===
+
=== Virtuaali domainit === <!--T:41-->
  
 +
<!--T:42-->
 
Virtuaaliset domainit siis ovat tarkoitettu sähköpostipalvelimelle joka lähettää ja vastaanottaa usealle eri domainille.
 
Virtuaaliset domainit siis ovat tarkoitettu sähköpostipalvelimelle joka lähettää ja vastaanottaa usealle eri domainille.
  
  
 +
<!--T:43-->
 
Avaa Postfixin konfigurointi tiedosto main.cf
 
Avaa Postfixin konfigurointi tiedosto main.cf
  
   /etc/postfix/main.cf
+
   <!--T:44-->
 +
/etc/postfix/main.cf
  
 +
<!--T:45-->
 
Lisää seuraavat rivit:
 
Lisää seuraavat rivit:
  
   virtual_alias_domains = example.com
+
   <!--T:46-->
 +
virtual_alias_domains = example.com
 
   virtual_alias_maps = hash:/etc/postfix/virtual
 
   virtual_alias_maps = hash:/etc/postfix/virtual
  
 +
<!--T:47-->
 
Luo uusi tiedosto
 
Luo uusi tiedosto
  
   [email protected] postmaster
+
   <!--T:48-->
 +
 
   [email protected]      matti
 
   [email protected]      matti
 
   [email protected]      kalle
 
   [email protected]      kalle
Rivi 158: Rivi 200:
 
   # @example.com        aleksi
 
   # @example.com        aleksi
  
 +
<!--T:49-->
 
Älä lisää virtual_alias_domain:ia mydestination domainiksi!
 
Älä lisää virtual_alias_domain:ia mydestination domainiksi!
  
=== Sähköpostin uudelleenohjaus ===
+
=== Sähköpostin uudelleenohjaus === <!--T:50-->
  
 +
<!--T:51-->
 
Sähköpostin uudelleenohjaus [email protected] -> matti.example2.com esimerkiksi.
 
Sähköpostin uudelleenohjaus [email protected] -> matti.example2.com esimerkiksi.
  
 +
<!--T:52-->
 
Avaa Postfixin konfigurointi tiedosto main.cf
 
Avaa Postfixin konfigurointi tiedosto main.cf
  
   /etc/postfix/main.cf:
+
   <!--T:53-->
 +
/etc/postfix/main.cf:
  
 +
<!--T:54-->
 
Lisää seuraavat rivit tiedostoon:
 
Lisää seuraavat rivit tiedostoon:
  
     virtual_alias_domains = example.com
+
     <!--T:55-->
 +
virtual_alias_domains = example.com
 
     virtual_alias_maps = hash:/etc/postfix/virtual
 
     virtual_alias_maps = hash:/etc/postfix/virtual
  
 +
<!--T:56-->
 
Luo uusi tiedosto
 
Luo uusi tiedosto
  
   /etc/postfix/virtual:
+
   <!--T:57-->
 +
/etc/postfix/virtual:
  
 +
<!--T:58-->
 
Lisää seuraavat rivit tiedostoon
 
Lisää seuraavat rivit tiedostoon
 
   [email protected] postmaster
 
   [email protected] postmaster
Rivi 184: Rivi 235:
 
   # @example.com        jim@yet-another-site
 
   # @example.com        jim@yet-another-site
  
 +
<!--T:59-->
 
Uudelleenohjattava sähköpostin domain tulee olla mydestination merkitty. Et voi uudelleenohjata aliaksia /etc/alias
 
Uudelleenohjattava sähköpostin domain tulee olla mydestination merkitty. Et voi uudelleenohjata aliaksia /etc/alias
  
 +
<!--T:60-->
 
Tarkista konfiguraatio
 
Tarkista konfiguraatio
  
   postmap /etc/postfix/virtual
+
   <!--T:61-->
 +
postmap /etc/postfix/virtual
  
== Testataan Postfixin toimintaa ==
+
== Testataan Postfixin toimintaa == <!--T:62-->
  
 +
<!--T:63-->
 
Lähetetään testisähköposti:
 
Lähetetään testisähköposti:
  
 +
<!--T:64-->
 
Asenna tämä sähköpostityökälut jos ei ole asennettu:
 
Asenna tämä sähköpostityökälut jos ei ole asennettu:
  
   apt-get install mailutils
+
   <!--T:65-->
 +
apt-get install mailutils
  
 +
<!--T:66-->
 
ja sen jälkeen lähetetään sähköpostia:
 
ja sen jälkeen lähetetään sähköpostia:
  
+
   <!--T:67-->
 +
  
 +
<!--T:68-->
 
Komento tulostaa:
 
Komento tulostaa:
 
   Subject: Aiheesi viestille
 
   Subject: Aiheesi viestille
  
 +
<!--T:69-->
 
Tämän jälkeen kirjoita viesti (ja ENTER) ja tulostuu:
 
Tämän jälkeen kirjoita viesti (ja ENTER) ja tulostuu:
  
   CC:  
+
   <!--T:70-->
 +
CC:  
  
 +
<!--T:71-->
 
jonka voi jättää tyhjäksi. Lähetä sähköposti näppäinyhdistelmällä CTRL+D.
 
jonka voi jättää tyhjäksi. Lähetä sähköposti näppäinyhdistelmällä CTRL+D.
  
== Sähköpostipalvelimen suojaaminen ==
+
== Sähköpostipalvelimen suojaaminen == <!--T:72-->
  
 +
<!--T:73-->
 
Kun luot oman sähköpostipalvelimen, sitä pitää heti alkaa suojaamaan ahkerasti roskapostittajia vastaan. Suositus on ottaa myös SASL todennus käyttöön.
 
Kun luot oman sähköpostipalvelimen, sitä pitää heti alkaa suojaamaan ahkerasti roskapostittajia vastaan. Suositus on ottaa myös SASL todennus käyttöön.
  
=== Roskapostien suodatus ===  
+
=== Roskapostien suodatus === <!--T:74-->
  
 +
<!--T:75-->
 
Lisäämällä seuraava koodi pätkä tarkistaa onko lähettäjän verkkotunnus olemassa:
 
Lisäämällä seuraava koodi pätkä tarkistaa onko lähettäjän verkkotunnus olemassa:
  
   nano /etc/postfix/main.cf
+
   <!--T:76-->
 +
nano /etc/postfix/main.cf
  
  
   smtpd_recipient_restrictions = reject_invalid_hostname,
+
   <!--T:77-->
 +
smtpd_recipient_restrictions = reject_invalid_hostname,
 
         reject_unknown_recipient_domain,
 
         reject_unknown_recipient_domain,
 
         reject_unauth_destination,
 
         reject_unauth_destination,
Rivi 228: Rivi 295:
 
         permit
 
         permit
  
  smtpd_helo_restrictions = reject_invalid_helo_hostname,
+
  <!--T:78-->
 +
smtpd_helo_restrictions = reject_invalid_helo_hostname,
 
         reject_non_fqdn_helo_hostname,
 
         reject_non_fqdn_helo_hostname,
 
         reject_unknown_helo_hostname
 
         reject_unknown_helo_hostname
  
 +
<!--T:79-->
 
Ja tämä tarkistaa listan onko verkkotunnus merkitty roskapostittajaksi:
 
Ja tämä tarkistaa listan onko verkkotunnus merkitty roskapostittajaksi:
  
   [[nano]] /etc/postfix/main.cf
+
   <!--T:80-->
 +
[[nano]] /etc/postfix/main.cf
  
   smtpd_client_restrictions = reject_rbl_client dnsbl.sorbs.net
+
   <!--T:81-->
 +
smtpd_client_restrictions = reject_rbl_client dnsbl.sorbs.net
  
=== SMTPS SASL todennus ===  
+
=== SMTPS SASL todennus === <!--T:82-->
  
 +
<!--T:83-->
 
Lisäämällä seuraava rivi, niin estät sähköpostin välitykset muusta kuin omasta verkostasi. SASL tunnistuksen avulla voit lähettää muustakin verkosta
 
Lisäämällä seuraava rivi, niin estät sähköpostin välitykset muusta kuin omasta verkostasi. SASL tunnistuksen avulla voit lähettää muustakin verkosta
  
   [[nano]] /etc/postfix/main.cf
+
   <!--T:84-->
 +
[[nano]] /etc/postfix/main.cf
  
   smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject
+
   <!--T:85-->
 +
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject
  
   [[nano]] /etc/postfix/master.cf
+
   <!--T:86-->
 +
[[nano]] /etc/postfix/master.cf
  
 +
<!--T:87-->
 
Ota seuraavilta riveiltä risuaita pois submission ja smtps kohdasta. Jos haluat SMTP portille myös audikoinnin, lisää tämä seuraavat rivi sen alle.
 
Ota seuraavilta riveiltä risuaita pois submission ja smtps kohdasta. Jos haluat SMTP portille myös audikoinnin, lisää tämä seuraavat rivi sen alle.
  
   -o smtpd_sasl_auth_enable=yes
+
   <!--T:88-->
 +
-o smtpd_sasl_auth_enable=yes
 
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
 
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  
=== TLS (STARTSSL) ===
+
=== TLS (STARTSSL) === <!--T:89-->
  
 +
<!--T:90-->
 
Esimerkki konfiguraatio tiedostosta /etc/postfix/main.cf
 
Esimerkki konfiguraatio tiedostosta /etc/postfix/main.cf
  
   smtpd_tls_cert_file = /etc/postfix/cert.pem
+
   <!--T:91-->
 +
smtpd_tls_cert_file = /etc/postfix/cert.pem
 
     smtpd_tls_key_file = /etc/postfix/key.pem
 
     smtpd_tls_key_file = /etc/postfix/key.pem
 
     smtpd_tls_mandatory_ciphers = high
 
     smtpd_tls_mandatory_ciphers = high
Rivi 265: Rivi 344:
 
     smtpd_tls_mandatory_protocols = TLSv1 TLSv1.1 TLSv1.2
 
     smtpd_tls_mandatory_protocols = TLSv1 TLSv1.1 TLSv1.2
  
 +
<!--T:92-->
 
Ota käyttöön Submission kohdasta risuaidat pois.
 
Ota käyttöön Submission kohdasta risuaidat pois.
  
 +
<!--T:93-->
 
Testaa STARTSSL: https://starttls.info/
 
Testaa STARTSSL: https://starttls.info/
  
=== SMTPS ===
+
=== SMTPS === <!--T:94-->
  
 +
<!--T:95-->
 
Postfixissä on tuki SSL yhteydelle TLS:n kanssa mutta ei pelkästään SSL kanssa. Tämä seuraava ohje siis on pelkälle SSL, mutta jos on tuki TLS salaukselle, on suositeltavaa käyttää sitä.
 
Postfixissä on tuki SSL yhteydelle TLS:n kanssa mutta ei pelkästään SSL kanssa. Tämä seuraava ohje siis on pelkälle SSL, mutta jos on tuki TLS salaukselle, on suositeltavaa käyttää sitä.
  
 +
<!--T:96-->
 
Ohjeen lähde: http://www5.sonera.fi/keskustele/viewtopic.php?f=59&t=9210
 
Ohjeen lähde: http://www5.sonera.fi/keskustele/viewtopic.php?f=59&t=9210
  
 +
<!--T:97-->
 
SMTPS on salattu SMTP yhteys ja nykyisin suositus olisi käyttää tätä ominaisuutta.  
 
SMTPS on salattu SMTP yhteys ja nykyisin suositus olisi käyttää tätä ominaisuutta.  
  
 +
<!--T:98-->
 
Esimerkkinä on Soneran verkko:
 
Esimerkkinä on Soneran verkko:
  
 +
<!--T:99-->
 
Olet siis konfiguroinnut /etc/postfix/main.cf tiedostoon. Tämä siis toimii salaamattassa portissa 25.
 
Olet siis konfiguroinnut /etc/postfix/main.cf tiedostoon. Tämä siis toimii salaamattassa portissa 25.
  
   relayhost = [mail.inet.fi]
+
   <!--T:100-->
 +
relayhost = [mail.inet.fi]
  
 +
<!--T:101-->
 
Nyt olisi aika siirtyä salattuun postiin ja tämä on hieman hankalempi, kun Soneran omat postipalvelimet eivät tue TLS salausta. Postfix ei tue SSL salausta, mutta asennetaan pieni kiertotie niin se onnistuu.
 
Nyt olisi aika siirtyä salattuun postiin ja tämä on hieman hankalempi, kun Soneran omat postipalvelimet eivät tue TLS salausta. Postfix ei tue SSL salausta, mutta asennetaan pieni kiertotie niin se onnistuu.
  
 +
<!--T:102-->
 
Asennetaan ensin Stunnel
 
Asennetaan ensin Stunnel
  
   [[aptitude]] install stunnel
+
   <!--T:103-->
 +
[[aptitude]] install stunnel
  
 +
<!--T:104-->
 
Luodaan tiedosto /etc/stunnel/postfix.conf ja kopioi alla oleva koodi:
 
Luodaan tiedosto /etc/stunnel/postfix.conf ja kopioi alla oleva koodi:
  
   [ssmtp_c2s]
+
   <!--T:105-->
 +
[ssmtp_c2s]
 
     accept = 127.0.0.1:10111
 
     accept = 127.0.0.1:10111
 
     client = yes
 
     client = yes
Rivi 297: Rivi 389:
 
     delay = yes   
 
     delay = yes   
  
 +
<!--T:106-->
 
ja tämän jälkeen avaa tiedosto: /etc/default/stunnel ja muuta se seuraavanlaiseksi:
 
ja tämän jälkeen avaa tiedosto: /etc/default/stunnel ja muuta se seuraavanlaiseksi:
  
   # Change to one to enable stunnel automatic startup
+
   <!--T:107-->
 +
# Change to one to enable stunnel automatic startup
 
   # MUUTOS
 
   # MUUTOS
 
   #ENABLED=0
 
   #ENABLED=0
Rivi 309: Rivi 403:
 
   PPP_RESTART=0
 
   PPP_RESTART=0
  
 +
<!--T:108-->
 
Tämän jälkeen muokkaa /etc/postfix/main.cf seuraavanlaiseksi:
 
Tämän jälkeen muokkaa /etc/postfix/main.cf seuraavanlaiseksi:
  
   relayhost = 127.0.0.1:10111
+
   <!--T:109-->
 +
relayhost = 127.0.0.1:10111
 
      
 
      
 
   # SASL authentication
 
   # SASL authentication
Rivi 331: Rivi 427:
 
Luo tiedosto  /etc/postfix/passwd ja kirjoita siihen Soneran sähköpostisi käyttäjätunnus ja salasana
 
Luo tiedosto  /etc/postfix/passwd ja kirjoita siihen Soneran sähköpostisi käyttäjätunnus ja salasana
  
   mail.inet.fi:465 KÄYTTÄJÄTUNNUS:SALASANA
+
   <!--T:110-->
 +
mail.inet.fi:465 KÄYTTÄJÄTUNNUS:SALASANA
  
 +
<!--T:111-->
 
Esimerkiksi:
 
Esimerkiksi:
  
   mail.inet.fi:465 [email protected]:taisto
+
   <!--T:112-->
 +
mail.inet.fi:465 [email protected]:taisto
  
 +
<!--T:113-->
 
Tämän jälkeen anna tämä komento:
 
Tämän jälkeen anna tämä komento:
  
   postmap hash:/etc/postfix/passwd
+
   <!--T:114-->
 +
postmap hash:/etc/postfix/passwd
  
 +
<!--T:115-->
 
Kokeile toimiiko antamalla seuraava komento:
 
Kokeile toimiiko antamalla seuraava komento:
  
   postmap -q mail.inet.fi:465 /etc/postfix/passwd
+
   <!--T:116-->
 +
postmap -q mail.inet.fi:465 /etc/postfix/passwd
  
 +
<!--T:117-->
 
Jos komento tulostaa käyttäjätunnuksesi ja salasanasi, kaikki toimii tähän asti
 
Jos komento tulostaa käyttäjätunnuksesi ja salasanasi, kaikki toimii tähän asti
  
  
 +
<!--T:118-->
 
Estä muiden käyttäjien näkemästä salasanaasi:
 
Estä muiden käyttäjien näkemästä salasanaasi:
  
   chmod go-rwx /etc/postfix/passwd*
+
   <!--T:119-->
 +
chmod go-rwx /etc/postfix/passwd*
  
 +
<!--T:120-->
 
Käynnistä lopuksi palvelut uudelleen
 
Käynnistä lopuksi palvelut uudelleen
  
   service stunnel4  restart
+
   <!--T:121-->
 +
service stunnel4  restart
  
   service postfix restart
+
   <!--T:122-->
 +
service postfix restart
  
  
== Postfix toiminta PHP5 kanssa ==
+
== Postfix toiminta PHP5 kanssa == <!--T:123-->
  
 +
<!--T:124-->
 
PHP5 sisältää mail funktion. Sinun tulee konfiguroida php.ini tiedostoa  
 
PHP5 sisältää mail funktion. Sinun tulee konfiguroida php.ini tiedostoa  
  
   nano /etc/php5/apache2/php.ini
+
   <!--T:125-->
 +
nano /etc/php5/apache2/php.ini
  
 +
<!--T:126-->
 
ja muuttaa se tälläiseksi:
 
ja muuttaa se tälläiseksi:
  
   ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
+
   <!--T:127-->
 +
; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
 
   ; http://php.net/sendmail-path
 
   ; http://php.net/sendmail-path
 
   sendmail_path = "/usr/sbin/sendmail -t -i"
 
   sendmail_path = "/usr/sbin/sendmail -t -i"
  
 +
<!--T:128-->
 
ja käynnistä apache uudelleen
 
ja käynnistä apache uudelleen
  
   service apache2 restart
+
   <!--T:129-->
 +
service apache2 restart
  
== Virheilmoituksia ==
+
== Virheilmoituksia == <!--T:130-->
  
 +
<!--T:131-->
 
Tässä lista yleisistä virheilmoituksista mitä ilmenee usein postfixin konfiguroinnista:
 
Tässä lista yleisistä virheilmoituksista mitä ilmenee usein postfixin konfiguroinnista:
  
  Sender address rejected: Domain not found (in reply to RCPT TO command
+
  <!--T:132-->
 +
Sender address rejected: Domain not found (in reply to RCPT TO command
  
 +
<!--T:133-->
 
myorigin on määritetty väärin /etc/postfix/main.cf tiedostosta. Tämän tulee olemaan domainin mini, esimerkiksi: example.com
 
myorigin on määritetty väärin /etc/postfix/main.cf tiedostosta. Tämän tulee olemaan domainin mini, esimerkiksi: example.com
  
   Client host rejected: Access denied
+
   <!--T:134-->
 +
Client host rejected: Access denied
  
 +
<!--T:135-->
 
Relayhost on estänyt sinut, ehkä roskapostien takia.
 
Relayhost on estänyt sinut, ehkä roskapostien takia.
  
   connect to mx3.hotmail.com[65.55.37.104]:25: No route to host
+
   <!--T:136-->
 +
connect to mx3.hotmail.com[65.55.37.104]:25: No route to host
  
 +
<!--T:137-->
 
Tarkista Relayhost main.cf tiedostossa. Mahdollisesti sinulla on suljettu suoraan portti 25.
 
Tarkista Relayhost main.cf tiedostossa. Mahdollisesti sinulla on suljettu suoraan portti 25.
  
   Host or domain name not found. Name service error for name=gmail.con type=A: Host not found
+
   <!--T:138-->
 +
Host or domain name not found. Name service error for name=gmail.con type=A: Host not found
  
 +
<!--T:139-->
 
DNS Virhe. Tarkista resolv.conf tiedostossa määriteytyt DNS asetukset. Kokeile nslookup komentoa.
 
DNS Virhe. Tarkista resolv.conf tiedostossa määriteytyt DNS asetukset. Kokeile nslookup komentoa.
  
== Lähteet ==
+
== Lähteet == <!--T:140-->
  
 +
<!--T:141-->
 
http://www.postfix.org/
 
http://www.postfix.org/
  
 +
<!--T:142-->
 
https://wiki.debian.org/Postfix
 
https://wiki.debian.org/Postfix
  
 
</translate>
 
</translate>

Versio 21. tammikuuta 2015 kello 11.35

Muut kielet:
English • ‎suomi

Postfix on sähköpostin välitysohjelmisto (MTA). Postfix on avoimen lisenssillä varustettu ohjelmisto. Tietoturvallisessa ja suorituskykyisessä Postfixissä on hyvä roskapostin suodatus.

Suosittelemme käyttämään myös Spamassassin ja Amavis suojaamaan sähköpostipalvelinta roskapostittajilta.

Asennus

 aptitude install postfix

Seuraa asennusohjelman ohjeita

Postfix1.png


Tämän jälkeen sinun tulee antaa palvelimen isäntänimi

esimerkiksi:

 mail.example.com

Konfigurointi

Avaa konfigurointi tiedosto:

 nano /etc/postfix/main.cf

Tarkista postifixin konfigurointi tiedostossa on määritetty tietokoneen isäntänimi ja palvelimen osoite

 myhostname = server.example.com
 alias_maps = hash:/etc/aliases
 alias_database = hash:/etc/aliases
 myorigin = example.com
 mydestination = example.com, server.example.com, localhost, localhost.example.com$
 #relayhost =
 mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
 mailbox_command = procmail -a "$EXTENSION"
 mailbox_size_limit = 0
 recipient_delimiter = +
 inet_interfaces = all

Tallenna tiedosto ja avaa seuraavaksi tiedosto

 nano /etc/postfix/master.cf

Oletuksena master.cf tiedostossa on sallittu normaali SMTP yhteys portissa 25.

 smtp      inet  n       -       -       -       -       smtpd


Oletuksena seuraavat ovat risuaidalla merkitty (#).

Ota käyttöön poistamalla risuaita 587 portissa tapahtuva SMTP tiedonsiirtoa. Sillä voi myös siirtää salattua liikennettä komennolla STARTTLS.

 submission inet n       -       -       -       -       smtpd
   -o syslog_name=postfix/submission
   -o smtpd_tls_security_level=encrypt
   -o smtpd_sasl_auth_enable=yes
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
   -o milter_macro_daemon_name=ORIGINATING

Ota käyttöön poistamalla risuaita SMTPS yhteys (portissa 465). SSL salaus käytetään tässä yhteydessä oletuksena. SASL todennusta suositellaan käytettäväksi.

 smtps     inet  n       -       -       -       -       smtpd
   -o syslog_name=postfix/smtps
   -o smtpd_tls_wrappermode=yes
   -o smtpd_sasl_auth_enable=yes
   -o smtpd_client_restrictions=permit_sasl_authenticated,reject
   -o milter_macro_daemon_name=ORIGINATING

Selitetään:

Palvelimesi nimi (tarkista että on sama kuin hostname (komento: hostname)):

 myhostname = server.example.com

Kirjautumisen tunnukset = sama kuin Debian. Ei muuteta

 alias_maps = hash:/etc/aliases
 alias_database = hash:/etc/aliases

Domain (määritetään palvelimesi sähköpostiosoitteeseen [email protected]). Oletuksena määritetty /etc/mailname:

 myorigin = example.com

Tietokoneen isäntänimet:

 mydestination = example.com, server.example.com, localhost, localhost.example.com$
 #relayhost = 127.0.0.1:10111

Tämä vaaditaan jos ei ole suoraa yhteyttä verkkoon.

Esimerkkinä Soneran postipalvelin:

 relayhost = [mail.inet.fi]:25

DNA postipalvelin:

 relayhost = [smtp.dnainternet.net]:25


Lähiverkkosi:

 mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
 mailbox_command = procmail -a "$EXTENSION"
 mailbox_size_limit = 0
 recipient_delimiter = +

Verkkoliitännät

 inet_interfaces = all

Sulje tiedosto ja käynnistä postfix uudelleen

 service postfix restart

Lisäasetukset

Virtuaali sähköpostiosoitteet

Voit ohjata virtuaali sähköpostiosoitteet esimerkiksi [email protected] ja [email protected] omalle käyttäjällesi.

Avaa tiedosto:

 /etc/aliases
# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root = [username]

Muuttamalla [username] kohta omaksi käyttäjätiliksi saat kaikki näiden käyttäjätilien sähköpostit samaan sähköpostilaatikkoon. Voit lisätä muitakin osoitteita tiedoston loppuun:

[alias_postinimi] = [käyttäjälle]

Vahvista muutokset

 newaliases

Virtuaali domainit

Virtuaaliset domainit siis ovat tarkoitettu sähköpostipalvelimelle joka lähettää ja vastaanottaa usealle eri domainille.


Avaa Postfixin konfigurointi tiedosto main.cf

 /etc/postfix/main.cf

Lisää seuraavat rivit:

 virtual_alias_domains = example.com
 virtual_alias_maps = hash:/etc/postfix/virtual

Luo uusi tiedosto

 [email protected] postmaster
 [email protected]       matti
 [email protected]      kalle
 # Uncomment entry below to implement a catch-all address
 # @example.com         aleksi

Älä lisää virtual_alias_domain:ia mydestination domainiksi!

Sähköpostin uudelleenohjaus

Sähköpostin uudelleenohjaus [email protected] -> matti.example2.com esimerkiksi.

Avaa Postfixin konfigurointi tiedosto main.cf

 /etc/postfix/main.cf:

Lisää seuraavat rivit tiedostoon:

   virtual_alias_domains = example.com
   virtual_alias_maps = hash:/etc/postfix/virtual

Luo uusi tiedosto

 /etc/postfix/virtual:

Lisää seuraavat rivit tiedostoon

  [email protected] postmaster
  [email protected]        [email protected]
  [email protected]       [email protected]
  # Uncomment entry below to implement a catch-all address
  # @example.com         jim@yet-another-site

Uudelleenohjattava sähköpostin domain tulee olla mydestination merkitty. Et voi uudelleenohjata aliaksia /etc/alias

Tarkista konfiguraatio

  postmap /etc/postfix/virtual

Testataan Postfixin toimintaa

Lähetetään testisähköposti:

Asenna tämä sähköpostityökälut jos ei ole asennettu:

 apt-get install mailutils

ja sen jälkeen lähetetään sähköpostia:

 mail [email protected]

Komento tulostaa:

 Subject: Aiheesi viestille

Tämän jälkeen kirjoita viesti (ja ENTER) ja tulostuu:

 CC: 

jonka voi jättää tyhjäksi. Lähetä sähköposti näppäinyhdistelmällä CTRL+D.

Sähköpostipalvelimen suojaaminen

Kun luot oman sähköpostipalvelimen, sitä pitää heti alkaa suojaamaan ahkerasti roskapostittajia vastaan. Suositus on ottaa myös SASL todennus käyttöön.

Roskapostien suodatus

Lisäämällä seuraava koodi pätkä tarkistaa onko lähettäjän verkkotunnus olemassa:

 nano /etc/postfix/main.cf


 smtpd_recipient_restrictions = reject_invalid_hostname,
       reject_unknown_recipient_domain,
       reject_unauth_destination,
       reject_rbl_client sbl.spamhaus.org, # Tämä rivi ei Soneran verkkoon
       permit
smtpd_helo_restrictions = reject_invalid_helo_hostname,
       reject_non_fqdn_helo_hostname,
       reject_unknown_helo_hostname

Ja tämä tarkistaa listan onko verkkotunnus merkitty roskapostittajaksi:

 nano /etc/postfix/main.cf
 smtpd_client_restrictions = reject_rbl_client dnsbl.sorbs.net

SMTPS SASL todennus

Lisäämällä seuraava rivi, niin estät sähköpostin välitykset muusta kuin omasta verkostasi. SASL tunnistuksen avulla voit lähettää muustakin verkosta

 nano /etc/postfix/main.cf
 smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject
 nano /etc/postfix/master.cf

Ota seuraavilta riveiltä risuaita pois submission ja smtps kohdasta. Jos haluat SMTP portille myös audikoinnin, lisää tämä seuraavat rivi sen alle.

 -o smtpd_sasl_auth_enable=yes
 -o smtpd_client_restrictions=permit_sasl_authenticated,reject

TLS (STARTSSL)

Esimerkki konfiguraatio tiedostosta /etc/postfix/main.cf

 smtpd_tls_cert_file = /etc/postfix/cert.pem
   smtpd_tls_key_file = /etc/postfix/key.pem
   smtpd_tls_mandatory_ciphers = high
   smtpd_tls_mandatory_exclude_ciphers = aNULL, MD5
   smtpd_tls_security_level = encrypt
   smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
   smtpd_tls_mandatory_protocols = TLSv1 TLSv1.1 TLSv1.2

Ota käyttöön Submission kohdasta risuaidat pois.

Testaa STARTSSL: https://starttls.info/

SMTPS

Postfixissä on tuki SSL yhteydelle TLS:n kanssa mutta ei pelkästään SSL kanssa. Tämä seuraava ohje siis on pelkälle SSL, mutta jos on tuki TLS salaukselle, on suositeltavaa käyttää sitä.

Ohjeen lähde: http://www5.sonera.fi/keskustele/viewtopic.php?f=59&t=9210

SMTPS on salattu SMTP yhteys ja nykyisin suositus olisi käyttää tätä ominaisuutta.

Esimerkkinä on Soneran verkko:

Olet siis konfiguroinnut /etc/postfix/main.cf tiedostoon. Tämä siis toimii salaamattassa portissa 25.

 relayhost = [mail.inet.fi]

Nyt olisi aika siirtyä salattuun postiin ja tämä on hieman hankalempi, kun Soneran omat postipalvelimet eivät tue TLS salausta. Postfix ei tue SSL salausta, mutta asennetaan pieni kiertotie niin se onnistuu.

Asennetaan ensin Stunnel

 aptitude install stunnel

Luodaan tiedosto /etc/stunnel/postfix.conf ja kopioi alla oleva koodi:

 [ssmtp_c2s]
   accept = 127.0.0.1:10111
   client = yes
   connect = mail.inet.fi:465
   delay = yes  

ja tämän jälkeen avaa tiedosto: /etc/default/stunnel ja muuta se seuraavanlaiseksi:

 # Change to one to enable stunnel automatic startup
 # MUUTOS
 #ENABLED=0
 ENABLED=1
 FILES="/etc/stunnel/*.conf"
 OPTIONS=""
 
 # Change to one to enable ppp restart scripts
 PPP_RESTART=0

Tämän jälkeen muokkaa /etc/postfix/main.cf seuraavanlaiseksi:

 relayhost = 127.0.0.1:10111
   
 # SASL authentication
 smtp_sasl_auth_enable=yes
 smtp_sasl_password_maps = hash:/etc/postfix/passwd
 smtp_sasl_security_options = noanonymous
 smtp_sasl_tls_security_options = noanonymous
    
 # TLS
 smtp_tls_eccert_file =
 smtp_tls_eckey_file =
 # http://www.postfix.org/TLS_README.html#client_tls_may
 smtp_tls_security_level = may
 smtpd_tls_received_header = yes
tls_random_source = dev:/dev/urandom
 # http://www.postfix.org/TLS_README.html#client_tls_may
 smtpd_tls_security_level = may
 

Luo tiedosto /etc/postfix/passwd ja kirjoita siihen Soneran sähköpostisi käyttäjätunnus ja salasana

 mail.inet.fi:465 KÄYTTÄJÄTUNNUS:SALASANA

Esimerkiksi:

 mail.inet.fi:465 [email protected]:taisto

Tämän jälkeen anna tämä komento:

 postmap hash:/etc/postfix/passwd

Kokeile toimiiko antamalla seuraava komento:

 postmap -q mail.inet.fi:465 /etc/postfix/passwd

Jos komento tulostaa käyttäjätunnuksesi ja salasanasi, kaikki toimii tähän asti


Estä muiden käyttäjien näkemästä salasanaasi:

 chmod go-rwx /etc/postfix/passwd*

Käynnistä lopuksi palvelut uudelleen

 service stunnel4  restart
 service postfix restart


Postfix toiminta PHP5 kanssa

PHP5 sisältää mail funktion. Sinun tulee konfiguroida php.ini tiedostoa

 nano /etc/php5/apache2/php.ini

ja muuttaa se tälläiseksi:

 ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
 ; http://php.net/sendmail-path
 sendmail_path = "/usr/sbin/sendmail -t -i"

ja käynnistä apache uudelleen

 service apache2 restart

Virheilmoituksia

Tässä lista yleisistä virheilmoituksista mitä ilmenee usein postfixin konfiguroinnista:

Sender address rejected: Domain not found (in reply to RCPT TO command

myorigin on määritetty väärin /etc/postfix/main.cf tiedostosta. Tämän tulee olemaan domainin mini, esimerkiksi: example.com

 Client host rejected: Access denied

Relayhost on estänyt sinut, ehkä roskapostien takia.

 connect to mx3.hotmail.com[65.55.37.104]:25: No route to host

Tarkista Relayhost main.cf tiedostossa. Mahdollisesti sinulla on suljettu suoraan portti 25.

 Host or domain name not found. Name service error for name=gmail.con type=A: Host not found

DNS Virhe. Tarkista resolv.conf tiedostossa määriteytyt DNS asetukset. Kokeile nslookup komentoa.

Lähteet

http://www.postfix.org/

https://wiki.debian.org/Postfix

Mainos / Advertisement: