невозможно просмотреть почту postfix из командной строки centos 7, почему?

невозможно просмотреть почту postfix из командной строки centos 7, почему?

Я postfixустановил на компьютер для разработки и использовалпараметры из этого другого постинганастроить postfixдля работы localhostтолько на. Но в другом сообщении не объясняется, как отправлять электронные письма или просматривать полученные электронные письма из командной строки. У меня есть код более высокого уровня для отправки/получения smtpэлектронной почты, но я хочу сначала иметь возможность делать это из командной строки, чтобы проверить работоспособность, postfixпрежде чем я начну тестировать код более высокого уровня. Я сделал несколько попыток и, кажется, отправляю электронные письма, но не могу найти отправленные электронные письма.Как я могу убедиться, что письма были отправлены, а также прочитать их из командной строки?

ПРАВКА №1:

Я набрал MAIL=/home/root/Maildirв терминале, затем нажал return, затем набрал mailи нажал return. Я сделал это в rootучетной записи и еще раз в usernameучетной записи. Это показало список старых писем в rootучетной записи, поэтому я вошел в usernameучетную запись и набрал следующее, чтобы отправить письмо с адреса usernameна адрес root:

sendmail root@localhost <<EOF
subject:This is a test
from:username@localhost
Body message here...
EOF

Предыдущий код привел к другому командному приглашению без ошибки. Но когда я снова вошел в систему rootи снова набрал, mailчтобы проверить почту, новый адрес электронной почты не был указан вместе со старыми адресами электронной почты.

Также, main.cfесть следующее:

queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
myorigin = localhost
inet_interfaces = localhost
inet_protocols = all
unknown_local_recipient_reject_code = 550
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
relayhost = 
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
home_mailbox = Maildir/
mailbox_command = 
debug_peer_level = 2
debugger_command =
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.10.1/samples
readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES

Что я делаю не так?

ПРАВКА №2:

После советов IanMcGowan я проверил, что mailxуже установлено. Затем я использовалэтот урокдля проверки отправки и получения писем с помощью mailxкоманд, но я также не могу прочитать вновь отправленные письма. Я думаю, что это проблема конфигурации. Я использую адреса электронной почты, такие как root@localhostи username@localhost.

telnet localhost 25результаты в:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost.localdomain ESMTP Postfix

nano /var/log/maillogсодержит:

