Postfix - TLS - порт 587 - подключается только с локального хоста

Почему я не могу подключиться к Postfix через порт 587 на AMI?

Это AMI, брандмауэр AMI имеет 587 открытых, iptables пуст, потому что я использую Amazon брандмауэр.

На самом сервере отлично работает следующее:

openssl s_client -starttls smtp -crlf -connect ami.example.com:587

postconf -n

alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 9
debug_peer_list = ami.example.com mail.example.com
home_mailbox = Maildir/
html_directory = no
inet_interfaces = localhost
inet_protocols = all
mailbox_command = 
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtp_tls_note_starttls_offer = yes
smtp_use_tls = yes
smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem
smtpd_tls_auth_only = no
smtpd_tls_cert_file = /etc/ssl/certs/mail.example.com.crt
smtpd_tls_key_file = /etc/ssl/private/mail.example.com.key
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550

master.cf

submission inet n - n - - smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_path=private/auth
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_sasl_local_domain=$myhostname
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o smtpd_sender_restrictions=reject_sender_login_mismatch
  -o smtpd_recipient_restrictions=reject_non_fqdn_recipient,reject_unknown_recipient_domain,permit_sasl_authenticated,reject

nmap результаты

Nmap scan report for ami.example.com 
Host is up (0.024s latency).

Not shown: 995 filtered ports
PORT    STATE  SERVICE
22/tcp  open   ssh
80/tcp  open   http
143/tcp open   imap
587/tcp closed submission
993/tcp open   imaps

netstat результаты

netstat --proto=inet -pnl | grep 587
tcp        0      0 127.0.0.1:587  0.0.0.0:*    LISTEN    29829/master 

Результаты при использовании с удаленной машины:

openssl s_client -starttls smtp -crlf -connect ami.example. mysqldump: [Предупреждение] Использование пароля на ...

Когда я пытаюсь запустить mysqldump на сервере Percona 5.7.17-12, я получаю следующую ошибку:

# mysqldump -u backups -pxxxx -h 127.0.0.1 --single-transaction --quick dbname
mysqldump: [Warning] Using a password on the command line interface can be insecure.
-- MySQL dump 10.13  Distrib 5.7.17-12, for debian-linux-gnu (x86_64)
--
-- Host: 127.0.0.1    Database: dbname
-- ------------------------------------------------------
-- Server version       5.7.17-12

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
/*!50112 SELECT COUNT(*) INTO @is_rocksdb_supported FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='rocksdb_bulk_load' */;
/*!50112 SET @save_old_rocksdb_bulk_load = IF (@is_rocksdb_supported, 'SET @old_rocksdb_bulk_load = @@rocksdb_bulk_load', 'SET @dummy_old_rocksdb_bulk_load = 0') */;
/*!50112 PREPARE s FROM @save_old_rocksdb_bulk_load */;
/*!50112 EXECUTE s */;
/*!50112 SET @enable_bulk_load = IF (@is_rocksdb_supported, 'SET SESSION rocksdb_bulk_load = 1', 'SET @dummy_rocksdb_bulk_load = 0') */;
/*!50112 PREPARE s FROM @enable_bulk_load */;
/*!50112 EXECUTE s */;
/*!50112 DEALLOCATE PREPARE s */;
mysqldump: Couldn't execute 'SELECT COUNT(*) FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE 'rocksdb\_skip\_fill\_cache'': The 'INFORMATION_SCHEMA.SESSION_VARIABLES' feature is disabled; see the documentation for 'show_compatibility_56' (3167)

Почему mysqldump пытается использовать эту устаревшую переменную? Есть ли способ исправить это, кроме включения show_compatibility_56 (я бы предпочел не делать этого и не перезагружать сервер)

6
задан 26 March 2017 в 02:33
1 ответ

Это ошибка сервера Percona 5.7:

Она была введена в рамках нашей работы по портированию Facebook MySQL. Движок MyRocks к серверу Percona 5.7. Использование I_S поверх P_S не было пойманный во время слияния этой функции с 5.6 на 5.7

Непосредственным обходным путем является изменение show_compatibility_56 обратно на значение по умолчанию ON, которое выставит необходимые таблицы в пределах I_S. См. . https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_show_compatibility_56 для подробностей.

С другой стороны, бинарный файл mysqldump из предыдущей версии установки может быть используемый вместо упакованного с недавним выпуском.

Я ожидаю, что это будет исправлено со следующим выпуском Percona Server. 5.7

https://bugs.launchpad.net/percona-server/+bug/1676401


FIXED: Исправлена ошибка с выходом Percona Server 5.7.17-13.

.
5
ответ дан 3 December 2019 в 00:31

Теги

Похожие вопросы