Linux系统安全及应用

一、账号安全基本措施

1、系统账号清理

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

  • 锁定长期不使用的账号

  • 删除无用的账号

  • 锁定账号文件passwd、shadow

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

    lsattr /etc/passwd ###查看状态

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

1.锁定文件查看

2.锁定/etc/passwd、还能修改密码因为密码有/etc/shadow管理

3.将/etc/shadow上锁后就不能修改密码了

2、密码安全控制

  • 设置密码有效期

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

    chage:密码失效是通过此命令来管理的。

    参数意思:
      -m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
      -M 密码保持有效的最大天数。
      -W 用户密码到期前,提前收到警告信息的天数。
      -E 帐号到期的日期。过了这天,此帐号将不可用。
      -d 上一次更改的日期
      -I 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
      -l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期

3、命令的历史限制

source /etc/profile   ###刷新

 ./etc/profile   ###另一种刷新方式

vim ~/.bash_history  ###历史命令记录存储在.bash_history里

echo " " > .bash_history   ###清空历史命令记录 .bash_history

history -c   ###临时删除
限制命令长度
在vim /etc/profile空白处添加
export  HISTSIZE=100 就可以限制只显示100行
保存退出,再用source 刷新一下就OK
要想永久删除历史记录就在文件配置里面写一行代码

在.bashrc配置文件里面加入一行代码
echo " ">~/.bash_history
保存退出,重启就可

二、使用su命令切换用户

1、用途

  • 用途:Substitute User,切换用户
  • 格式:su - 目标用户

2、PAM安全验证

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

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

三、使用sudo机制提升权限

1、sudo命令用途

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

2、sudo命令参数

sudo  [选项]  命令

-l:列出用户在主机上可用的和被禁止的命令,一般配置好/etc/sudoers后,要用这个命令来查看和测试是不是配置正确的;

-v:验证用户的时间戳,如果用户运行sudo后,输入用户的密码后,在短时间内可以不用输入口令来直接进行sudo操作

-v:可以跟踪最新的时间戳

-u:指定以以某个用户执行特定操作

-k删除时间戳,下一个sudo命令要求用求提供密码

(1)在lisi用户下挂载时,没有权限

(2)在visudo里面给lisi用户提权限,找到root字符所在的行插入如下图

(3)解挂载也是一样的在这个配置文件

3、用户别名

用户别名的语法格式:

1、User_Alias

用户别名:包含用户、用户组(%组名(使用%引导))、还可以包含其他其他已经用户的别名User_Alias OPERATORS=zhangsan,tom, lisi。

2、Host_Alias

主机别名:主机名、IP、网络地址、其他主机别名!取反Host_Alias MAILSVRS=smtp, pop。

3、Cmnd_Alias

命令路劲、目录(此目录内的所有命令)、其他事先定义过的命令别名cmnd_Alias PKGTOOLS=/ bin/ rpm,/ usr/bin/yum。
相关推荐
wenyue11214 分钟前
Ease Monitor 会把基础层,中间件层的监控数据和服务的监控数据打通,从总体的视角提供监控分析
运维·中间件·监控
量子网络10 分钟前
debian 如何进入root
linux·服务器·debian
时光の尘13 分钟前
C语言菜鸟入门·关键字·float以及double的用法
运维·服务器·c语言·开发语言·stm32·单片机·c
我们的五年17 分钟前
【Linux课程学习】:进程描述---PCB(Process Control Block)
linux·运维·c++
运维老司机40 分钟前
Jenkins修改LOGO
运维·自动化·jenkins
D-海漠1 小时前
基础自动化系统的特点
运维·自动化
我言秋日胜春朝★1 小时前
【Linux】进程地址空间
linux·运维·服务器
C-cat.1 小时前
Linux|环境变量
linux·运维·服务器
yunfanleo2 小时前
docker run m3e 配置网络,自动重启,GPU等 配置渠道要点
linux·运维·docker
糖豆豆今天也要努力鸭2 小时前
torch.__version__的torch版本和conda list的torch版本不一致
linux·pytorch·python·深度学习·conda·torch