[企业级linux安全管理]- 安全管理基础(1)

1. 操作条件

(1)装有 Cent OS Linux 操作系统的虚拟机一台 

2. 背景: 

某企业有一台服务器,其信息如下:

(1)  该服务器上存在管理员 root,密码为 root,另存有一些具有 root 权限的
   其他账户,经确认这些账户长期未使用;

(2)  “/secure”文件夹为公司开发部的重要文件夹,目前权限为所有人完全
控制。实际使用需求为:只有 “develops”组的管理员“deadmin”和
“develops”小组成员能对组进行任何操作;其他用户组只能查看。 

(3)  服务器默认可以通过所有的 TTY 进行登录,并且 root 用户可以通过 SSH
进行远程登录; 

(4)  任何用户可以切换 su 登录。

3. 需求: 现需要对该服务器进行安全加固,减少攻击面: 

(1)  防止黑客爆破 root 用户密码,并防止黑客通过其他管理员用户入侵的可 能性。

对新建账户强制要求 8 位以上的复杂密码,并至少每两个月修改一 次密码,到期前一个礼拜 醒客户修改密码;
(2)  防止未经授权的文件访问;
(3)  防止未经授权的 TTY 登录,仅留 1,2 两个 TTY 登录入口;
(4)  防止 root 用户直接远程登录;
(5) 防止因忘记注销而产生的安全问题,超时 5 分钟后自动注销; (6) 防止任意用户使用 su 切换成 root 账户;
(7) 防止账户文件被修改。 

4. 具体要求: 

(1) 找出并锁定未使用的管理员账户,并对管理员账户设置强密码 1qaz@WSX;

(2) 检查口令策略是否符合要求,并正确设置;
(3) 根据访问需求设置“/secure”文件夹权限;
(4) 正确部署登录策略(包括 TTY 登录、远程登录、和 su 切换限制); 

(5) 正确设置自动注销;
(6) 正确限制 su 切换,仅限 wheel 组才能切换至 root; (7) 锁定账户文件防止被修改。 


操作步骤

步骤1. 安全管理账户:

(1) 为 root 用户设置强密码:

右击桌面,选择“打开终端”,依次输入下列命令 passwd root
1qaz@WSX
1qaz@WSX 

(2) 找出 UID 为 0 的用户,并锁定

在终端中依次输入下列命令
cat/etc/passwd //发现UID为0的用户为testadmin

passwd -l testadmin //锁定 testadmin 用户 

(3) 创建/secure 文件夹的使用账户和组:

    在终端中依次输入下列命令

groupadd develops
useradd -g develops deadmin
passwd deadmin
zaq1@WSX
zaq1@WSX //这里密码任意 

步骤2. 文件系统安全管理:

(1) 设置适当的用户文件权限:

   在终端中依次输入下列命令

chown deadmin:develops /secure

chmod 774 /secure 

步骤3. 系统加固

(1) 设置口令策略:在终端中依次输入下列命令

cat /etc/login.defs
vi /etc/login.defs修改如下行:
PASS_MAX_DAYS 60
PASS_MIN_DAYS 0
PASS_MIN_LEN 8
PASS_WARN_AGE 7 

(2) 防止 TTY 登录,仅留 1,2 两个 TTY 登录入口

在终端中输入下列命令
vi /etc/inittab (按 i 进行编辑,qw 保存并推出) 注释如下行:

#3:2345:respawn:/sbin/mingetty tty3

#4:2345:respawn:/sbin/mingetty tty4

#5:2345:respawn:/sbin/mingetty tty5

#6:2345:respawn:/sbin/mingetty tty6 

(3) 设置自动注销超时时间

在终端中输入下列命令
vi /etc/profile (按 i 进行编辑,qw 保存并推出) 在 HISTSIZE=1000 下面加入行:

TMOUT=300 

if [ -x /usr/bin/id ]; then
        USER="`id -un`"
        LOGNAME=$USER
        MAIL="/var/spool/mail/$USER"
fi

HOSTNAME=`/bin/hostname`
HISTSIZE=1000
TMOUT=300

(4) 防止任意用户使用 su 切换到 root

在终端中输入下列命令
vi /etc/pam.d/su (按 i 进行编辑,qw 保存并推出) 在头部加入行:

auth required pam_wheel.so group=wheel 

#%PAM-1.0
auth            sufficient      pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth           sufficient      pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth           required        pam_wheel.so use_uid
auth            required        pam_wheel.so group=wheel
auth            include         system-auth
account         sufficient      pam_succeed_if.so uid = 0 use_uid quiet
account         include         system-auth
password        include         system-auth
session         include         system-auth
session         optional        pam_xauth.so

(5) 防止 root 用户远程登录 

在终端中输入下列命令
vi /etc/ssh/sshd_config (按 i 进行编辑,qw 保存并推出) 修改如下行:

PermitRootLogin no 

#LoginGraceTime 2m
PermitRootLogin no
#StrictModes yes
#MaxAuthTries 6

(6) 锁定账户文件:

   在终端中依次输入下列命令

chattr +i /etc/passwd

chattr +i /etc/shadow

chattr +i /etc/gshadow

chattr +i /etc/group

[root@localhost ~]# chattr +i /etc/passwd
[root@localhost ~]# chattr +i /etc/shadow
[root@localhost ~]# chattr +i /etc/group
[root@localhost ~]# chattr +i /etc/gshadow
原文地址:https://www.cnblogs.com/tdcqma/p/5439139.html