Отправка HTML с помощью mailx с postfix 2.6.6 и CentOS 6.4 [дубликат]

Когда вы работаете как root, вы работаете в каталоге / etc / openvpn , и поэтому он находит там файл nordvpn.txt .

Когда вы запускаете его с sudo , вы запускаете его из другого каталога, и, как таковой, он не находит файл, так как файл конфигурации не ссылается на него с полным путем.

Я бы посоветовал изменить конфигурационный файл /etc/openvpn/ro2.nordvpn.com.udp1194.ovpn ;

, где вы найдете строку:

auth-user-pass nordvpn.txt

замените ее на:

auth-user-pass /etc/openvpn/nordvpn.txt

После этого вы сможете использовать ее из sudo

3
18.02.2016, 11:37
2 ответа

Поскольку кажется, что вы полностью контролируете сгенерированный текстовый файл, самым простым и, вероятно, наиболее переносимым способом было бы напрямую задействовать / usr / sbin / sendmail .

/usr/sbin/sendmail -t < complete-mail.txt

Для этого вам потребуется добавить все важные заголовки самостоятельно ( From , To , Subject и Content-Type ). Файл должен выглядеть так:

From: Company <noreply@company.example>
To: Customer <name@customer.example>
Subject: You are awesome
Content-Type: text/html

<html>…</html>

Postfix добавит недостающие, но обязательные заголовки, например Date .

​​
0
27.01.2020, 21:30

Вы даже читали руководство для mailx , особенно параметр -a ?

-a файл Прикрепите указанный файл к сообщению.

Из ответа Жиля , поскольку CentOS использует эту версию mailx :

С Heirloom mailx нет удобного способа. Одна из возможностей вставки произвольных заголовков - установить editheaders = 1 и использовать внешний редактор (который может быть скриптом).

 ## Подготовьте временный сценарий, который будет служить редактором. 
 ## Этот сценарий будет передан в ed. 
temp_script = $ (mktemp) 
cat << 'EOF' >> "$ temp_script" 
1a 
Content-Type: text / html 
. 
 $ r test.html 
w { {1}} q 
EOF 
 ## Вызвать mailx и указать ему, чтобы он запускал скрипт редактора 
EDITOR = "ed -s $ temp_script" heirloom-mailx -S editheaders = 1 -s "Subject" to @ address << EOF 
 ~ e 
. 
EOF 
rm -f "$ temp_script" 
 

Postfix, безусловно, может отправлять электронные письма в формате HTML.

1
27.01.2020, 21:30

Теги

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