Я сделал следующее в Ubuntu 12.04:
echo "some body" | mailx -s "some subject" recipient@example.de -- -f sender@example.de
он сгенерировал следующее сообщение:
To: recipient@example.de
Subject: some subject
From: sender@example.de
Затем я обновил Ubuntu 14.04, и теперь я получаю
To: -f@example.de, sender@example.de, recipient@example.de
Subject: some subject
From: $ACCOUNTNAME@example.de
Итак, -f больше не работает, и я получаю сообщение об ошибке.
Почему это и как я могу его исправить?
Я использую nullmailer.
Я использую bsd-mailx.
$ ls -l $(which mailx)
lrwxrwxrwx 1 root root 23 Okt 23 23:12 /usr/bin/mailx -> /etc/alternatives/mailx
$ ls -l /etc/alternatives/mailx
lrwxrwxrwx 1 root root 18 Okt 23 23:12 /etc/alternatives/mailx -> /usr/bin/bsd-mailx
Похоже, что исправление безопасности в начале января изменило поведение для --.
Из журнала изменений на https://launchpad.net/ubuntu/+source/bsd-mailx/8.1. 2-0.20111106cvs-1ubuntu0.1
bsd-mailx (8.1.2-0.20111106cvs-1ubuntu0.1) точная защита; срочность = средняя ОБНОВЛЕНИЕ БЕЗОПАСНОСТИ: вставка оболочки оболочки Применять заплатки OpenBSD от Todd Miller (взято из обновления Debian): 80-remove_T.patch (удалить недокументированную / устаревшую -T-опцию) 81-minus_f.patch (настроить -f-обработку) 82-expandaddr .patch (исправить CVE-2014-7844) 83-nosendmail.patch (make-work для подавления синтаксического анализа) CVE-2014-7844 - Marc Deslauriers Mon, 05 Jan 2015 11:40:44 -0500Ваш метод обхода правилен, параметр -a лучше всего подходит для установки заголовка From.
У меня все еще есть проблема, когда опция -f задает заголовок Return-Path, который у меня не был любая удача делает с -a. Я получил это от https://launchpad.net/ubuntu/+source/bsd-mailx/8.1.2-0.20111106cvs-1ubuntu0.1