扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
第三,配置/etc/shadow使用MD5哈希函数而不用crypt函数作为加密算法。这可以使被加密的口令文件更难以破解。这可以通过修改PAM模块配置完成。PAM(Pluggable Authentication Modules)是一个共享库套件,可用于选择应用程序如何对用户进行认证等。要了解PAM更多知识,请访问:
ftp://ftp.us.kernel.org/pub/linux/libs/pam/Linux-PAM-html/pam.html.
在以前的旧版本中,必须手工修改PAM模块以使用MD5哈希函数。然而在Red Hat 6.0及更高版本中,可用setup工具选择MD5哈希。在命令行输入"setup"然后选择"authentication configuration",从那里就能够选择使用MD5哈希。然而,MD5哈希在用户再次输入其口令前并未真正生效。如果因为某些原因不使用setup工具,手工修改PAM模块也是可以的。
作为bash用户,我不大愿意使用.bash_history文件,因为不希望别人(包括root)知道我曾经运行了哪些命令。所以,在.bash_profile文件里,我添加了一行,这样命令就不会被记录到.bash_history文件:
HISTFILESIZE=0
最后一件事情是保护系统不被攻击者物理访问。一是要为BIOS设置口令,二是通过在/etc/lilo.conf文件中配置口令保护(password=xxx)系统的启动过程。然而记住,一旦系统被入侵者能够完全物理接触,则没有任何方法能保证系统的绝对安全了。
6、IPChains
讨论Linux安全性,不可能不讨论IPChains。IPChains是集成到2.2.x内核中的包过滤防火墙软件。只要运行了Red Hat 6.0或更高版本,IPChains已在Linux的安装包中。IPChains与Cisco Access Control Lists(访问控制列表)相似,它能够控制什么数据包能够进出Linux系统。作为一个防火墙软件,IPChains能够用于保护Linux系统。要保护一台独立服务器系统,可以配置IPChains仅允许出站的TCP连接。如果外部主机试图发起任何TCP连接,都会被禁止创建连接。由于IPChains不是基于状态过滤的,因此通常允许所有的UDP和ICMP连接。最后,应该记录下所有的被禁止连接,这样可以发现可能的攻击企图。然而,对于广播和多播数据包,应该将其丢弃,因为这些数据包可能会很快地填满系统日志。以下是一个IPChains配置例子(保护独立服务器系统):
bash# ipchains -L
Chain input (policy DENY):
target prot opt source destination ports
DENY all ------ 0.0.0.0 anywhere n/a
DENY all ------ anywhere 255.255.255.255 n/a
DENY all ------ anywhere BASE-ADDRESS.MCAST.NET/8 n/a
ACCEPT tcp !y---- anywhere anywhere any -> any
ACCEPT udp ----l- anywhere anywhere any -> any
ACCEPT icmp ----l- anywhere anywhere any -> any
DENY all ----l- anywhere anywhere n/a
Chain forward (policy ACCEPT):
Chain output (policy ACCEPT):
7、结论
我们在本文中讨论了如何安全配置一台Linux系统(Red Hat发行版本)的一些主要步骤。使一个系统安全的关键是最小化安装,使用TCP Wrappers、IPChains等软件、用shadow口令增加安全防护。此外还有一些附加步骤,例如tripwire(监视系统文件的改动)和swatch(日志监视和报警工具)。另外向Linux初学者推荐一个能够自动对新安装的Linux系统进行安全配置的PERL脚本:Bastille。记住,没有系统是真正100%安全的。然而,通过以上列出的操作步骤,可以较大幅度地减少安全风险。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者