CentOS 7系统安全之账号安全

一、系统账号清理

在 Linux 系统中,除了超级用户 root 之外,还有其他大量账号只是用来维护系统运作、启动或保持服务进程,一般是不允许登录的,因此也称为非登录用户账号。为了确保系统的安全,这些用户账号的登录 Shell 通常被设为/sbin/nologin,表示禁止终端登录。

对于 Linux 服务器中长期不用的用户账号,若无法确定是否应该删除,可以暂时将其锁定(具体操作可参照账户管理篇https://blog.51cto.com/14449521/2430270)。
如果服务器中的用户账号已经固定,不再进行更改,还可以采取锁定账号配置文件的方法。如图我们执行“chattr +i /etc/passwd /etc/shadow”命令锁定账号文件,在执行“lsattr /etc/passwd /etc/shadow”命令可以看到找文件已锁定,无法添加其他用户。

如果锁定了账号文件后需要添加新的用户,可以执行“chattr -i /etc/passwd /etc/shadow”命令解锁账号文件即可添加去创建新的用户了。

二、密码安全控制

1、在不安全的网络环境中,为了降低密码被猜出或被暴力破解的风险,用户应养成定期更改密码的习惯,避免长期使用同一个密码。管理员可以在服务器端限制用户密码的最大有效天数,对于密码已过期的用户,登录时将被要求重新设置密码,否则将拒绝登录。
如图我们执行“vim /etc/login.defs”命令进入配置文件将密码有效期设为30天。


下面我们创建用户新用户然后执行“vim /etc/shadow”命令查看一下新用户的密码有效期。

2、然而针对已有的用户我们可以执行“chage -M 30 wangwu”命令来修改已有账号的密码有效期。

3、在某些特殊情况下,如要求批量创建的用户初次登录时必须自设密码,根据安全规划统一要求所有用户更新密码等,可以由管理员执行强制策略,以便用户在下次登录时必须更改密码。如图我们执行“chage -d 0 wangwu”命令要求该用户下一次登录时重设密码。

三、命令历史限制

Shell 环境的命令历史机制为用户提供了极大的便利,但另一方面也给用户带来了潜在的风险。只要获得用户的命令历史文件,该用户的命令操作过程将会一览无余,如果曾经在命令行输入明文的密码,则无意之中服务器的安全壁垒又多了一个缺口。
如图我们执行“vim /etc/profile”命令进入配置文件修改HISTSIZE 变量值,即可修改历史命令记录,再执行“source /etc/profile”命令生效环境变量即可。

下面我们来执行“history”命令查看一下历史命令记录。

四、终端自动注销

Bash 终端环境中,还可以设置一个闲置超时时间,当超过指定的时间没有任何输入时即自动注销终端,这样可以有效避免当管理员不在时其他人员对服务器的误操作风险。闲置超时由变量 TMOUT 来控制,默认单位为秒(s)。 

如图我们执行“vim /etc/profile”命令进入配置文件修改闲置超时由变量 TMOUT,再执行“source /etc/profile”命令生效环境变量即可。

下一篇我们将学习CentOS 7之用户切换与提权,尽请期待!

原文地址:https://blog.51cto.com/14449521/2432790

时间: 2024-10-29 04:01:03

CentOS 7系统安全之账号安全的相关文章

Centos修改系统时间

本人在下午在做nginx日志访问实验成功后发生访问的记录的时间不对,故特地在往上搜寻了centos修改系统时间的命名,呵呵.虽然简单,但是以前也曾经操作过,容易忘记,所以还是收藏起来以便以后用的时候忘记呢. #date 查看系统时间 如下图所示 2 #date -s 修改时间 看下面的例子#date -s  03/04/2013(将系统日期设定为2013年03月04日) 3 #date -s  110:38(将系统时间设定为上午 10:38) 4 修改完后执行:clock -w  ,强制将时间写

CentOS 6系统下安装 JDK1.6

CentOS 6系统下安装 JDK1.6 JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品.自从Java推出以来,JDK已经成为使用最广泛的Java SDK.JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库.下面我们就来学习如何在CentOS系统下安装 JDK. 一.CentOS系统创建安装目录 #mkdir /usr/java 二.下载 先去 www.oracle.com 网站寻找到 最新jdk1

CentOS 7系统之 lamp ( module )详解

         安装要求:CentOS 7系统之 lamp ( module ) (1) 三者分离于两台主机: (2) 一个虚拟主机用于提供phpMyAdmin:另一个虚拟主机用于提供wordpress: (3) xcache (4) 为phpMyAdmin提供https虚拟主机:   安装环境:         IP        系统        安装软件     192.168.1.103       CentOS 7 httpd,php ,wordpress,phpMyAdmin  

Centos Linux 系统破解密码  

Centos Linux 系统密码破解 本破解使用单用户模式手工破解 使用系统:Centos 5/6 进入开机界面时,按"↓"进入GRUB 界面,如下图所示: 根据提示按"e"编辑,会出现如下图所示: 选择第2选项,继续按"e"编辑,在最后添加"single",如下图所示: 按"Enter"键保存,会自动回到上级界面,按"b"键会自动从单用户模式重启,重启会自动登录到单用户模式,如下图所

CentOS 6系统中/boot恢复被删除的/boot分区 简单介绍

在CentOS 6系统中,因为不小心或操作失误导致boot分区被删除, 遇到这种情况是否能够恢复被删除的boot分区呢? 1.首先利用centos6镜像进入linux rescue救援模式. 2.启动sshd服务,查看eth0获取的ip地址,然后用ssh secure shell 连接. SSH Secure Shell 3.2.9 (Build 283) Copyright (c) 2000-2003 SSH Communications Security Corp -  http://www

Win7+CentOS双系统,最清晰细致的教程!

大概一年前学了一段时间Linux,但没有坚持下来--最近又想开始看,以前希望看到Linux在物理机下的运行情况而不是仅仅在虚拟机下运行,所以尝试着在已经安装了Win7的系统下安装CentOS,实现双系统切换使用的目的.以前没时间,现在把我的方法给大家介绍一下,希望对大家有帮助. 注意: 1.由于涉及到对硬盘操作,请妥善备份数据,避免损失. 2.为了达到每个步骤都有图片覆盖,我使用了虚拟机来进行演示,不过请大家放心,我已经在自己的物理机上成功实现了. 3.我的步骤是绝对正确和缺一不可的,大家一定要

常用的CentOS 7系统yum源集合

常用的CentOS 7系统yum源集合 yum源对于linux系统的安装有非常大的帮助了,下面小编为各位整理了常用的CentOS 7系统yum源集合了,希望这篇文章能够对各位有所帮助的哦. 记录几个常用的CentOS 7下的yum源,包括PHP7,MariaDB,Redis,Nginx等,以及阿里云源,方便虚拟机或云主机上安装这些软件. 1.PHP7 remi源 使用remi源: $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-

CentOS 6系统救援模式

CentOS 6系统救援模式 Linux学习笔记 王振中 M21 马克飞象 在学习了CentOS 5.6系统启动流程与启动故障排除之后,为了加深印象进行了如下破坏性尝试. 删除/boot目录与/etc/fstab文件后尝试修复系统 1. 首先是第一步删除/boot目录与/etc/fstab 删除/boot /etc/fstab 可以看到虽然boot目录无法删除但是目录中的文件已经全部删掉了. 2. 重新启动因为没有了/etc/fstab文件和boot目录系统已经无法启动,只能通过光盘引导进入系统

CentOS 7系统添加启动项

CentOS 7系统已经把CentOS 6的 runlevel 系统服务管理替换成了systemd.在 /etc/rc[0-6S].d 下添加启动项已经不能在系统启动的时候自动执行,需要通过新的 systemd.unit 配置添加启动项. systemd 特点 1. 可以指定unit间的依赖关系 2. 可以控制unit间的执行顺序或允许它们并发执行 简单的例子 该例子的功能是通过systemd配置一个启动项 1. 在 /usr/lib/systemd/system 目录下创建一个文件 myser