Jan  5 12:09:40 localhost postfix/postfix-script[6162]: starting the Postfix mail system
Jan  5 12:09:40 localhost postfix/master[6164]: daemon started -- version 2.10.1, configuration /etc/postfix
Jan  5 12:46:00 localhost postfix/postfix-script[3036]: starting the Postfix mail system
Jan  5 12:46:00 localhost postfix/master[3047]: daemon started -- version 2.10.1, configuration /etc/postfix
Jan  5 13:12:02 localhost postfix/smtpd[4642]: connect from localhost.localdomain[127.0.0.1]
Jan  5 13:12:02 localhost postfix/smtpd[4642]: DB1249A618: client=localhost.localdomain[127.0.0.1]
Jan  5 13:12:02 localhost postfix/cleanup[4645]: DB1249A618: message-id=<1738078707.0.1420492322780.JavaMail.username@localhost.localdomain>
Jan  5 13:12:02 localhost postfix/qmgr[3058]: DB1249A618: from=<[email protected]>, size=632, nrcpt=1 (queue active)
Jan  5 13:12:02 localhost postfix/smtpd[4642]: disconnect from localhost.localdomain[127.0.0.1]
Jan  5 13:12:02 localhost postfix/local[4646]: DB1249A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.11, delays=0.06/0.02/0/0.03, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 13:12:02 localhost postfix/qmgr[3058]: DB1249A618: removed
Jan  5 14:29:20 localhost postfix/pickup[5207]: 7F4439A616: uid=1000 from=<username>
Jan  5 14:29:20 localhost postfix/cleanup[5266]: 7F4439A616: message-id=<[email protected]>
Jan  5 14:29:20 localhost postfix/qmgr[3058]: 7F4439A616: from=<[email protected]>, size=334, nrcpt=1 (queue active)
Jan  5 14:29:20 localhost postfix/local[5271]: 7F4439A616: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.13, delays=0.1/0.01/0/0.02, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 14:29:20 localhost postfix/qmgr[3058]: 7F4439A616: removed
Jan  5 14:57:10 localhost postfix/pickup[5207]: A21B49A618: uid=0 from=<root>
Jan  5 14:57:10 localhost postfix/cleanup[5529]: A21B49A618: message-id=<[email protected]>
Jan  5 14:57:10 localhost postfix/qmgr[3058]: A21B49A618: from=<[email protected]>, size=534, nrcpt=1 (queue active)
Jan  5 14:57:10 localhost postfix/local[5531]: A21B49A618: to=<[email protected]>, orig_to=<root>, relay=local, delay=0.38, delays=0.34/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 14:57:10 localhost postfix/qmgr[3058]: A21B49A618: removed
Jan  5 15:47:38 localhost postfix/pickup[5207]: F312D9A618: uid=0 from=<root>
Jan  5 15:47:39 localhost postfix/cleanup[5975]: F312D9A618: message-id=<[email protected]>
Jan  5 15:47:39 localhost postfix/qmgr[3058]: F312D9A618: from=<[email protected]>, size=458, nrcpt=1 (queue active)
Jan  5 15:47:39 localhost postfix/local[5977]: F312D9A618: to=<[email protected]>, orig_to=<username@localhost>, relay=local, delay=0.12, delays=0.09/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 15:47:39 localhost postfix/qmgr[3058]: F312D9A618: removed
Jan  5 15:48:20 localhost postfix/pickup[5207]: A826C9A618: uid=1000 from=<username>
Jan  5 15:48:20 localhost postfix/cleanup[5975]: A826C9A618: message-id=<[email protected]>
Jan  5 15:48:20 localhost postfix/qmgr[3058]: A826C9A618: from=<[email protected]>, size=461, nrcpt=1 (queue active)
Jan  5 15:48:20 localhost postfix/local[5977]: A826C9A618: to=<[email protected]>, orig_to=<username@localhost>, relay=local, delay=0.11, delays=0.08/0/0/0.03, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 15:48:20 localhost postfix/qmgr[3058]: A826C9A618: removed
Jan  5 15:48:29 localhost postfix/pickup[5207]: 54AA19A618: uid=1000 from=<username>
Jan  5 15:48:29 localhost postfix/cleanup[5975]: 54AA19A618: message-id=<[email protected]>
Jan  5 15:48:29 localhost postfix/qmgr[3058]: 54AA19A618: from=<[email protected]>, size=461, nrcpt=1 (queue active)
Jan  5 15:48:29 localhost postfix/local[5977]: 54AA19A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.11, delays=0.09/0/0/0.02, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 15:48:29 localhost postfix/qmgr[3058]: 54AA19A618: removed
Jan  5 15:52:03 localhost postfix/pickup[5207]: C756E9A618: uid=0 from=<root>
Jan  5 15:52:03 localhost postfix/cleanup[6074]: C756E9A618: message-id=<[email protected]>
Jan  5 15:52:03 localhost postfix/qmgr[3058]: C756E9A618: from=<[email protected]>, size=491, nrcpt=1 (queue active)
Jan  5 15:52:03 localhost postfix/local[6076]: C756E9A618: to=<[email protected]>, orig_to=<root@localhost>, relay=local, delay=0.13, delays=0.09/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to maildir)
Jan  5 15:52:03 localhost postfix/qmgr[3058]: C756E9A618: removed
Jan  5 16:02:36 localhost postfix/smtpd[6213]: connect from localhost.localdomain[127.0.0.1]
Jan  5 16:04:26 localhost postfix/smtpd[6213]: disconnect from localhost.localdomain[127.0.0.1]  

В логах написано delivered to maildir. Я использую неправильный синтаксис для доступа к maildirсодержимому? Если да, то какой правильный синтаксис? Или проблема в main.cfвышеизложенном?

ПРАВКА №3

Я набрал nano /var/spool/mail/rootи смог просмотреть старые письма, которые появляются, когда я вхожу в систему как root и набираю mailили mailx. Но новые письма там не находятся. Эти письма автоматизированы и, похоже, являются реликтами того времени, когда postfixбыла настроена /Maildirструктура.

решение1

Если у вас нет особой необходимости переместить почтовое хранилище, просто восстановите конфигурацию до значений по умолчанию.

Такая настройка сохраняет ваши электронные письма /var/spool/mail/<username>вместо ваших, homeчто означает, что любой установленный вами MUA будет знать, где их найти, без какой-либо перенастройки.

решение2

Если вы просто тестируете сантехнику, то использование mail/sendmail из командной строки будет работать нормально (как и telnet localhost 25). Если вы не получаете эту почту, проверьте /var/log на наличие ошибок и отправьте их для помощи в устранении.

Если вы действительно хотите отправлять и получать электронную почту из командной строки, то вам нужен почтовый пользовательский агент (MUA), а не почтовый агент передачи (MTA)[3]. Mutt[1] — это распространенный ответ, хотя есть и другие отличные клиенты командной строки на выбор[2].

[1]https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/3/html/Step_by_Step_Guide/s1-eclients-textmail.html

[2]http://en.wikipedia.org/wiki/Список_клиентов_электронной_почты#Текстовый

[3]http://en.wikipedia.org/wiki/Email_agent_%28infrastructure%29

решение3

Изменить MAIL=/home/root/MaildirнаMAIL=/root/Maildir

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