系统安全及应用,理论和实验的结合 冲☞

系统安全及应用

文章目录

  • 前言:
  • 1.基本安全措施:
    • 1.1系统账号清理
    • 1.2 密码安全控制
    • 1.3历史命令限制
    • 1.4终端自动注销
  • 2.用户切换与提权:
    • 2.1 su命令
    • 2.2sudo命令-提升执行权限
    • 2.4查看用户获得哪些sudo授权
  • 3.PAM安全认证:
  • 4.系统引导和控制登录:
    • 4.1开关机安全控制
    • 4.2实验:为GRUB引导菜单启用密码设置
  • 5. 终端及登录控制:
    • 5.1减少开放的tty终端个
    • 5.2禁止普通用户登录
    • 5.3禁止root用户登录
  • 6.弱口令检测:
    • 6.1弱口令检测推荐步骤
    • 6.2弱口令检测实验
  • 7.网络扫描--NAMP:

前言:

作为一种开放源代码的操作系统,Linux服务器以其安全,高效和稳定的显著优势得以广泛应用

可以从账号安全控制,系统引导和登录控制的角度控制Linux系统的安全优化

还可以使用基于Linux系统环境的弱口令检测,网络扫描等安全工具,查找隐患,及时采取有针对性的防护措施

1.基本安全措施:

1.1系统账号清理

系统安全及应用,理论和实验的结合 冲☞_第1张图片
在Linux系统中,除了用户手动创建的各种账号外,还包括随系统或程序安装过程而生成的其他大量账号,除了超级用户root外,其他大量账号只是用来维护系统运作,启动进程。一般不允许登录的,因此称位非登录用户。
系统安全及应用,理论和实验的结合 冲☞_第2张图片
对于Linux服务器中长期不用的用户账号,若无法确定是否该删除,可以暂时将其锁定。例如:锁定,解锁名为tom的用户账号,可以执行以下操作:
系统安全及应用,理论和实验的结合 冲☞_第3张图片
如果服务器中用户账户已经固定,不再进行更改,还可以采用锁定账号配置文件的方法。使用chattr命令,分别结合“+i” “-i” 选项来锁定,解锁文件,使用lsattr命令可以查看文件锁定情况
系统安全及应用,理论和实验的结合 冲☞_第4张图片
当帐号文件被锁定时就无法再添加删除账号,也不能更改用户登陆的密码,登录shell
系统安全及应用,理论和实验的结合 冲☞_第5张图片
注:加了注释就是不能登录的账户
在这里插入图片描述

1.2 密码安全控制

在不安全的网络环境中,为了降低密码被猜出或者被破解的风险,用户应该养成定期更改密码的习惯,这时候管理员可以在服务器端限制用户密码的最大有效天数,对于密码已过期的用户,登陆时被要求重设密码,否则将拒绝登录。
系统安全及应用,理论和实验的结合 冲☞_第6张图片
执行以下操作可将密码的有效期设为30天,适用于新用户
系统安全及应用,理论和实验的结合 冲☞_第7张图片
用于已有的用户在这里插入图片描述
执行以下操作可以强制要求用户tom下次登陆时重设密码
在这里插入图片描述

1.3历史命令限制

Shell环境的历史命令机制为用户提供了很大的便利,但另一方面也给用户带来了潜在风险,假如获得用户的命令历史文件,该用户的命令操作过程就会被泄露。在BASH终端环境中,历史命令记录条数由变量HISTSIZE控制,默认是1000条。通过修改/etc/profile文件中的HISTSIZE变量值,可以影响系统中的所有用户。
系统安全及应用,理论和实验的结合 冲☞_第8张图片
例如可以设置最多记录200条历史命令
系统安全及应用,理论和实验的结合 冲☞_第9张图片
适用于当前用户
在这里插入图片描述
除此之外,还可以修改用户宿主目录中的~ /.bash_logout文件,添加清空历史命令的操作语句,这样当用户退出已登录的Bash环境以后,所记录的历史命令将自动清空
系统安全及应用,理论和实验的结合 冲☞_第10张图片
注:还需rm -rf .bash history删除文件,登出后再次进入查看命令就消失了
在这里插入图片描述

