как отправить тестовое письмо с помощью sendmail

как отправить тестовое письмо с помощью sendmail

Я настроил полное доменное имя в /etc/hosts:

127.0.0.1 hostname.domain hostname
127.0.0.1 localhost
  • Однако если я запущу hostnameего, он вернет полное доменное имя? Что-то здесь не так?

Затем побежал:sendmailconfig

Я использовал это для проверки: Но я не могу успешно отправить... Оно зависает вот так:echo "Subject: hello" | sendmail -v [email protected] < mail.txt

root@debianxx:~# echo "Subject: hello" | sendmail -v [email protected] < email.txt 
[email protected]... Connecting to [127.0.0.1] via relay...
220 debianxx.online ESMTP Sendmail 8.15.2/8.15.2/Debian-22; Sat, 19 Nov 2022 07:53:11 GMT; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1]
>>> EHLO debianxx.online
250-debianxx.online Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
>>> VERB
250 2.0.0 Verbose mode
>>> MAIL From:<[email protected]> SIZE=47 [email protected]
250 2.1.0 <[email protected]>... Sender ok
>>> RCPT To:<[email protected]>
>>> DATA
250 2.1.5 <[email protected]>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .

он зависает на приглашении «.», независимо от того, что я печатаю.

  • ps: Я уже проверил открытый порт с помощью nc -l 25.

Редактировать журнал sendmail:

Nov 19 12:21:14 simplysocial sendmail[7718]: alias database /etc/mail/aliases rebuilt by root
Nov 19 12:21:14 simplysocial sendmail[7718]: /etc/mail/aliases: 0 aliases, longest 0 bytes, 0 bytes total
Nov 19 12:21:14 simplysocial sm-mta[7784]: starting daemon (8.15.2): SMTP+queueing@00:10:00
Nov 19 12:21:29 simplysocial sendmail[8460]: alias database /etc/mail/aliases rebuilt by root
Nov 19 12:21:29 simplysocial sendmail[8460]: /etc/mail/aliases: 0 aliases, longest 0 bytes, 0 bytes total
Nov 19 12:21:31 simplysocial sm-mta[7784]: restarting /usr/sbin/sendmail-mta due to signal
Nov 19 12:21:31 simplysocial sm-mta[8510]: starting daemon (8.15.2): SMTP+queueing@00:10:00
Nov 19 12:21:52 simplysocial sendmail[8544]: 2AJCLq0k008544: from=root, size=47, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Nov 19 12:21:52 simplysocial sm-mta[8545]: 2AJCLqu9008545: from=<[email protected]>, size=335, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Nov 19 12:21:52 simplysocial sendmail[8544]: 2AJCLq0k008544: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30047, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (2AJCLqu9008545 Message accepted for delivery)

решение1

Я настроил FQDN, /etc/hostsно когда я запускаю hostname, он возвращает FQDN? Что-то здесь не так?

Нет.

  1. Понятие, которое ваша система имеет для своего имени хоста, не зависит от того, что установлено или не установлено в /etc/hosts.
    Имя хоста вашей системы — это настраиваемое ядро ​​(см., например, sysctl kernel.hostname или cat /proc/sys/kernel/hostname), которое обычно устанавливается во время загрузки специфическим для дистрибутива способом (на хостах на основе systemd вы обычно настраиваете имя хоста системы с помощьюhostnamectl) и имя хоста можно изменить во время выполнения с помощью hostname some.nameкоманды или подобных команд, таких как sysctl kernel.hostname=some.nameили hostnamectl set-hostname some.name и т. д.
    В зависимости от метода это изменение будет постоянным или имя хоста вернется к исходному значению при следующей перезагрузке.

  2. Хотя существуют соглашения, в настоящее время, как правило, нет фактического (технического) требования, чтобы имя хоста some.nameбыло либо короткой одиночной меткой hostname, либо FQDN hostname.example.com.. Оба варианта разрешены: см. напримерУстановка имени хоста: полное доменное имя или короткое имя?

  3. Если в качестве имени хоста задано полное доменное имя, то и hostnameкоманда, и hostname --fqdnкоманда вернут полное доменное имя.


Следует отметить, чтоsendmail команда не предназначена как рутина пользовательского интерфейса и есть гораздо лучшие утилиты для отправки почты из командной строки. Классическая mailкоманда и mailxнапример.

Регистрирует ли sendmail сообщение об ошибке в системных журналах?

Вывод Connecting to [127.0.0.1] via relay.предполагает, что вы настроили sendmail с ретранслятором, «умным хостом» на жаргоне sendmail.

Можно ли добраться до этого реле?

Связанный контент