Security

使用 Web 伺服器的日誌保護外發電子郵件

  • August 13, 2015

在 Web 伺服器上,我將執行 rkhunter、tripwire、OSSEC、fail2ban 和 psad。所有這些應用程序都需要能夠發送電子郵件以通知系統管理員。

因此,我有:

sudo apt-get install -y mailutils postifx

然後我配置 postfix 來擷取發送到 root@localhost 的郵件並將這些郵件發送到 my.business.email@example.com

sudo nano /etc/aliases 

我添加了這個別名(在 之後postmaster: root):

root:  my.business.email@example.com 

我已允許埠 25/tcp 上的傳出流量(因為我的預設 UFW 策略在 INPUT、OUPUT 和 FORWARD 上都是 DROP)

sudo ufw allow out 25/tcp

我現在可以只發送電子郵件,並且我將僅將 postifx/mail 用於上面列出的那些應用程序,而我將對 Web 應用程序本身使用PHPMailer(登錄通知、電子郵件驗證、密碼更改通知等) )。

在這一點上,我想知道:

  • 正如我在上面設置的那樣,postfix/mail 是一種在安全性方面發送日誌的安全方式嗎?假設攻擊者想要獲取我的日誌,那麼使用我目前的配置對他來說有多難?
  • 有誰知道一個很好的連結可以在哪裡學習可以幫助我解決這些問題的東西?

我的後綴 TLS 配置行:

smtp_enforce_tls=yes
smtp_use_tls=yes
smtp_tls_security_level=encrypt
smtp_tls_mandatory_ciphers = high
smtp_tls_loglevel = 1
smtp_tls_session_cache_timeout = 3600s
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
tls_random_source = dev:/dev/urandom
smtpd_tls_received_header = yes
smtpd_tls_loglevel = 1
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

您目前設置的安全性對於從您的伺服器到目標郵箱的郵件的攔截以及可能的洩露和修改,取決於您伺服器的 DNS 解析的安全性。如果攻擊者能夠偽造 DNS 回復到您的伺服器,她可以將您的郵件轉移到她自己的啟用 TLS 的 SMTP 伺服器。您的 Postfix 守護程序將記錄證書驗證失敗,但仍會發送郵件。為了防止這種攻擊,您需要使用較高的 smtp_tls_security_level 值之一(僅限 dane、指紋、驗證、安全)和/或使用 DNSSEC。

阻止郵件的安全性主要取決於 Internet 連接的可靠性和安全性,還取決於 DNS 解析,當然還有託管 my.business.email@example.com 郵箱的目標郵件伺服器。例如,如果目標伺服器的反垃圾郵件策略過於嚴格,則可能會通過錯誤地將您的伺服器報告為垃圾郵件源來阻止您的郵件。

最後但同樣重要的是,一旦郵件被傳遞到 my.business.email@example.com 郵箱,它們的安全性當然完全取決於該郵箱的安全性。例如,如果攻擊者獲得了該郵箱的訪問憑證(通過網路釣魚),她就可以讀取、刪除或替換其中的任何郵件。

引用自:https://serverfault.com/questions/713581