如果想让Ubuntu服务器的安全性能上升一个层次的话,请仔细阅读下面的5招。
Ubuntu 16.04的安装相对简单,安装之后,你将享受Linux带来的安全性。实际上为了提高数据的安全性,你还可以做的更多,下面的5招将给你带来不错的安全收益。
1.确保共享内存的安全
黑客攻击总会想查看共享内存,所以保证共享内存的安全的重要性不言而喻。可以修改 /etc/fstab文件来确保共享内存的安全。
首先,使用终端命令打开文件
sudo nano /etc/fstab
- 1.
然后,文件的底部加入如下代码
tmpfs /run/shm tmpfs defaults,noexec,nosuid 0 0
- 1.
保存,关闭文件。为了使改变生效,需要重启Ubuntu 16.04.
2.允许特定用户的ssh登录
假如说你只想用户名为olivia,IP地址为192.168.1.152的用户通过secure shell,做法是这样的:
1.打开终端命令窗口
2.使用命令打开ssh配置文件
sudo nano /etc/ssh/sshd_config
- 1.
3.在文件最下面,添加AllowUsers olivia@192.168.1.152
4.保存,关闭文件
5.使用命令重启sshd
sudo service ssh restart
- 1.
到这里,secure shell只会让IP地址为192.168.1.152的olivia获得访问Ubuntu服务器的权限。如果其他人尝试使用ssh访问服务器,他们会被要求输入密码,但是即使密码正确,访问Ubuntu服务器也会被拒绝。
假如,你想让你的网络下的所有用户都能通过ssh访问服务器的话,添加如下代码
AllowUsers *@192.168.1.*
重启ssh服务器,就生效了。
3.添加一个安全登录banner
添加一个安全登录bannner似乎对你的服务器安全没有什么作用,但是假如有人获得访问你服务器的权限后,看到了banner上的警告信息,可能会思考再三要不要继续下去。虽然这是一种心里作用,但是也不要小瞧了它。
创建一个新的banner步骤如下:
1.打开终端窗口
2.执行命令
sudo nano /etc/issue.net
- 1.
3.添加合适的警告信息
4.关闭,保存文件
接下来,我们要禁止motd显示banner。首先打开终端输入如下命令
sudo nano /etc/pam.d/sshd
- 1.
加入下面两行(每行前加#)
session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so noupdate
- 1.
- 2.
在文本编辑器里打开 /etc/ssh/sshd_config文件,加入
Banner /etc/issue.net
- 1.
关闭,保存文件
最后,使用命令重启ssh服务器
sudo service ssh restart
- 1.
这时,假如有人通过ssh登录你的服务器,他们就会看到你新加的banner,警告他们你在留意。
4.增强网络层
为避免你的Ubuntu服务器上源路由输入包,并且打印出所有畸形IP地址,可以使用命令
sudo nano /etc/sysctl.conf
- 1.
然后添加如下内容
# IP Spoofing protection
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# Ignore ICMP broadcast requests
net.ipv4.icmp_echo_ignore_broadcasts = 1
# Disable source packet routing
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0
# Ignore send redirects
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
# Block SYN attacks
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5
# Log Martians
net.ipv4.conf.all.log_martians = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
# Ignore ICMP redirects
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv6.conf.default.accept_redirects = 0
# Ignore Directed pings
net.ipv4.icmp_echo_ignore_all = 1
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
关闭,保存文件,使用如下命令重启。
sudo sysctl -p
- 1.
5.避免IP地址欺骗
接下来通过简单的操作就可以避免IP地址欺骗。使用如下终端命令:
sudo nano /etc/host.conf
- 1.
打开之后的文件是像这样的:
# The "order" line is only used by old versions of the C library.
order hosts,bind
multi on
- 1.
- 2.
- 3.
更改这个文件为:
# The "order" line is only used by old versions of the C library.
order bind,hosts
nospoof on
- 1.
- 2.
- 3.
保存,关闭文件,现在不会有IP地址欺骗了。
结束语:我们只是从较浅的角度增强你的Ubuntu 16.04,但是这5招能显著提高服务器的安全性。后续我们会继续关注这一话题,带来更安全的Ubuntu平台安全攻略。