云服务器安全配置(二)

当你喜欢我的时候,我不喜欢你, 当你爱上我的时候,我喜欢上你, 当你离开我的时候,我却爱上你, 是你走得太快,还是我跟不上你的脚步, 我们错过了诺亚方舟,错过了泰坦尼克号, 错过了一切的惊险与不惊险,我们还要继续错过。 我不了解我的寂寞来自何方,但我真的感到寂寞。 你也寂寞,世界上每个人都寂寞,只是大家的寂寞都不同吧。

《我只能为你画一张小卡片》, 几米

# 云服务器安全配置(二)

# certbot的https证书自动更新问题

之前,突然收到一封邮件,提示我https证书快要过期了。但是我明明已经用crontab每天进行定时更新了,后来查看了用户对应的系统邮件信息:

vim /var/mail/username

原来更新程序根本没有跑起来。经过测试,发现手动输入

certbot renew

可以更新,但是放到crontab当中总是提示: Could not choose appropriate plugin: The nginx plugin is not working; there may be problems with your existing configuration. The error was: NoInstallationError(). 经过查阅网上资料,后来搜索到certbot的这个issue: https://github.com/certbot/certbot/issues/4937 对比发现我的nginx二进制程序是在/usr/sbin,而/usr/bin中没有。所以添加一个如下的软链接:

ln -s /usr/sbin/nginx /usr/bin/nginx

使用

certbot renew --dry-run

在crontab中测试,发现错误已经解决,可以正常运行。 问题的原因有待进一步探究:初步想法,certbot源码中nginx的二进制文件检索路径为/usr/bin。

# 解除被fail2ban限制的IP

sudo ipset list

sudo ipset del fail2ban-sshd 127.0.0.1 -exist

关于fail2ban限制特定IP访问的规则,可以查看相应的配置文件:/etc/fail2ban/action.d/firewallcmd-ipset.conf

# firewalld常用命令介绍

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

sudo firewall-cmd --reload

sudo firewall-cmd --zone=public --list-ports

sudo firewall-cmd --get-default-zone

sudo firewall-cmd --get-active-zones

sudo firewall-cmd --list-services

sudo firewall-cmd --list-all

sudo firewall-cmd --direct --get-all-rules

sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.2" reject type="icmp-admin-prohibited"' --permanent

sudo firewall-cmd --zone=public --remove-rich-rule='rule family="ipv4" source address="192.168.0.2" reject type="icmp-admin-prohibited"' --permanent

sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.0.2" drop' --permanent

sudo firewall-cmd --list-rich-rules

sudo firewall-cmd --reload

sudo firewall-cmd --query-rich-rule='rule family="ipv4" source address="192.168.0.2" drop'

参考资料: