Из соображений безопасности я использую ufw, в нём я открыл порты 80, 443 и 22.
Когда активен ufw, письма перестали отправляться.
Письма отправляются через php, используется библиотека PhpMailer.
> sudo ufw status
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
To Action From
-- ------ ----
22 ALLOW IN Anywhere
80 ALLOW IN Anywhere
443 ALLOW IN Anywhere
25 ALLOW IN Anywhere
587 ALLOW IN Anywhere
465 ALLOW IN Anywhere
22 ALLOW IN Anywhere (v6)
80 ALLOW IN Anywhere (v6)
443 ALLOW IN Anywhere (v6)
25 ALLOW IN Anywhere (v6)
587 ALLOW IN Anywhere (v6)
465 ALLOW IN Anywhere (v6)
> sudo ufw app list
Available applications:
AIM
Bonjour
CIFS
DNS
Deluge
IMAP
IMAPS
IPP
KTorrent
Kerberos Admin
Kerberos Full
Kerberos KDC
Kerberos Password
LDAP
LDAPS
LPD
MSN
MSN SSL
Mail submission
NFS
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
POP3
POP3S
PeopleNearby
SMTP
SSH
Socks
Telnet
Transmission
Transparent Proxy
VNC
WWW
WWW Cache
WWW Full
WWW Secure
XMPP
Yahoo
qBittorent
svnserve
С того сервера пиггуется нормально:
> ping smtp.office365.com
PING DHR-efz.ms-acdc.office.com (52.97.139.178) 56(84) bytes of data.
64 bytes from 52.97.139.178: icmp_seq=1 ttl=243 time=12.7 ms
64 bytes from 52.97.139.178: icmp_seq=2 ttl=243 time=12.6 ms
64 bytes from 52.97.139.178: icmp_seq=3 ttl=243 time=12.7 ms
64 bytes from 52.97.139.178: icmp_seq=4 ttl=243 time=12.7 ms
64 bytes from 52.97.139.178: icmp_seq=5 ttl=243 time=13.1 ms
64 bytes from 52.97.139.178: icmp_seq=6 ttl=243 time=12.7 ms
telnet подвисает...
> telnet smtp.office365.com 587
Trying 2603:1026:208:28::2...
Trying 2603:1026:208:86::2...
Trying 2603:1026:c03:2854::2...
Что нужно сделать с ufw, чтобы письма отправлялись? Порт какой-то открыть, но какой? Или что-то лишнее заблокировано? Что не так, понять не могу.
Попробуй открыть для протокола SMTP - 25 порт. sudo ufw allow 25 Если не поможет то открой SSL SMTP 465,587 порты.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть таблица с полем options в формате JsonНужно создать такой класс, который будет наследоваться от ActiveRecord и позволит управлять json объектами...
Ну например такая проверка: Если в тексте найдётся ссылка с началом http:// или https:// то ничего не произойдёт Или если в тексте найдётся ссылка...