系统安全和应用

账号安全基本措施

系统账号清理

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

系统安全和应用

 

 锁定长期不适用的账号

系统安全和应用

 

 passwd -l  用户名  和passwd -S  用户名   是一样的效果

删除无用的账号

系统安全和应用

 

 锁定、解锁账号文件passwd、shadow

系统安全和应用

 

 系统安全和应用

 

密码安全控制

  • 设置密码有效期
  • 要求用户下次登录时修改密码

系统安全和应用

 

 系统安全和应用

 

 强制下次登录时更改密码

系统安全和应用

 

 命令历史限制

减少记录的命令条数

输入命令

系统安全和应用

 

进入页面,输入命令,保存并退出

 系统安全和应用

最后别忘记刷新一下配置

系统安全和应用

登录时自动清空历史命令

输入命令

系统安全和应用

 

 进入页面,输入指示,保存并退出

系统安全和应用

 

 重启之后,自动清空历史命令

系统安全和应用

 

 

终端自动注销

  • 闲置180秒后自动注销

当自己离开时,长时间不操作电脑,为了安全起见,设置自动撤销

首先,输入命令

系统安全和应用

然后进入页面,输入指示,保存并退出

系统安全和应用

 

 使用su命令切换用户

用途及用法

用途:Substitute  User ,切换用户

格式:

su   - 目标用户

 

 

密码验证

  • root>>>任意用户,不验证密码
  • 普通用户>>>其他用户,验证目标用户的密码

系统安全和应用

 

 限制使用su命令的用户(安全)

  • 将允许使用su命令的用户加入wheel组
  • 启用pam_wheel认证模块

系统安全和应用

 

 加入成功:如下图

系统安全和应用

 

接下来还要

系统安全和应用

 

然后,把第二行和第六行的注释号“#”删除,保存并退出

 系统安全和应用

 解释一下加注释号“#”和不加注释号“#”的区别

1、以上两行都是默认状态(即开启第二行,注释第六行),这种状态下是允许所有用户间使用su命令进行切换的

2、两行都注释也就是运行所有用户都能使用su命令,但root下使用su切换到其他普通用户需要输入密码

3、如果开启第六行,表示只有root用户和wheel组内的用户才可以使用su命令

4、如果注释第二行,开启第六行,表示只有wheel组内的用户才能使用su命令,root用户也被禁止su命令

 成功:

系统安全和应用

 Linux中的PAM安全认证

su命令的安全隐患

  • 默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登录密码,带来的安全风险
  • 为了加强su命令的使用控制,可借助于PAM认证模块,只允许极个别用户使用su命令进行切换

PAM(Pluggable Authentication Modules)可插拔式认证模块

  • 是一种高效而且灵活便利的用户级别的认证方式
  • 也是当前Linux服务器普遍使用的认证方式

PAM认证原理

①一般遵循的顺序

  • Service(服务)>>>PAM(配置文件)>>>pam_*.so

②首先要确定哪一项服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(位于/lib64/security下)进行安全认证

③用户访问服务器时,服务器的某一个服务程序把用户的请求发送到PAM模块进行认证

④不同的应用程序所对应的PAM模块是不同的

PAM认证的构成

①查看某个程序是否支持PAM认证,可用ls命令

##查看su是否支持PAM模块认证

系统安全和应用

 

 ##查看su的PAM配置文件:cat/etc/pam.d/su

①每一行都是一个独立的认证过程

②每一行可以区分为三个字段

  • 认证类型
  • 控制类型
  • PAM模块及其参数

PAM安全认证流程

控制类型也称做Control Flags,用于PAM验证类型的返回结果

  • required验证失败时继续,但是返回Fali
  • requisite验证失败则立即结束整个验证过程,返回Fail
  • sufficient验证成功则立即返回,不再继续,否则忽略结果并继续
  • optional不再于验证,只显示信息(通常用于session类型)

系统安全和应用

 

 使用sudo机制提升权限

su命令的缺点(还是存在安全隐患)“没有不安全的系统,只有不安全的人”

sudo命令的用途及用法

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

配置sudo授权

系统安全和应用

 

 或者

系统安全和应用

 

 格式:

用户    主机名=命令程序列表

 

 

系统安全和应用

给Tom用户授权成功:

系统安全和应用

 

 

 

用户  主机名=(用户)  命令程序列表

 

 

系统安全和应用

 

 

说明:

用户:直接授权指定的用户名,或采用“%组名”的形式(授权一个组的所有用户)

主机名:使用此规则的主机名。没配置过主机名时可用localhost,有配置过主机名则用实际的主机名,ALL则代表所有的主机

(用户):用户能够以何种身份来执行命令。此项可省略,缺省时以root用户的身份来运行命令

命令程序列表:允许授权的用户通过sudo方式执行的特权命令,需要填写命令程序的完整路径,多个命令之间以逗号“,”进行分隔。ALL代表系统中所有的命令

启用sudo操作日志

系统安全和应用

 

 查看sudo操作记录

  • 需要启动Defaults logfile配置
  • 默认日志文件:/var/log/sudo

系统安全和应用

 

查询授权的sudo操作

系统安全和应用

 

 终端登录安全控制

限制root只在安全终端登录

安全终端配置:/etc/securetty

输入命令:

系统安全和应用

 

 系统安全和应用

 

 禁止普通用户登录

  • 建立/etc/nologin文件
  • 删除nologin文件或重启后恢复正常

系统安全和应用

 网络端口扫描

NMAP:是一个强大的端口扫描类安全评测工具,支持ping扫描、多端口检测等多种技术

namp命令常用的选项和扫描类型

-p 指定扫描的端口
-n 禁用反向DNS解析(以加快扫描速度)

- sS

TCP的SYN扫描(半开扫描),只向目标发出SYN/ACK响应包就认为目标端口正在监听,并立即断开连接:否则认为目标端口并未开放

-sT TCP连接扫描,这是完整的TCP扫描方式(默认扫描类型),用来建立一个TCP连接,如果成功则认为目标端口正在监听服务,否则认为目标端口并未开放
 -sF  TCP中的FIN扫描,开放的端口会忽略这种数据包,关闭的端口会回应RST数据包。许多防火墙只对SYN数据包进行简单过滤,而忽略了其他形式的TCP攻击包,这种类型的扫描可间接检测防火墙的健壮性
 -sU  UDP扫描,探测目标主机提供那些UDP服务,UDP扫描的速度会比较慢
 -sP  ICMP扫描,类似于ping检测,快速判断目标主机是否存活,不做其他扫描
 -P0  跳过ping检测,这种方式认为所有的目标主机是存活的,当对方不响应ICMP请求时,使用这种方式可以避免无法ping

 

 

 

 

 

 

 

 

 

 

 

 ###查看正在运行的使用TCP协议的网络状态信息

系统安全和应用

 ###查看正在运行的使用UDP协议的网络状态信息

系统安全和应用

 

 ##查看本机开放的TCP端口

系统安全和应用

 

  ##查看本机开放的UDP端口

 系统安全和应用

 

系统安全和应用

上一篇:node-sass和sass-loader报错解决方法


下一篇:语法树、短语、直接短语、句柄、素短语、最左素短语