Postfix'in CentOS'a kurulumundan sonra ve başlatmadan önce gereken ilk yapılandırma.
Yayın Tarihi:4 Ocak 2021.
INFOMARTION > Postfix'in CentOS'a kurulumundan sonra ve başlatmadan önce gereken ilk yapılandırma.
Genel bakış.
Bu, Postfix'i CentOS'a yüklemek ve başlatmak için gereken ilk yapılandırma prosedürüdür. Bilgiler CentOS7 kullanıldığı varsayımına dayanmaktadır. Bunu teslim portunda ayarlamak istiyoruz.
Dovecot'u da yüklerseniz, ayrıca bkz.
Postfix posta göndermek için, Dovecot ise posta almak içindir. E-posta gönderme işlemini gerçekleştirmeniz gerekiyorsa Postfix'i, e-posta almak istiyorsanız da Dovecot'u yükleyin.
Versiyonlar aşağıdaki gibidir.
CentOS sürümü | 7.6 (1810) |
---|---|
Postfix sürümü | 2.10.1 |
İçindekiler
1. yükleyin
Bu bölümde Postfix'in kurulumdan başlatmaya kadar olan yapılandırması açıklanmaktadır.
1-1. Postfix kurulumu
Yum komutunu kullanarak Postfix kurulumunu gerçekleştirin. Çalışmayı kök kullanıcı olarak gerçekleştirin.
[username@hostname ~]$ su -
[root@hostname ~]# yum -y install postfix
1-2. bootstrap kontrolü
Başarılı bir şekilde kurulup kurulmadığını kontrol etmek için başlatmayı kontrol edin.
[root@hostname ~]# /usr/sbin/postfix start
[root@hostname ~]# ps aux | grep postfix
root 1485 0.7 0.2 89744 2128 ? Ss 16:02 0:00 /usr/libexec/postfix/master -w
postfix 1486 0.2 0.4 89848 4080 ? S 16:02 0:00 pickup -l -t unix -u
postfix 1487 0.2 0.4 89916 4104 ? S 16:02 0:00 qmgr -l -t unix -u
root 1489 0.0 0.1 112824 964 pts/0 S+ 16:02 0:00 grep --color=auto postfix
Yukarıda açıklandığı gibi postfix kullanıcısı olarak çalışan herhangi bir işlem tamamdır. Dur.
[root@hostname ~]# /usr/sbin/postfix stop
2. Kurulum ayrıntıları
2-1. başlatma
Postfix'in ilk yapılandırması. Temel olarak, Postfix yapılandırması "/etc/postfix/main.cf" içinde tanımlanmıştır, bu nedenle main.cf dosyasını değiştireceğiz.
[root@hostname ~]# vi /etc/postfix/main.cf
Aşağıdaki şekilde değiştirin.
#
#myhostname = host.domain.tld
#myhostname = virtual.domain.tld
~KISALTMA~
#
#mydomain = domain.tld
~KISALTMA~
#myorigin = $myhostname
#myorigin = $mydomain
~KISALTMA~
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
inet_interfaces = localhost
~KISALTMA~
mydestination = $myhostname, localhost.$mydomain, localhost
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
~KISALTMA~
#mynetworks = 168.100.189.0/24, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~KISALTMA~
#
#home_mailbox = Mailbox
#home_mailbox = Maildir/
#
myhostname = example.com
#myhostname = virtual.domain.tld
~KISALTMA~
#
mydomain = example.com
~KISALTMA~
#myorigin = $myhostname
myorigin = $mydomain
~KISALTMA~
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#inet_interfaces = localhost
~KISALTMA~
#mydestination = $myhostname, localhost.$mydomain, localhost
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain,
# mail.$mydomain, www.$mydomain, ftp.$mydomain
~KISALTMA~
mynetworks = 127.0.0.0/8, 192.168.100.0/24
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
~KISALTMA~
#
#home_mailbox = Mailbox
home_mailbox = Maildir/
myhostname", "mydomain" ve "myorigin" Bunlar alan adı ile ilgili ayarlardır. 'example.com' olarak değiştirilen kısım sunucunun alan adına ayarlanmalıdır. "https://example.com/"un "example.com" kısmı alan adıdır.
E-posta adresi username@example.com'dur.
'mynetworks' ağ ile ilgili bir ayardır. Bu, postfix'e bağlanabilecek bir IP adresidir. Posta sunucusu farklı bir sunucuya bağlıysa, bu değeri uygun şekilde değiştirin.
'home_mailbox' e-posta dizinidir. Gönderilen e-postayı kaydedin.
2-2. OS kullanıcısı veya $alias_maps içinde tanımlanmamışsa reddet
OS kullanıcısı ve $alias_maps içinde listelenen kullanıcılarla e-posta göndermek için ayarları yapılandırın. OS kullanıcısı useradd ile eklenen bir kullanıcıdır.
[root@hostname ~]# vi /etc/postfix/main.cf
Aşağıdaki şekilde değiştirin.
#local_recipient_maps = unix:passwd.byname $alias_maps
#local_recipient_maps = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =
local_recipient_maps = unix:passwd.byname $alias_maps
#local_recipient_maps = proxy:unix:passwd.byname $alias_maps
#local_recipient_maps =
main.cf dosyasının sonuna aşağıdakileri ekleyin.
### MAIL SIZE (20 Mbyte.)
message_size_limit = 20971520
### TLS
smtpd_use_tls = yes
smtpd_tls_cert_file = /etc/pki/tls/certs/localhost.crt
smtpd_tls_key_file = /etc/pki/tls/private/localhost.key
'smtpd_tls_cert_file' ve 'smtpd_tls_key_file' ortama göre ayarlanmalıdır. Sunucu sertifikasının depolandığı yolu ayarlayın.
SSL ayarları önceden gereklidir, bu nedenle SSL ayarlarını yapmadıysanız, lütfen önce SSL ayarlarını yapın. Lütfen aşağıdakilere bakınız.
CentOS üzerinde Apache kurulumundan başlatmaya kadar gereken ilk yapılandırma.
2-3. Postfix gönderim bağlantı noktası ayarları
Gönderim bağlantı noktasını kullanarak e-posta göndermek için ayarları yapılandırın.
[root@hostname ~]# vi /etc/postfix/master.cf
※Düzenlenecek dosyanın 'main.cf' değil 'master.cf' olduğuna dikkat edin, bu nedenle dosya adları benzerdir.
Aşağıdaki şekilde değiştirin.
#submission inet n - n - - smtpd
~KISALTMA~
#-o smtpd_sasl_auth_enable=yes
~KISALTMA~
#-o smtpd_client_restrictions=$mua_helo_restrictions
~KISALTMA~
#-o smtpd_sender_restrictions=$mua_sender_restrictions
~KISALTMA~
#-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
submission inet n - n - - smtpd
~KISALTMA~
-o smtpd_sasl_auth_enable=yes
~KISALTMA~
-o smtpd_client_restrictions=permit_sasl_authenticated
~KISALTMA~
-o smtpd_sender_restriction=permit_sasl_authenticated
~KISALTMA~
-o smtpd_recipient_restrictions=permit_sasl_authenticated
SASL kimlik doğrulaması için gerekli kütüphaneleri yum ile yükleyin.
[root@hostname ~]# yum -y install cyrus-sasl
[root@hostname ~]# yum -y install cyrus-sasl-plain
[root@hostname ~]# yum -y install cyrus-sasl-md5
[root@hostname ~]# yum -y install cyrus-sasl-devel
Kimlik doğrulama için UNIX hesaplarını kullanmak üzere saslauthd'yi düzenleyin.
[root@hostname ~]# vi /etc/sysconfig/saslauthd
Aşağıdaki şekilde değiştirin.
#MECH=pam
MECH=shadow
2-4. SASL'yi Etkinleştirme
SASL'yi etkinleştirin.
[root@hostname ~]# systemctl enable saslauthd
[root@hostname ~]# systemctl is-enabled saslauthd
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep saslauthd
saslauthd.service enabled
[root@hostname ~]# systemctl daemon-reload
2-5. bootstrap kontrolü
Postfix'in başladığını kontrol edin.
[root@hostname ~]# /usr/sbin/postfix start
[root@hostname ~]# ps aux | grep postfix
root 1838 0.0 0.1 89744 2080 ? Ss 18:14 0:00 /usr/libexec/postfix/master -w
postfix 1839 0.0 0.3 89848 3988 ? S 18:14 0:00 pickup -l -t unix -u
postfix 1840 0.0 0.3 89916 4008 ? S 18:14 0:00 qmgr -l -t unix -u
root 1845 0.0 0.0 112824 968 pts/0 S+ 18:15 0:00 grep --color=auto postfix
Yukarıda açıklandığı gibi postfix kullanıcısı olarak çalışan bir süreç varsa, yapılandırma başarıyla tamamlanmıştır ve çalışmaktadır. Başlangıç onaylandıktan sonra durma zamanı gelmiştir.
[root@hostname ~]# /usr/sbin/postfix stop
2-6. Otomatik başlatma ayarı
Son olarak, zorunlu olmamakla birlikte, sunucu her yeniden başlatıldığında Postfix'i başlatmak zordur, bu nedenle sunucu başlatıldığında Postfix'in otomatik olarak başlaması için bir ayar yapın. Ayrıca systemctl komutuna da kaydolur. Lütfen bu prosedürün CentOS7 için olduğunu unutmayın, bu nedenle CentOS7'den başka bir şey kullanıyorsanız, bununla başa çıkmak için Service komutunu kullanmanız gerekecektir.
'/usr/lib/systemd/system/postfix.service' dosyasının var olup olmadığını kontrol edin. Eğer yoksa, aşağıdaki prosedürü kullanarak bir 'postfix.service' oluşturun. Kök kullanıcı olarak çalıştırın.
[root@hostname ~]# touch /etc/systemd/system/postfix.service
[root@hostname ~]# vi /etc/systemd/system/postfix.service
Aşağıdaki bilgiler verilmiştir.
[Unit]
#Açıklama.
Description=Postfix
#Yürütme öncesi ve sonrası kontrol.
#Before=xxx.service
After=syslog.target network.target
[Service]
#Kullanıcı ve grup tanımlama
User=root
Group=root
#Etkinleştirildikten sonra durumu Etkinleştirildi olarak ayarlayın.
Type=oneshot
RemainAfterExit=yes
#Başlat, durdur ve yeniden yükle.
ExecStart=/usr/sbin/postfix start
ExecStop=/usr/sbin/postfix stop
ExecReload=/usr/sbin/postfix reload
[Install]
#Çalışma seviyesi 3 eşdeğer ayarları.
WantedBy=multi-user.target
Ardından, systemctl komutu ile kayıt olun.
[root@hostname ~]# systemctl enable postfix
[root@hostname ~]# systemctl is-enabled postfix
enabled
[root@hostname ~]# systemctl list-unit-files --type=service | grep postfix
postfix.service enabled
[root@hostname ~]# systemctl daemon-reload
3. özet
Postfix kurulduğunda gereken ilk yapılandırmayı açıkladık.
Kurulumu oldukça zordu, bu nedenle Postfix'i kuruyorsanız lütfen buna bakın.
Sonuna kadar izlediğiniz için teşekkür ederiz.
■INFORMATION
BİLGİ üst sayfasına gitmek için lütfen buraya tıklayınız.
■PROFILE
Profil için lütfen buraya tıklayınız.
■İletişim bilgileri.
Makaleyle ilgili sorularınız için lütfen bizimle buradan iletişime geçin.