ჩეკლისტი ფოსტის წარმატებული გაგზავნისა და მიწოდების შემოწმებისთვის
შემდგომი შემოწმებებისთვის საჭირო იქნება შემდეგი პროგრამული უზრუნველყოფა:
-
host უტილიტა
- Debian/Ubuntu:
apt-get install bind9-host - CentOS:
yum install bind9-host
- Debian/Ubuntu:
-
Telnet უტილიტა
- Debian/Ubuntu:
apt-get install telnet - CentOS:
yum install telnet
- Debian/Ubuntu:
MX ჩანაწერი
MX-ჩანაწერი არის DNS-ჩანაწერის ტიპი, რომელიც განკუთვნილია SMTP პროტოკოლის გამოყენებით ფოსტის სერვერების რეგისტრაციისთვის. ეს ჩანაწერი პასუხისმგებელია განსაზღვროს ის სერვერი, რომელსაც ელფოსტა უნდა მიეწოდოს გამგზავნის საფოსტო აგენტის მიერ. ერთ დომენზე შეიძლება არსებობდეს სხვადასხვა პრიორიტეტის მქონე რამდენიმე ჩანაწერის ტიპი.
შეგიძლიათ შეამოწმოთ, ფოსტა ლოკალურად მუშაობს თუ იყენებს მესამე მხარის საფოსტო სერვერს, host ბრძანების გამოყენებით:
host -t MX example.com
ლოკალურ საფოსტო სერვერთან მუშაობისას გამომავალი შედეგი ასე გამოჩნდება:
example.com-ის ფოსტას ამუშავებს 10 mail.example.com.
აღსანიშნავია, რომ mail.example.com ჩანაწერი შეიძლება სხვა სერვერზეც იყოს მიმართული. ამასთან, აუცილებელია აღინიშნოს, რომ mail.example.com უნდა იყოს არსებული A-ჩანაწერი, რომელიც მიუთითებს იმ სერვერზე, საიდანაც აგზავნით წერილებს.
შემოწმებისთვის ასევე შეგიძლიათ გაუშვათ ეს ბრძანებები:
host example.com
host mail.example.com
და შეადაროთ IP მისამართები, რომლებზეც მიმართულია ძირითადი დომენი, ამ შემთხვევაში example.com და mail.example.com.
MX ჩანაწერის დაყენება აუცილებელია, რათა საფოსტო სერვერებმა შეძლონ თქვენი ელფოსტის მიღება.
MX ჩანაწერის მაგალითი:
სახელი: example.com.
ტიპი: MX
მნიშვნელობა: mail.example.com.
პრიორიტეტი: 10
DKIM-ხელმოწერა
FASTPANEL®-ის დახმარებით DKIM ხელმოწერის მიღება შესაძლებელია management menu → "Mail" განყოფილებაში, საჭირო საფოსტო დომენის გასწვრივ "DKIM"-ზე დაჭერით

