Linux 服务器安全策略配置

Linux 服务器安全策略配置,第1张

修改/etc/login.defs文件,控制密码的有效期

chage -l 用户

控制密码复杂度,需已安装pam_cracklib,centos已默认安装

修改/etc/etc/pam.d/system-auth文件,添加如下语句,需放置在最前面,否则可能不生效

参数说明

Linux登录失败

1 修改/etc/hosts.allow文件,增加允许通过SSH连接的客户端IP

2 修改/etc/hosts.deny文件,增加禁止通过SSH连接的客户端IP

3 重启sshd服务和xinetd(可选)服务,使之生效

如果hosts.allow和hosts.deny文件均包含同一ip,则以hosts.all文件为准,如果只是单独配置了hosts.all文件,并没有在hosts.deny文件禁止,依然不生效

一、强化密码强度

只要涉及到登录,就需要用到密码,如果密码设定不恰当,就很容易被黑客破解,如果是超级管理员(root)用户,如果没有设立良好的密码机制,可能给系统造成无法挽回的后果。

很多用户喜欢用自己的生日、姓名、英文名等信息来设定,这些方式可以通过字典或者社会工程的手段去破解,因此建议用户在设定密码时,尽量使用非字典中出现的组合字符,且采用数字与字符、大小写相结合的密码,增加密码被破译的难度。

二、登录用户管理

进入Linux系统前,都是需要登录的,只有通过系统验证后,才能进入Linux *** 作系统,而Linux一般将密码加密后,存放在/etc/passwd文件中,那么所有用户都可以读取此文件,虽然其中保存的密码已加密,但安全系数仍不高,因此可以设定影子文件/etc/shadow,只允许有特殊权限的用户 *** 作。

三、账户安全等级管理

在Linux *** 作系统上,每个账户可以被赋予不同的权限,因此在建立一个新用户ID时,系统管理员应根据需要赋予该账号不同的权限,且归并到不同的用户组中。每个账号ID应有专人负责,在企业中,如果负责某个ID的员工离职,该立即从系统中删除该账号。

四、谨慎使用"r"系列远程程序管理

在Linux *** 作系统中,有一系列r开头的公用程序,如rlogin、rcp等,非常容易被不法分子用来攻击我们的系统,因此千万不要将root账号开放给这些公用程序,现如今很多安全工具都是针对此漏洞而设计的,比如PAM工具,就可以将其有效地禁止掉。

五、root用户权限管理

root可谓是Linux重点保护对象,因为其权利是最高的,因此千万不要将它授权出去,但有些程序的安装、维护必须要求是超级用户权限,在此情况下,可以利用其他工具让这类用户有部分超级用户的权限。sudo就是这样的工具。

六、综合防御管理

防火墙、IDS等防护技术已成功应用到网络安全的各个领域,且都有非常成熟的产品,需要注意的是:在大多数情况下,需要综合使用这两项技术,因为防火墙相当于安全防护的第一层,它仅仅通过简单地比较IP地址/端口对来过滤网络流量,而IDS更加具体,它需要通过具体的数据包(部分或者全部)来过滤网络流量,是安全防护的第二层。综合使用它们,能够做到互补,并且发挥各自的优势,最终实现综合防御。

1、 关闭不需要的服务

这个应该很容易理解的,凡是我们的系统不需要的服务,一概关闭,这样一个好处是减少内存和CPU时间的占用,另一个好处相对可以提高安全性

那么哪些服务是肯定要保留的呢?

在linux机器上通常有四项服务是必须保留的

iptables

linux下强大的防火墙,只要机器需要连到网上,哪里离得开它

network

linux机器的网络,如果不上网可以关闭,只要上网当然要打开它

sshd

这是openssh server,如果你的机器不是本地 *** 作,而是托管到IDC机房,

那么访问机器时需要通过这个sshd服务进行

syslog

这是linux系统的日志系统,必须要有,

否则机器出现问题时会找不到原因

除了这四项必需的服务之外,其他的服务需要保留哪些呢?

这时就可以根据系统的用途而定,比如:数据库服务器,就需要启用mysqld(或oracle)

web服务器,就需要启用apache

2、 关闭不需要的tty

请编辑你的/etc/inittab

找到如下一段:

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

这段命令使init为你打开了6个控制台,分别可以用alt+f1到alt+f6进行访问

此6个控制台默认都驻留在内存中,事实上没有必要使用这么多的

你用ps auxf这个命令可以看到,是六个进程

root 3004 0.0 0.0 1892 412 tty1 Ss+ Jun29 0:00 /sbin/mingetty tty1

root 3037 0.0 0.0 2492 412 tty2 Ss+ Jun29 0:00 /sbin/mingetty tty2

root 3038 0.0 0.0 2308 412 tty3 Ss+ Jun29 0:00 /sbin/mingetty tty3

root 3051 0.0 0.0 1812 412 tty4 Ss+ Jun29 0:00 /sbin/mingetty tty4

root 3056 0.0 0.0 2116 412 tty5 Ss+ Jun29 0:00 /sbin/mingetty tty5

root 3117 0.0 0.0 2396 412 tty6 Ss+ Jun29 0:00 /sbin/mingetty tty6

3. 如何关闭这些进程?

通常我们保留前2个控制台就可以了,

把后面4个用#注释掉就可以了

然后无需重启机器,只需要执行 init q 这个命令即可

init q

q作为参数的含义:重新执行/etc/inittab中的命令

修改完成后需重启机器使之生效

4 、如何关闭atime?

一个linux文件默认有3个时间:

atime:对此文件的访问时间

ctime:此文件inode发生变化的时间

mtime:此文件的修改时间

如果有多个小文件时通常没有必要记录文件的访问时间,

这样可以减少磁盘的io,比如web服务器的页面上有多个小图片

如何进行设置呢?

修改文件系统的配置文件:vi /etc/fstab

在包含大量小文件的分区中使用noatime,nodiratime两项

例如:

/dev/md5 /data/pics1 ext3 noatime,nodiratime 0 0

这样文件被访问时就不会再产生写磁盘的io

5、 一定要让你的服务器运行在level 3上

做法:

vi /etc/inittab

id:3:initdefault:

让服务器运行X是没有必要的

6, 优化sshd

X11Forwarding no //不进行x图形的转发

UseDNS no //不对IP地址做反向的解析

7、 优化shell

修改命令history记录

# vi /etc/profile

找到 HISTSIZE=1000 改为 HISTSIZE=100

然后 source /etc/profile


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

原文地址:https://54852.com/yw/8951416.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存