龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 操作系统 > LINUX系统 >

为大家详细介绍25个Linux 服务器安全小技巧(2)

时间:2014-05-25 15:00来源:网络整理 作者:网络 点击:
分享到:
没必要在专用的LAMP 服务器 上运行X Window桌面比如KDE和GNOME。可以移掉或关闭它们,以提高系统安全性和性能。打开/etc/inittab然后将run level改成3就可以关闭

没必要在专用的LAMP服务器上运行X Window桌面比如KDE和GNOME。可以移掉或关闭它们,以提高系统安全性和性能。打开/etc/inittab然后将run level改成3就可以关闭这些桌面。如果你将它彻底的从系统中移走,可以用下面这个命令:

# yum groupremove "X Window System"

11. 关闭IPv6

如果不用IPv6协议,那就应该关闭掉它,因为大部分的应用和策略都不会用到IPv6,而且当前它不是服务器必需的。可以在网络配置文件中加入如下几行来关掉它。

# vi /etc/sysconfig/network

NETWORKING_IPV6=no

IPV6INIT=no

12. 限制用户使用旧密码

如果你不希望用户继续使用老密码,这一条很有用。老的密码文件位于/etc/security/opasswd。你可以使用 PAM 模块实现。

RHEL / CentOS / Fedora 中打开‘/etc/pam.d/system-auth’文件。

# vi /etc/pam.d/system-auth

Ubuntu/Debian/Linux Mint 中打开‘/etc/pam.d/common-password’文件。

# vi /etc/pam.d/common-password

在‘auth’块中添加下面一行。

auth sufficient pam_unix.so likeauth nullok

在‘password’块添加下面一行,禁止用户重新使用其过去最后用过的 5个密码。

password sufficient pam_unix.so nullok use_authtok md5 shadow remember=5

服务器只记录最后的 5 个密码。如果你试图使用曾用的最后 5个老密码中的任意一个,你将看到如下的错误提示。

Password has been already used. Choose another.

13. 如何检查用户密码过期?

在 Linux 中,用户的密码以加密的形式保存在‘/etc/shadow’文件中。要检查用户的密码是否过期,你需要使用‘chage’命令。它将显示密码的最后修改日期及密码期限的细节信息。这些细节就是系统决定用户是否必须修改其密码的依据。

要查看任一存在用户的老化信息,如 过期日 和 时长,使用如下命令。

#chage -l username

要修改任一用户的密码老化,使用如下命令。

#chage -M 60 username

#chage -M 60 -m 7 -W 7 userName

参数

-M 设置天数最大数字

-m 设定天数最小数字

-W 设定想要的天数

14. 手动锁定或解锁用户账号

锁定和解锁功能是非常有用的,你可以锁定一个账号一周或一个月,而不是将这个账号从系统中剔除。可以用下面这个命令锁定一个特定用户。

# passwd -l accountName

提示:这个被锁定的用户仅对root用户仍然可见。这个锁定是通过将加密过的密码替换成(!)来实现的。如果有个想用这个账号来进入系统,他会得到类似下面这个错误的提示。

# su - accountName

This account is currently not available.

解锁一个被锁定的账号时,用下面这个命令。这命令会将被替换成(!)的密码改回来。

# passwd -u accountName

15. 增强密码

有相当数量的用户使用很弱智的密码,他们的密码都可以通过字典攻击或者暴力攻击攻破。‘pam_cracklib’模块存于在PAM 中,它可以强制用户设置复杂的密码。通过编辑器打开下面的文件。

# vi /etc/pam.d/system-auth

在文件中增加一行,使用认证参数(lcredit, ucredit, dcredit 或者 ocredit 对应小写字母、大写字母,数字和其他字符)

/lib/security/$ISA/pam_cracklib.so retry=3 minlen=8 lcredit=-1 ucredit=-2 dcredit=-2 ocredit=-1

16. 启用Iptable(防火墙)

高度推荐启用linux防火墙来禁止非法程序访问。使用iptable的规则来过滤入站、出站和转发的包。我们可以针对来源和目的地址进行特定udp/tcp端口的准许和拒绝访问。

17. 禁止Ctrl+Alt+Delete重启

在大多数的linux发行版中,按下‘CTRL-ALT-DELETE’将会让你的系统重启。只说生产服务器上这是不是一个很好的做法,这可能导致误操作。

这个配置是在‘/etc/inittab’文件,如果你打开这个文件,你可以看到下面类似的段落。默认的行已经被注释掉了。我们必须注释掉他。这个特定按键会让系统重启。

# Trap CTRL-ALT-DELETE

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

18. 检查空密码帐号

任何空密码的账户意味这可以让Web上任何无授权的用户访问,这是linux服务器的一个安全威胁。所以,确定所有的用户拥有一个复杂的密码并且

不存在特权用户。空密码帐号是安全风险,可以被轻易的攻克。可以利用下面的命令来检查是否有空密码账户存在。

# cat /etc/shadow | awk -F: '($2==""){print $1}'

19. 登录前显示SSH提示

在ssh认证时候,使用一个法律和安全警示是很好的建议。

20. 监视用户行为

如果你有很多的用户,去收集每一个用户的行为和和他们的进程消耗的信息非常重要。可以随后和一些性能优化和安全问题处理时进行用户分析。

但是如果监视和搜集用户行为信息呢 ?

精彩图集

赞助商链接