DNS-ის მხრიდან ჩანაწერი უნდა დაემატოს შემდეგნაირად:
სახელი: dkim._domainkey
ტიპი: TXT
მნიშვნელობა: v=DKIM1; k=rsa; p=public_key
აქ მოცემულია სწორი DKIM ჩანაწერის მაგალითი
dkim._domainkey TXT v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCpbBQ0T2xO3/SwziunIC/IFbsxBRub6WXiu8Kc2w7uB4GVw+SAB5wSEslDJbFXQRbdV9i/Duu8EQ9xik8dbqdLVyP4iAtw34g4j6QWKcfocgK4hEkwlPFff1dzUlNQONh2riNE5KVJXuWcizm8hub7nPnl36e7OnxiL0qIU7tT1QIDAQAB
დამატებითი ინფორმაცია DKIM-ის შესახებ შეგიძლიათ იხილოთ მისამართზე https://wikipedia.org/wiki/DomainKeys_Identified_Mail
SPF-ჩანაწერი
SPF ჩანაწერის არსებობის შემოწმება შესაძლებელია host ბრძანების შესრულებით. ამ შემთხვევაში, ბრძანება ასე გამოიყურება:
host -t TXT example.com
ასეთი შედეგით:
example.com აღწერითი ტექსტი "v=spf1 ip4:ipv4_of_your_server ip6:ipv6_of_your_server a mx ~all"
გაითვალისწინეთ, რომ ipv6 შეიძლება ამ ჩანაწერში არ იყოს წარმოდგენილი. ამ შემთხვევაში SPF ხელმოწერა ასე გამოიყურება:
example.com აღწერითი ტექსტი "v=spf1 ip4:ipv4_of_your_server a mx ~all"
აუცილებელია აღინიშნოს, რომ უნდა არსებობდეს მხოლოდ ერთი SFP ჩანაწერი
DNS-ის მხრიდან ჩანაწერი უნდა დაემატოს შემდეგნაირად:
სახელი: example.com.
Type: TXT
Value:
v=spf1 ip4:ipv4_of_your_server ip6:ipv6_of_your_server a mx ~all
ან (თუ ipv6 არ გამოიყენება)
v=spf1 ip4:ipv4_of_your_server a mx ~all
მაგალითად:
example.com TXT v=spf1 ip4:1.2.3.4 a mx ~all
დამატებითი ინფორმაცია SPF-ის შესახებ შეგიძლიათ იხილოთ მისამართზე https://wikipedia.org/wiki/Sender_Policy_Framework
DMARC-ჩანაწერი
უმეტეს შემთხვევაში DMARC ჩანაწერის მნიშვნელობა ერთნაირი იქნება.
DNS-ის მხრიდან ჩანაწერი უნდა დაემატოს შემდეგნაირად:
სახელი: _dmarc
ტიპი: TXT
მნიშვნელობა: v=DMARC1; p=none
მაგალითად:
_dmarc.example.com. TXT v=DMARC1; p=none
დამატებითი ინფორმაცია DMARC-ის შესახებ შეგიძლიათ იხილოთ მისამართზე https://wikipedia.org/wiki/DMARC
PTR ჩანაწერი და სერვერის ჰოსტის სახელი
PTR ჩანაწერი არის შებრუნებული DNS ჩანაწერი, რომელიც IP მისამართს სახელად გარდაქმნის. საფოსტო სერვერისთვის ამ ჩანაწერის მთავარი მიზანია სპამის დიდი ნაწილის აღმოფხვრა. ეს ჩანაწერი საშუალებას იძლევა განისაზღვროს იმ ჰოსტის სახელი, საიდანაც ელფოსტა მ ოდის. ყველაზე ხშირად PTR-ჩანაწერი შეიცავს სერვერზე გამოყენებულ დომენის სახელს.
PTR-ჩანაწერი ip-მისამართს ჰოსტის სახელთან აკავშირებს. თუ PTR-ჩანაწერი სწორად არ არის მითითებული, თქვენი წერილები უარყოფილი იქნება და ადრესატამდე ვერ მიაღწევს.
ჰოსტის სახელი უნდა მიეთითოს როგორც რეალური დომენის სახელი, რომელიც სერვერზე მიუთითებს, ხოლო PTR უნდა მიუთითებდეს დომენზე, რომელიც თავის მხრივ სერვერზე მიუთითებს.
მაგალითად, თქვენს სერვერზე გაქვთ დომენი example.com.
ბრძანების გაშვებით:
host example.com
შეგიძლიათ მიიღოთ ასეთი შედეგი:
example.com-ს აქვს მისამართი 1.2.3.4
example.com-ის ფოსტას ამუშავებს 10 mail.example.com.
შესაძლო პრობლე მების თავიდან ასაცილებლად, რეკომენდებულია ჰოსტის სახელისა და PTR ჩანაწერის დაყენება როგორც არსებული მეორე დონის ქვედომენი, მაგალითად mail.example.com
SMTP პორტების ხელმისაწვდომობა
ზოგიერთი ჰოსტინგის პროვაიდერი კეტავს იმ პორტების გამოყენების შესაძლებლობას, რომლებიც გამოიყენება ფოსტის გასაგზავნად ან მისაღებად. საფოსტო სერვისებისთვის პორტები შეიძლება იყოს 25, 587, 465, 143 და 993.
ამ პორტების ხელმისაწვდომობის შემოწმების ერთ-ერთი ყველაზე მარტივი გზა არის telnet ბრძანების გამოყენება.
მესამე მხარის სერვერიდან შემომავალი კავშირის შესამოწმებლად
გაუშვით ბრძანება:
telnet ip_adress port
მაგალითად, თუ ცდილობთ telnet-ით დაუკავშირდეთ 1.2.3.4 მისამართის 25-ე პორტს, შესასრულებელი ბრძანება იქნება:
telnet 1.2.3.4 25
თუ კავშირი წარმატებულია, დაინახავთ დაახლოებით ასეთ შედეგს:
ვცდილობ 1.2.3.4-თან დაკავშირებას...
დაკავშირებულია 1.2.3.4-თან.
გაქცევის სიმბოლოა '^]'.
თუ კავშირი ვერ შედგა, შედეგი ასეთი იქნება:
მიმდინარეობს 1.2.3.4-თან დაკავშირება ...
ჰოსტთან some_port პორტზე კავშირის გახსნა ვერ მოხერხდა: დაკავშირება ვერ მოხერხდა
ან:
telnet: დისტანციურ ჰოსტთან დაკავშირება შეუძლებელია: კავშირის მოლოდინის დრო ამოიწურა
გამავალი კავშირისთვის
თქვენი სერვერიდან გაუშვით ბრძანება:
telnet smtp.gmail.com 25
თუ კავშირი წარმატებულია, დაინახავთ დაახლოებით ასეთ შედეგს:
ვცდილობ 2a00:1450:4010:c0b::6c-თან დაკავშირებას...
დაკავშირებულია smtp.gmail.com-თან.
გაქცევის სიმბოლოა '^]'.
220 smtp.gmail.com ESMTP j6-20020ac25506000000b004b53eb60e3csm1066162lfk.256 - gsmtp
გთხოვთ გაითვალისწინოთ, რომ თუ იყენებთ cloud ჰოსტინგს და თქვენი SMTP სერვერისთვის იყენებთ 25-ე პორტს, დიდი ალბათობით თქვენი ჰოსტინგის პროვაიდერი ნაგულისხმევად ბლოკავს 25-ე პორტზე გამავალ კავშირებს. ქვემოთ შეგიძლიათ იხილოთ ბმულები ინსტრუქციებით, თუ როგორ მოაგვაროთ ეს პრობლემა:
- AWS: როგორ მოვხსნა 25-ე პორტზე შეზღუდვა ჩემი Amazon EC2 ინსტანსიდან ან AWS Lambda ფუნქციიდან?
- Azure: Azure-ში გამავალი SMTP კავშირის პრობლემების დიაგნოსტიკა
- GCP: ელფოსტის გაგზავნა ინსტანსიდან
- DigitalOcean: რატომ არის SMTP დაბლოკილი?
თქვენი ჰოსტინგის პროვაიდერის მიერ პორტების ბლოკირების გარდა, საჭიროა შეამოწმოთ, სერვერზე პორტები დახურულია თუ არა. მაგალითად ავიღოთ iptables, რომელიც FASTPANEL მართვის პანელის გამოყენებისას firewall-ის როლს ასრულებს. იმის შესამოწმებლად, არსებობს თუ არა წესი კონკრეტული პორტისთვის, ამ შემთხვევაში 25-ისთვის, გამოიყენება ბრძანება:
iptables-save | grep 25
თუ ი მ პორტისთვის, რომლის შემოწმებაც გსურთ, წესი არ არსებობს, ინფორმაცია არ გამოჩნდება. თუ ხედავთ, რომ არსებობს წესი, რომელიც ბლოკავს საფოსტო სერვისის პორტს, მაშინ ეს წესი უნდა წაშალოთ ბრძანებით:
iptables -D rule chain
მაგალითად, თქვენ გაუშვით ბრძანება და მიიღეთ შემდეგი:
iptables-save | grep 25
-A INPUT -p tcp -m tcp --dport 25 -j DROP
ეს წესი არ იძლევა თქვენს სერვერზე 25-ე პორტით რაიმე წვდომის შესაძლებლობას, რაც ხელს შეუშლის ფოსტის გაგზავნას
წესის წასაშლელად გამოიყენეთ ბრძანება:
iptables -D INPUT -p tcp -m tcp --dport 25 -j DROP
ამ ბრძანების მაგალითი საშუალებას გაძლევთ შეამოწმოთ ფოსტის გაგზავნისთვის გამოყენებული ყველა პორტი
IPv6-ის გავლენა ფოსტის გაგზავნაზე
თუ თქვენი საფოსტო სერვისებისთვის ipv6-ის გამოყენება გჭირდებათ, პირველი, რაც უნდა გააკეთოთ, არის შეამოწმოთ, არსებობს თუ არა PTR ჩანაწერი ipv6-ისთვის და უსმ ენენ თუ არა საფოსტო სერვისები ipv6-ს გარკვეულ პორტებზე.
შემოწმება შეგიძლიათ შეასრულოთ ბრძანების გამოყენებით:
netstat -nltpp | grep tcp6
ამ ბრძანების შედეგი იქნება ყველა იმ სერვისის სია, რომლებიც ipv6-ს იყენებენ, რომელთა შორისაც უკვე შეგიძლიათ შეამოწმოთ, იყენებს თუ არა თქვენი საფოსტო სერვისი ამ მისამართს. სამწუხაროდ, დღესდღეობით ipv6-ის გამოყენებამ შეიძლება სწორად არ იმუშაოს, მაშინაც კი, თუ ყველა პარამეტრი სწორად გაქვთ დაყენებული.
თუ საფოსტო სერვისის ლოგების შემოწმებით გაირკვა, რომ შეცდომა დაკავშირებულია ipv6-თან და მთელი კონფიგურაცია სწორია, შეგიძლიათ საფოსტო სერვისისთვის ipv6-ის გამოყენება გამორთოთ.
exim4-ის მაგალ ითზე ipv6-ის გამორთვა ასე გამოიყურება:
-
შეამოწმეთ, გამოიყენება თუ არა სერვისისთვის ipv6 მისამართი ბრძანებით
netstat -nltp | grep exim
-
კონფიგურაციის ფაილში
/etc/exim4/exim4.conf.templateფაილის ყველაზე ზედა ნაწილში უნდა დაემატოს შემდეგი ხაზი:disable_ipv6=true
-
შეინახეთ ცვლილებები ფაილში და შემდეგ გადატვირთეთ სერვისი მსგავსი ბრძანებით:
systemctl restart exim4 -
შეასრულეთ ბრძანება:
netstat -nltp | grep eximიმის შესამოწმებლად, რომ სერვისი სიაში აღარ არის
შეამოწმეთ ფოსტის გაგზავნა მესამე მხარის სერვისების გამოყენებით
მას შემდეგ, რაც ზემოთ ჩამოთვლილ ყველა პუნქტს შეამოწმებთ, შეგიძლიათ თქვენი სერვერიდან ფოსტის გაგზავნა მესამე მხარის რესურსების გამოყენებით შეამოწმოთ.
ერთ-ერთი ყველაზე მოსახერხებელი და ინფორმაციული სერვისია https://www.mail-tester.com
მისი გამოყენებით შეგიძლიათ შეამოწმოთ თქვენი ფოსტის მ იმდინარე რეიტინგი, მიიღოთ ინფორმაცია იმის შესახებ, სწორია თუ არა ზემოთ მოცემული პარამეტრები, ასევე მიიღოთ რეკომენდაცია რეიტინგის გასაუმჯობესებლად.
ამისათვის უბრალოდ გაგზავნეთ ელფოსტა საიტზე მითითებულ მისამართზე და შემდეგ დააწკაპუნეთ "Then check your score"-ზე.
