linux 服务器 如何进行安全检查?

linux 服务器 如何进行安全检查?,第1张

众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节。linux被认为是一个比较安全的Internet服务器,作为一种开放源代码 *** 作系统,一旦linux系统中发现有安全漏洞,Internet上来自世界各地的志愿者会踊跃修补它。然而,系统管理员往往不能及时地得到信息并进行更正,这就给黑客以可乘之机。相对于这些系统本身的安全漏洞,更多的安全问题是由不当的配置造成的,可以通过适当的配置来防止。服务器上运行的服务越多,不当的配置出现的机会也就越多,出现安全问题的可能性就越大。对此,下面将介绍一些增强linux/Unix服务器系统安全性的知识。一、系统安全记录文件 *** 作系统内部的记录文件是检测是否有网络入侵的重要线索。如果您的系统是直接连到Internet,您发现有很多人对您的系统做Telnet/FTP登录尝试,可以运行"#more/var/log/secure greprefused"来检查系统所受到的攻击,以便采取相应的对策,如使用SSH来替换Telnet/rlogin等。二、启动和登录安全性1#echo》/etc/issue然后,进行如下 *** 作:#rm-f/etc/issue#rm-f/etc/issue三、限制网络访问1(ro,root_squash)/dir/to/exporthost2(ro,root_squash)/dir/to/export是您想输出的目录,host是登录这个目录的机器名,ro意味着mount成只读系统,root_squash禁止root写入该目录。为了使改动生效,运行如下命令。#/usr/sbin/exportfs-a2"表示允许IP地址192允许通过SSH连接。配置完成后,可以用tcpdchk检查:#tcpdchktcpchk是TCP_Wrapper配置检查工具,它检查您的tcpwrapper配置并报告所有发现的潜在/存在的问题。3.登录终端设置/etc/securetty文件指定了允许root登录的tty设备,由/bin/login程序读取,其格式是一个被允许的名字列表,您可以编辑/etc/securetty且注释掉如下的行。#tty1#tty2#tty3#tty4#tty5#tty6这时,root仅可在tty1终端登录。4.避免显示系统和版本信息。如果您希望远程登录用户看不到系统和版本信息,可以通过一下 *** 作改变/etc/inetd.conf文件:telnetstreamtcpnowaitroot/usr/sbin/tcpdin.telnetd-h加-h表示telnet不显示系统信息,而仅仅显示"login:"四、防止攻击1.阻止ping如果没人能ping通您的系统,安全性自然增加了。为此,可以在/etc/rc.d/rc.local文件中增加如下一行:

1、检查项目 : 设置密码失效时间

加固建议: 在 /etc/login.defs 中将 PASS_MAX_DAYS 参数设置为 60-180之间,如 PASS_MAX_DAYS 90。需同时执行命令设置root密码失效时间: $ chage --maxdays 90 root。

chage -l root  //查询用户的密码到期时间等信息

2、检查项目 : 设置密码修改最小间隔时间

加固建议: 在 /etc/login.defs 中将 PASS_MIN_DAYS 参数设置为5-14之间,建议为7:  PASS_MIN_DAYS 7 需同时执行命令为root用户设置:  $ chage --mindays 7 root

3、检查项目 : 禁止SSH空密码用户登录

加固建议: 在/etc/ssh/sshd_config中取消PermitEmptyPasswords no注释符号#

4、检查项目 : 确保SSH MaxAuthTries设置为3到6之间

加固建议: 在vi /etc/ssh/sshd_config中

取消MaxAuthTries注释符号#,设置最大密码尝试失败次数3-6,建议为5:MaxAuthTries 5

5、检查项目 : SSHD强制使用V2安全协议

加固建议: 编辑vi /etc/ssh/sshd_config

文件以按如下方式设置参数:Protocol 2

6、检查项目 : 设置SSH空闲超时退出时间

加固建议: 编辑vi /etc/ssh/sshd_config

将ClientAliveInterval 设置为300到900,即5-15分钟,

将ClientAliveCountMax设置为0。

ClientAliveInterval 900   ClientAliveCountMax 0

7、检查项目 : 确保SSH LogLevel设置为INFO

加固建议: 编辑vi /etc/ssh/sshd_config 文件以按如下方式设置参数(取消注释): LogLevel INFO

8、检查项目 : 设置用户权限配置文件的权限

加固建议: 执行以下5条命令

chown root:root /etc/passwd /etc/shadow /etc/group /etc/gshadow

chmod 0644 /etc/group

chmod 0644 /etc/passwd

chmod 0400 /etc/shadow

chmod 0400 /etc/gshadow

Linux *** 作系统主要由五个基本部分组成:进程调度,内存管理,虚拟文件系统,网络接口,进程间通信。

1.进程调度(SCHED):控制进程对CPU的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际上是仅等待CPU资源的进程,如果某个进程在等待其它资源,则该进程是不可运行进程。Linux使用了比较简单的基于优先级的进程调度算法选择新的进程。

2.内存管理(MM):允许多个进程安全的共享主内存区域。Linux 的内存管理支持虚拟内存,即在计算机中运行的程序,其代码,数据,堆栈的总量可以超过实际内存的大小, *** 作系统只是把当前使用的程序块保留在内存中,其余的程序块则保留在磁盘中。必要时, *** 作系统负责在磁盘和内存间交换程序块。内存管理从逻辑上分为硬件无关部分和硬件有关部分。硬件无关部分提供了进程的映射和逻辑内存的对换;硬件相关的部分为内存管理硬件提供了虚拟接口。

3.虚拟文件系统(Virtual File System,VFS):隐藏了各种硬件的具体细节,为所有的设备提供了统一的接口,VFS提供了多达数十种不同的文件系统。虚拟文件系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统指Linux所支持的文件系统,如ext2,fat等,设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。

4.网络接口(NET):提供了对各种网络标准的存取和各种网络硬件的支持。网络接口可分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。网络设备驱动程序负责与硬件设备通讯,每一种可能的硬件设备都有相应的设备驱动程序。

5.进程间通讯(IPC):支持进程间各种通信机制。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7565097.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存