通过使用PAM这种认证方式,可以使整个系统的认证有更大的灵活性,系统管理员可以根据需要来调整认证模块,根据不同的安全级别来配置系统环境。
四、安全shell
在通常的系统管理中,系统管理员常常通过telnet登录到系统,对系统进行配置管理。但这种方式下,系统的用户名和口令在整个网络中的传输是明文,很容易被窃取,SSH(secure shell)是一个客户-服务器应用,它通过加密,通过基于RSA机制的主机认证以及用户认证中的多种选项提供安全的通信。它提供rlogin,rsh和rcp的替代程序。它也提供加密的X窗口系统连接和加密的TCP会话连接。
下面的图说明整个ssh在认证连接过过程中的流程:
通过使用ssh有效地保证了用户数据在整个通信过程中的安全,保证了内容的私密性。
五、用ipchains过滤数据包
在通常的系统安装中,系统对外开放所有服务端口,我们利用ipchains可以把系统配置成一个基于主机的防火墙,通过适当配置可以有效的限制、保护系统以及控制局域网范围内的访问。
防火墙是阻止非授权用户进入、离开、穿过网络的系统。Linux的ipchains命令可以建立规则,为进入、离开、穿过系统的数据流提供可选的限制,从而提供比较安全的防火墙功能。
Linux ipchains实现包过滤防火墙功能,网络上的每一个包都根据规则过滤。使用ipchains的内核分析每一个包,查找指定的源、目标IP地址及端口,或指定的ICMP类型及代码。
整个ipchains的包过滤流程如下图所示:
ipchains在每一个数据包到来之前,都会根据规则检查每一个IP包的包头,进 行有效的过滤。同时它也对每一个从本机出去的包进行检查,保证每一个出去 和进来的包,符合规则。
除了把ipchains配置成基于主机的防火墙外,还可以把ipchains配置成一个基于网络的防火墙,用ipchains来保护一个网段。
六、系统日志
Linux使用日志来记录用户的动作和系统的一些错误信息。Linux下有两个重要的日志守护程序:syslog和klogd。
syslog是以守护进程运行,在启动时他从/etc/syslog.conf文件中读取不同的选项,根据不同的应用程序把相关信息记录到相应的日志文件中。
klogd是一个内核日志记录程序,它记录内核出现的任何错误和异常。
下图是日志信息流的过程。