1.4终端自动注销

Bash终端环境中,还可以设置一个闲置的超长时间,当超过指定时间没有任何输入即自动注销终端,这样可以有效避免当管理员不在时其他人员对服务器的误操作风险。
系统安全及应用,理论和实验的结合 冲☞_第11张图片
适用于新用户:
在这里插入图片描述
适用于当前用户:
在这里插入图片描述
注意当正在执行的等耗较长时间的操作时,应该避免设置TMOUT变量。必要时执行
unset TMOUT命令取消TMOUT变量。

2.用户切换与提权:

大多数Linux服务器并不建议用户以root用户进行登录。一方面可以大大减少因操作失误而导致的破坏,另一方面也降低了特权密码在不安全的网络中被泄露的风险。Linux系统提供了su sudo两种命令,其中su命令主要用来切换用户,而sudo命令用来提升执行权限

2.1 su命令

使用su命令可以切换为指定用户,从而具有该用户的所有权限。切换时需要对目标目录进行验证。
su和su -有区别的su只是切换了用户,当前目录不变
在这里插入图片描述
su - 不仅切换了用户,还切换到用户登录的家目录中
在这里插入图片描述
默认情况下,任何用户都允许使用su命令,从而会带来风险。为了加强su命令的使用控制,可以借助于pam_wheel认证模块,只允许极个别用户使用su命令进行切换,未加入到wheel组内的其他用户将无法使用su命令

例如:
1.先创建一个普通用户radmin,设置密码
系统安全及应用,理论和实验的结合 冲☞_第12张图片
2.将用户radmin加入到wheel组中,并且查看wheel组中是否有radmin的用户
系统安全及应用,理论和实验的结合 冲☞_第13张图片
3.修改/etc/pam.d/su 认证配置以启用pam_wheel认证
系统安全及应用,理论和实验的结合 冲☞_第14张图片
4.加入wheel组的用户radmin可以使用su命令,没有加入的使用不了
系统安全及应用,理论和实验的结合 冲☞_第15张图片

2.2sudo命令-提升执行权限

通过su命令可以非常方便的切换为另一个用户,但前提条件是必须知道目标用户的登陆密码,有一种方法,既可以让普通用户拥有一部份权限管理,又不需要将root用户密码告诉他,使用sudo命令可以提升执行权限
配置sudo授权
系统安全及应用,理论和实验的结合 冲☞_第16张图片
visudo 或者 vi /etc/sudoers :sudo机制的配置文件为/etc/sudoers,文件的默认权限是440,需要使用专门的visudo工具进行编辑。若使用vi编辑,保存时必须执行“:w!”命令强制操作,否则系统将提示为只读文件而拒绝保存
授权配置主要包括用户 主机 命令三部分
系统安全及应用,理论和实验的结合 冲☞_第17张图片
sudo配置记录的命令允许使用通配符*,取反符号“!”,当需要授权某个目录下的所有命令或取消取消其中个别命令时特别有用。
例如:若要授权用户tom可以执行/sbin/目录下除ifconfig route以外的其他所有程序
在这里插入图片描述
若要启用sudo日志记录以备管理员查看,应在/etc/sudores文件中增加“Defaults logfile”设置
在这里插入图片描述
2.3sudo实验:允许用户lisi通过sudo方式执行特权命令
1.创建用户lisi,并将其加入到wheel组中
系统安全及应用,理论和实验的结合 冲☞_第18张图片
2.允许lisi用户可以执行特权命令
系统安全及应用,理论和实验的结合 冲☞_第19张图片
3切换到lisi用户中,使用sudo -l命令查看自己的sudo配置
系统安全及应用,理论和实验的结合 冲☞_第20张图片

2.4查看用户获得哪些sudo授权

可以使用sudo - l的命令
查看sudo操作记录
需启用Defaults logfile 配置
默认日志文件:/var/log/sudo

3.PAM安全认证:

Su命令的安全隐患

