安装Ubuntu14.04服务器后的安全加固
参考来自DigitalOcean的文章:Initial Server Setup with Ubuntu 14.04,为了提高Ubuntu服务器的安全性,下面这几步应该在服务器建立后尽早设置。
1.创建新用户
如DigitalOcean最初提供的就是root
账号,众所周知,root
账号拥有最高权限,在日常管理中完全没必要使用root账户。
通过如下命令创建新用户:adduser demo #demo改为自己想要的用户名
然后输入两次新用户的密码,接下来会提示填写用户信息,这里可以一路回车。
2.给新创建的用户添加提权命令
如上新创建的demo
用户只有普通权限,如果以demo
登录服务器,需要root
权限的命令就不能执行,而只有退出demo
后以root
登录才能执行。
所以在root
下使用如下命令:gpasswd -a demo sudo #demo改为自己设置的用户名
这样demo
就能用sudo
命令给自己提权到root权限了。
3.配置SSH
- 修改默认端口号:
编辑SSH配置文件:
nano /etc/ssh/sshd_config
修改Port 22
如可以改为:Port 4444
一定要记住新的端口号!SSH登录一定需要正确的端口号!
- 禁止通过SSH登录root账号:
找到文件中这样一行:
PermitRootLogin yes
修改为:PermitRootLogin no
保存文件并退出。
4.重启SSH服务
输入如下命令:service ssh restart
5.配置防火墙
这里是配置Ubuntu自带的防火墙ufw
,ufw
相对很简单,这里只是用它来管理网络端口,即打开需要用到的网络端口,关闭不需要的。
- 设置SSH端口例外:
如果没更改SSH端口,即默认端口22的话,执行下面的命令:
sudo ufw allow ssh
如果更改过执行这个命令:sudo ufw allow 4444/tcp #将4444改为自己的SSH端口号
- 设置HTTP端口例外:
如果需要用到HTTP服务,执行下面的命令:
sudo ufw allow 80/tcp
- 设置SSL/TLS端口例外:
如果需要用到SSL/TLS服务,执行下面的命令:
sudo ufw allow 443/tcp
- 设置SMTP邮件服务端口例外:
如果需要用到SMTP邮件服务,执行下面的命令:
sudo ufw allow 25/tcp
上述设置完毕即可启用ufw:sudo ufw enable
ufw命令的示例用法:
ufw status # 查看ufw防火墙是否在工作,查看使用中的规则
ufw enable # 启动ufw防火墙
ufw default deny # 启动默认防御(阻止外部联接,放行对外联接)
ufw allow 53 # 允许其它主机访问本机53端口,协议包含tcp和udp
ufw allow 25/tcp # 允许其它主机使用tcp协议访问本机25端口
ufw allow smtp # UFW也可以检查 /etc/services文件,明白服务的名字及对应的端口和协议
# UFW同时支持出入口过滤。用户可以使用in或out来指定向内还是向外。如果未指定,默认是in
ufw allow in http # 许可访问本机http端口
ufw reject out smtp # 禁止访问外部smtp端口,不告知“被防火墙阻止”
ufw deny out to 192.168.1.1 # 禁止本机192.168.1.1对外访问,告知“被防火墙阻止”
ufw delete deny 80/tcp # 要删除规则,只要在命令中加入delete就行了
我没有