Linux系统的基础应用,Linux系统安全基础应用(一) -- 理论部分

[系统账号清理]

将非登录用户的Shell设为/sbin/nologin

如bin,daemon,adm,lp,mail,nobody,apache,mysql,dbus,ftp,gdm,haldaemon等

锁定长期不使用的账号

usermod -L abc //锁定账号

usermod -U abc //解锁账号

passwd -S //查看账号状态

删除无用的账号

如new,uucp,games,gopher等

锁定账号文件passwd、shadow

chattr +i /etc/passwd /etc/shadow //锁定文件

chattr -i /etc/passwd /etc/shadow //解锁文件

lsattr /etc/passwd /etc/shadow //查看锁定状态

182106370.png

[密码安全控制]

设置密码有效期

[root@steven ~]# vi /etc/login.defs #适用于新建的用户

……

PASS_MAX_DAYS 30

[root@steven ~]# chage -M 30 lisi #使用于已有的lisi用户

要求用户下次登录时修改密码

[root@steven ~]# chage -d 0 zhangsan #强制在下次登录时更改密码

[命令历史限制]

减少记录的命令条数

[root@steven ~]# vi /etc/profile

……

HISTSIZE=200 #适用于新登录用户

export HISTSIZE=200 #适用于当前用户

注销时自动清空命令历史

[root@steven ~]# vi ~/.bash_logout

……

history -c

clear

[终端自动注销]

闲置600秒后自动注销

[root@steven ~]# vi ~/.bash_profile

……

export TMOUT=600

[su用途及用法]

用途:Substitute User,切换用户

格式:su - 目标用户

"-"等同于"--login"或"-l",表示切换后进入目标用户的登录shell环境

密码验证

root → 任意用户, 不验证密码

普通用户 → 其他用户,验证目标用户的密码

210929563.png

210929237.png

限制使用su命令的用户

启用pam_wheel认证模块

[root@steven ~]# vim /etc/pam.d/su

#%PAM-1.0

auth required pam_wheel.so use_uid

将允许使用su命令的用户加入wheel组

[root@steven ~]# gpasswd -a abc wheel

Adding user abc group wheel

查看su操作记录

安全日志文件:/var/log/secure

[sudo用途及用法]

用途:以其他用户身份(如root)执行授权的命令

用法:sudo 授权命令

密码验证

初次执行sudo命令时,验证当前用户的密码

不需验证目标用户的密码

配置sudo授权

visudo 或者 vi /etc/sudoers

记录格式:用户 主机名列表=命令程序列表

[root@steven ~]# visudo

……

%wheel ALL=NOPASSWD: ALL

jerry localhost=/sbin/ifconfig

#支持“*”通配,“!”取反

syriane localhost=/sbin/*,!/sbin/ifconfig,!/sbin/route

#支持命令别名,类似别名还包括:User_Alias、Host_Alias

Cmnd_Alias PKGTOOLS=/bin/rpm,/usr/bin/yum

mike localhost=PKGTOOLS

查看sudo操作记录

需启用 Defaults logfile 配置

默认日志文件:/var/log/sudo

[root@steven ~]# visudo

……

Defaults logfile = "/var/log/sudo"

查询授权的sudo操作

sudo -l

[abc@steven ~]$ sudo -l

[sudo] password for syrianer: #初次使用sudo时需验证当前用户的密码

……

User syrianer may run the following commands on this host:

(root) /sbin/*, (root) !/sbin/ifconfig, (root) !/sbin/route

#默认超时为5分钟,在此期间不再重复验证

[abc@steven ~]$ sudo /sbin/fdisk -l

……

Device Boot Start End Blocks Id System

/dev/sda1 * 1 13 104391 83 Linux

/dev/sda2 14 10443 83778975 8e Linux LVM

[开关机安全控制]

调整BIOS引导设置

将第一引导设备设为当前系统所在硬盘

禁止从其他设备(光盘、U盘、网络)引导系统

将安全级别设为setup,并设置管理员密码

禁用重启热键Ctrl+Alt+Del

避免因用户误操作导致重启

[root@steven ~]# vi /etc/inittab

……

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

[root@steven ~]# init q #重新读取配置

GRUB菜单限制

未经授权禁止修改启动参数

未经授权禁止进入指定系统

密码设置方式(grub.conf)

password 明文密码串

password --md5 加密密码串

密码记录的位置

全局部分(第一个“title”之前)

系统引导部分(每个“title”部分之后)

GRUB限制的实现

使用grub-md5-crypt获得加密字串

[root@steven ~]# grub-md5-crypt

Password:

Retype password:

$1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/

修改grub.conf文件,添加密码记录

[root@steven ~]# vi /boot/grub/grub.conf

……

password --md5 $1$Kndw50$wRW2w1v/jbZ8n5q2fON4y/

title Red Hat Enterprise Linux Server (2.6.18-194.el5)

root (hd0,0)

kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00

initrd /initrd-2.6.18-194.el5.img

修改系统登录提示

本机登录提示:/etc/issue

网络登录提示:/etc/issue.net

减少开放终端个数

[root@steven ~]# vi /etc/inittab

……

#禁用三个终端:tty1、tty2、tty3

# Run gettys in standard runlevels

#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

[root@steven ~]# init q

限制root只在安全终端登录

安全终端配置:/etc/securetty

[root@steven ~]# vi /etc/securetty

……

#禁止root用户从终端tty5、tty6登录

tty1

tty2

tty3

tty4

#tty5

#tty6

禁止普通用户登录

建立/etc/nologin文件

删除nologin文件或重启后即恢复正常

[root@steven ~]# touch /etc/nologin #禁止普通用户登录

[root@steven ~]# rm -rf /etc/nologin #取消上述登录限制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值