设置Logwatch,SSMTP和Iptables或者Arch Linux(Raspberry Pi)
这篇文章是在Raspberry Pi上调整默认Arch Linux安装的后续操作。
日志监视和系统日志
由于logwatch尚未移植到systemd(在我撰写本文时),唯一的选择似乎是让systemd将日志转发到syslog-ng。
让我们从安装syslog-ng开始:
# pacman -S syslog-ng
我们必须启用该服务并重新启动系统:
# systemctl enable syslog-ng # reboot
安装和配置SSMTP
我们将使用SSMTP从Pi发送电子邮件通知。
安装:
# pacman -S ssmtp
打开配置文件:
# vim /etc/ssmtp/ssmtp.conf
适当更改以下设置(确保详细信息正确):
Hyman@theitroad mailhub=mail.example.com:465 AuthUser=[USERNAME] AuthPass=[] UseTLS=YES #UseSTARTTLS=YES AuthMethod=LOGIN RewriteDomain=arch Hostname=arch FromLineOverride=yes #enables to use mail -r option
SSMTP配置文件包含我们的电子邮件登录详细信息,因此,最好的做法是限制普通用户访问:
# chmod 0600 /etc/ssmtp/ssmtp.conf
我们现在应该可以发送测试电子邮件:
# echo test | mail -v -s "testing ssmtp setup" Hyman@theitroad
安装和配置Logwatch
安装logwatch:
# pacman -S logwatch
配置文件“ /usr/share/logwatch/default.conf/logwatch.conf”包含所有默认设置以及它们的功能注释。
建议>保留默认配置不变,而是在文件'/etc/logwatch/conf/logwatch.conf'中重新定义要更改的设置变量。
默认设置通常可以,但是我们想更改一些变量:
# cat > /etc/logwatch/conf/logwatch.conf << EOL Detail = 5 Output = mail MailTo = Hyman@theitroad MailFrom = Hyman@theitroad Service = "-kernel" EOL
一切都在这里完成,logwatch准备随时关注我们的日志。
iptables
如果Pi驻留在受信任的NAT之后,则不需要防火墙,但是,将一些基本iptables规则配置到位始终是一个好习惯。
打开文件:
# vim /etc/iptables/iptables.rules
添加以下规则:
*filter -A INPUT -i lo -j ACCEPT -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p tcp --dport 12 -j ACCEPT -A INPUT -p tcp --dport 80 -j ACCEPT -A INPUT -p tcp --dport 443 -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT -A INPUT -j REJECT -A FORWARD -j REJECT -A OUTPUT -j ACCEPT COMMIT
我们之前已将SSH服务器配置为侦听TCP端口12.
其他TCP端口80和443将在以后用于Mediawiki。
亲自注意:“我们在这里使用REJECT而不是DROP,因为RFC 1122 3.3.8要求主机尽可能返回ICMP错误,而不是丢弃数据包。
实际上,最好拒绝应该知道服务器存在的主机的数据包,甚至不应该知道服务器存在的主机或者那些看起来“不知所措”的主机的DROP数据包。
导入iptables规则:
# iptables-restore < /etc/iptables/iptables.rules
并且不要忘记启用并启动该服务:
# systemctl enable iptables.service # systemctl start iptables.service
重新加载iptables以获取我们所做的任何更改:
# systemctl reload iptables