奇宝库 > linux服务器安全加固10条建议(linux服务器安全设置)

linux服务器安全加固10条建议(linux服务器安全设置)

一、系统安全记录文件

操作系统中的记录文件是检测是否存在网络入侵的重要线索。如果您的系统直接连接到互联网,您会发现许多人试图Telnet/FTP您的系统。您可以运行“# more/var/log/secure grep retired”来检查对您系统的攻击,以便采取相应的对策,如使用SSH代替Telnet/rlogin等。

二、启动和登录安全

1.BIOS安全IXPUB

设置BIOS密码和修改引导顺序会禁止从软盘引导系统。

2.用户口令

用户密码是Linux安全的一个基本出发点。很多人使用的用户密码过于简单,相当于给入侵者打开了大门。虽然理论上来说,只要有足够的时间和资源可用,没有破解不了的用户密码,但是选择得当的话是很难破解的。一个好的用户密码是一串只有他自己才容易记住和理解的字符,绝不应该写在任何地方。

3.默认账号

所有由操作系统自己启动的不必要的默认帐户都应该被禁止。您应该在第一次安装系统时这样做。Linux提供了很多默认账号,账号越多,系统越容易受到攻击。

您可以使用以下命令删除该帐户。

[root @ server/] # userdel用户名

或者使用以下命令删除组用户帐户。

[root@server /]# groupdel用户名

4.密码文件

Chattr命令向以下文件添加不可变属性,从而防止未经授权的用户获得权限。

[root @ server/]# chattr I/etc/passwd

[root @ server/]# chattr I/etc/shadow

[root @ server/]# chattr I/etc/group

[root @ server/]# chattr I/etc/gshadow

5.禁止使用Ctrl Alt Delete重启机器的命令。

修改/etc/inittab文件,注释掉“ca:ctrl alt del:/sbin/shut down-T3-r now”行。然后重置/etc/rc.d/init.d/目录中所有文件的权限,并运行以下命令:

[root @ server/]# chmod-R 700/etc/RC . d/init . d/*

只有root用户可以读取、写入或执行上述所有脚本文件。

6.限制苏的命令

如果不希望任何人能够以超级用户身份使用su,可以编辑/etc/pam.d/su文件并添加以下两行:

auth sufficient/lib/security/PAM _ rootok . so debug

auth required/lib/security/PAM _ wheel . so group=isd

此时,只有苏灿作为根用户的isd组。此后,如果您希望用户admin能够以root用户身份su,可以运行以下命令:

[root @ server/]# usermod-G10 admin

7.删除登录信息。

默认情况下,登录提示信息包括Linux发行版、内核版本名和服务器主机名等。这对一台安全要求高的机器来说,泄露了太多的信息。您可以编辑/etc/rc.d/rc.local来注释掉以下几行输出系统信息。

#这将在每次启动时覆盖/etc/issue。所以,做任何改变吧

#希望在此处生成/etc/issue,否则在重新启动时会丢失它们。

# echo " "/etc/issue

# echo "$R"》 /etc/issue

# echo " Kernel $(uname-r)on $ a $(uname-m)" "/etc/issue

# cp -f /etc/issue /etc/issue.net

# echo》 /etc/issue

然后,执行以下操作:

[root@server /]# rm -f /etc/issue

[root @ server/]# RM-f/etc/issue . net

[root@server /]# touch /etc/issue

[root @ server/]# touch/etc/issue . net

8.设置Grub密码

[root @ server share]# grb-MD5-crypt

密码://输入密码。

重新键入密码://输入确认密码

$ 1 $ LlZDJ/$ vxlsjlcr 9 vvwci/yrhppm 0

vim /boot/grub/grub.conf

添加一行:密码$ 1 $ llzdj/$ vxlsjlcr 9 vvwci/yrhppm 0

三。限制网络访问

1.NFS访问如果您使用NFS网络文件系统服务,您应该确保您的/etc/exports具有最严格的访问权限设置,这意味着您不使用任何通配符,不允许root写权限,并且只能作为只读文件系统安装。编辑文件/etc/exports并添加以下两行。

/dir/to/export host 1 . my domain . com(ro,root_squash)

/dir/to/export host 2 . my domain . com(ro,root_squash)

/dir/to/export是你要输出的目录,host.mydomain.com是登录这个目录的机器名,ro表示mount是只读系统,root_squash禁止root写入这个目录。要使更改生效,请运行以下命令。

[root @ server/]#/usr/sbin/exportfs-a

2.inetd设置

首先,确保/etc/inetd.conf的所有者是root,并且文件权限设置为600。设置完成后,可以使用“stat”命令进行检查。

[root @ server/]# chmod 600/etc/inetd . conf

然后,编辑/etc/inetd.conf以禁止以下服务。

ftp telnet shell登录执行对话ntalk imap pop-2 pop-3 finger auth

如果您安装了ssh/scp,您还可以禁用Telnet/FTP。要使更改生效,请运行以下命令:

[root @ server/]# kill all-HUP inetd

默认情况下,大多数Linux系统允许所有请求,但是使用TCP_WRAPPERS很容易增强系统安全性。您可以修改/etc/hosts.deny和/etc/hosts.allow来增加访问限制。例如,默认情况下,将/etc/hosts.deny设置为“ALL: ALL”可以拒绝所有访问。然后在/etc/hosts.allow文件中添加允许的访问权限。例如“SSHD:192.168.1.10/255 . 255 . 255 . 0 gate . open arch . com”表示允许IP地址192 . 168 . 1 . 10和主机名gate.openarch.com通过SSH连接。

配置完成后,您可以使用tcpdchk进行检查:

[root@server /]# tcpdchk

Tcpchk是一个TCP_Wrapper配置检查工具,它检查您的tcp wrapper配置并报告所有发现的潜在/现有问题。

3.登录终端设置

/etc/securetty文件指定允许root登录的tty设备,并由/bin/login程序读取。它的格式是允许名称的列表。您可以编辑/etc/securetty并注释掉下面几行。

# tty1

# tty2

# tty3

# tty4

# tty5

# tty6

此时root只能在tty1终端登录。

4.避免显示系统和版本信息。

如果希望远程登录用户看不到系统和版本信息,可以通过以下方式更改/etc/inetd.conf文件:

telnet流TCP nowait root/usr/sbin/tcpd in . telnetd-

添加-h意味着telnet不显示系统信息,而只显示“login:”。

5.不允许root用户登录服务器。

[root @ server/]# vim/etc/ssh/sshd _ config

修改:PermitRootLogin编号

四。防止攻击

1.阻止ping。如果没人能ping通你的系统,安全性自然就提高了。

[root @ server/]# vim/etc/sysctl . conf

add:net . IP v4 . icmp _ echo _ ignore _ all=1

[root@server /]# sysctl -p

2.防止IP欺骗

编辑host.conf文件并添加以下行以防止IP欺骗攻击。

订单绑定,主机

多重关闭

无噗开

3.防止DoS攻击

对系统的所有用户设置资源限制可以防止DoS攻击。例如最大进程数和内存使用量。例如,它可以在

将以下几行添加到[root @ server/]# vim/etc/security/limits . conf:

*硬核0

*硬rss 5000

*硬nproc 20

然后,您必须编辑/etc/pam.d/login文件,检查以下行是否存在。

需要会话/lib/security/pam_limits.so

上述命令禁止调试文件,将进程数限制为50,并将内存使用量限制为5MB。

本文来自网络,不代表本站立场,转载请注明出处: