User Tools

Site Tools


отправь_мне_в_почту

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
отправь_мне_в_почту [2025/12/30 09:16]
val
отправь_мне_в_почту [2025/12/30 11:20] (current)
val
Line 3: Line 3:
 Всем привет! Всем привет!
  
-Есть множество способов скопировать файлили его фрагмент, с линукс сервера:​ "​копипаста",​ scp/winscp, "​комбайны"​ типа MobaXterm, php -S ..., python3 ​-m http.server ... . Для меня, неожиданно,​ оказался удобным вариант отправки такого файла себе на почту в виде вложения,​ для дальнейшей пересылки коллегам (архивы журналов,​ примеры конфигураций ...) Для технической реализации потребуется корпоративный почтовый сервер,​ упомянутый здесь https://​habr.com/​ru/​posts/​961564/​ и bash (даже, точнее,​ sh :). Да, никакого специального ПО, предназначенного для работы с электронной почтой,​ ставить на каждый ​линукс ​сервер не придется.+Есть множество способов скопировать файл или его фрагмент с linux сервера:​ "​копипаста",​ scp/winscp, "​комбайны"​ типа MobaXterm, php -S ..., python ​-m http.server ... . Для меня, неожиданно,​ оказался удобным вариант отправки такого файла, если он не слишком большой, ​себе на почтув виде вложения, ​особенно ​для дальнейшей пересылки коллегам (архивы журналов,​ примеры конфигураций ...)Для технической реализации потребуется корпоративный почтовый сервер,​ упомянутый здесь https://​habr.com/​ru/​posts/​961564/​ и bash (даже, точнее,​ sh :) с утилитами,​ которые всегда есть "из коробки"​. Да, никакого специального ПО, предназначенного для работы с электронной почтой,​ ставить на каждый ​linux сервер не придется.
    
-За основу были взяты примеры отсюдаhttps://​serverfault.com/​questions/​38919/​send-an-email-with-an-attached-file-using-telnet-or-netcat+За основу были взяты примеры отсюда https://​serverfault.com/​questions/​38919/​send-an-email-with-an-attached-file-using-telnet-or-netcat
  
-Конечный результат выглядит так:+Результат выглядит так:
 <​code>​ <​code>​
 $ nano ~/mail.sh $ nano ~/mail.sh
Line 20: Line 20:
  
 { {
-    sleep 2; +    sleep 2 
-    echo "EHLO $MAILSERVER";​ sleep 1; +    echo "EHLO $MAILSERVER";​ sleep 1 
-    echo "MAIL FROM: <​$EMAIL>";​ sleep 1; +    echo "MAIL FROM: <​$EMAIL>";​ sleep 1 
-    echo "RCPT TO: <​$EMAIL>";​ sleep 1; +    echo "RCPT TO: <​$EMAIL>";​ sleep 1 
-    echo "​DATA";​ sleep 1;+    echo "​DATA";​ sleep 1
     echo "To: $EMAIL"​     echo "To: $EMAIL"​
     echo "​Subject:​ $FILENAME"​     echo "​Subject:​ $FILENAME"​
     echo "​MIME-Version:​ 1.0 (mime-construct 1.9)"     echo "​MIME-Version:​ 1.0 (mime-construct 1.9)"
-    echo "​Content-Type:​ $(/​usr/​bin/​file -bi $FILENAME); name=\"​$FILENAME\""​ +    echo "​Content-Type:​ $(/​usr/​bin/​file -bi "$FILENAME"); name=\"​$FILENAME\""​ 
-    echo "​Content-Transfer-Encoding:​ base64"​;+    echo "​Content-Transfer-Encoding:​ base64"​
     echo     echo
-    ​cat $FILENAME | openssl base64; +    openssl base64 ​< "​$FILENAME"​ 
-    echo '​.'​; +    echo '​.'​ 
-    echo "​QUIT"​;+    echo "​QUIT"​
     echo     echo
 } | nc $MAILSERVER 25 } | nc $MAILSERVER 25
Line 40: Line 40:
  
 $ ~/mail.sh /​etc/​os-release $ ~/mail.sh /​etc/​os-release
-<​code>​+ 
 +$ sudo ~/mail.sh /​var/​log/​syslog.2.gz 
 +</code> 
 + 
 +Еще, скрипт наглядно демонстрирует работу протокола SMTP и пример форматирования электронного письма с вложением,​ о чем мои коллеги рассказывают на занятиях. https://​www.specialist.ru/​course/​yun2-b 
 + 
 +Буду рад, если кому то пригодится,​ с наступающим Новым Годом!
отправь_мне_в_почту.1767075367.txt.gz · Last modified: 2025/12/30 09:16 by val