系统安全及应用,理论和实验的结合 冲☞_第21张图片
PAM可插拔式认证模块
系统安全及应用,理论和实验的结合 冲☞_第22张图片
PAM认证原理
系统安全及应用,理论和实验的结合 冲☞_第23张图片
系统安全及应用,理论和实验的结合 冲☞_第24张图片
PAM认证的构成
每一行都是一个独立的认证过程

每一行可以区分为三个字段
系统安全及应用,理论和实验的结合 冲☞_第25张图片
PAM认证类型
认证管理 账户管理 密码管理 会话管理
系统安全及应用,理论和实验的结合 冲☞_第26张图片
PAM安全认证流程
系统安全及应用,理论和实验的结合 冲☞_第27张图片

4.系统引导和控制登录:

4.1开关机安全控制

1.调整BIOS引导设置
系统安全及应用,理论和实验的结合 冲☞_第28张图片
2.限制更改GRUB引导参数
系统安全及应用,理论和实验的结合 冲☞_第29张图片

4.2实验:为GRUB引导菜单启用密码设置

1.为grub引导菜单启用密码,生成grub密码,查看是否添加,最后重启电脑认证
系统安全及应用,理论和实验的结合 冲☞_第30张图片
2.重启电脑按e键进入这里,输入刚刚设置的用户名和密码
系统安全及应用,理论和实验的结合 冲☞_第31张图片
默认是先硬盘启动
系统安全及应用,理论和实验的结合 冲☞_第32张图片

5. 终端及登录控制:

5.1减少开放的tty终端个

通过修改/etc/init/start-ttys.conf和/etc/sysconfig/init,可以减少开放的tty终端数量,例如只希望开启tty4 tty5 tty6三个终端,修改操作:
在这里插入图片描述

5.2禁止普通用户登录

系统安全及应用,理论和实验的结合 冲☞_第33张图片

5.3禁止root用户登录

若要禁止root用户从tty5 tty6登录,可以修改/etc/securetty 文件,将tty5 6注释掉
系统安全及应用,理论和实验的结合 冲☞_第34张图片

6.弱口令检测:

*Joth the Ripper,简称为 JR*
系统安全及应用,理论和实验的结合 冲☞_第35张图片

6.1弱口令检测推荐步骤

1.安装JR工具
系统安全及应用,理论和实验的结合 冲☞_第36张图片
2.检测弱口令账号
系统安全及应用,理论和实验的结合 冲☞_第37张图片
3.密码文件暴力破解
系统安全及应用,理论和实验的结合 冲☞_第38张图片

6.2弱口令检测实验

1.先用xshell软件将jhon软甲引到centos中
系统安全及应用,理论和实验的结合 冲☞_第39张图片
解压安装包,并进入这个目录在这里插入图片描述
3.查看目录中信息
系统安全及应用,理论和实验的结合 冲☞_第40张图片
4.切换到src子目录并执行 make clean linux-x86-64的命令,执行编译过程
在这里插入图片描述
5.准备带破解的密码文件,执行暴力破解
系统安全及应用,理论和实验的结合 冲☞_第41张图片
6.查看已经破解的账户列表
系统安全及应用,理论和实验的结合 冲☞_第42张图片

7.网络扫描–NAMP:

一款强大的网络扫描,安全检测工具

可以探测局域网中那些主机在线,或者某台主机中开了那些端口

NMAP的扫描语法

nmap [扫描类型] [选项] <扫描目标…>

常用的扫描类型

-sS,-sT,-sF,-sU,-sP,-P0

-sT:TCP端口

-sU:UDP端口

-sP:ping

1.先用yum工具安装nmap工具
在这里插入图片描述
2.扫描本机的TCP端口号
系统安全及应用,理论和实验的结合 冲☞_第43张图片
3.扫描常用的UDP端口
系统安全及应用,理论和实验的结合 冲☞_第44张图片
4.扫描常用的TCP端口
系统安全及应用,理论和实验的结合 冲☞_第45张图片

你可能感兴趣的:(Linux系统管理篇)