锁定帐号文件passwd和shadow
使用chattr命令,可以锁定文件;lsattr命令可以查看权限
格式:chattr [选项] 文件名(可多跟)
格式:lsattr 文件名
选项 | 作用 |
---|---|
-a | 让文件和目录仅供附加用途,即只能往里面追加数据,但不能删除,适用于各种日志文件 |
-i | 不得任意更动文件或目录 |
对已存在用户
使用chage命令,对已存在用户进行修改
格式:chage [选项] [参数] [用户名]
选项 | 作用 |
---|---|
-m | 密码可更改的最小天数,0 代表任何时候都可以更改密码 |
-M | 密码保持有效的最大天数 |
-w | 用户密码到期前,提前收到警告信息的天数 |
-E | 帐号到期的日期,过了这天,此帐号将不可用 |
-d | 上一次更改的日期 |
-I(大i) | 停滞时期,如果一个密码已过期这些天,那么此帐号将不可用 |
-l | 例出当前的设置,由非特权用户来确定他们的密码或帐号何时过期 |
Shell 环境的命令历史机制为用户提供了极大的便利,但另一方面也给用户带来了潜在的风险。只要获得用户的命令历史文件,该用户的命令操作过程将会一览无余,如果曾经在命令行输入明文的密码,则无意之中服务器的安全壁垒又多了一个缺口。 Bash 终端环境中,历史命令的记录条数由变量 HISTSIZE 控制,默认为 1000 条。通过修改 /etc/profile 文件中的 HISTSIZE 变量值,可以影响系统中的所有用户。例如,可以设置最多只记录 200 条历史命令。
即超过多长时间,系统自动登出
su,全称 switch user,切换用户
sudo,全称 superuser do,允许系统管理员让普通用户执行一些或者全部的 root 命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录和管理时间,同样也提高了安全性;sudo使一般用户不需要知道超级用户的密码即可获得权限。
在一般用户需要取得特殊权限时,其可在命令前加上 sudo,此时sudo将会询问该用户自己的密码(以确认终端机前的是该用户本人),回答后系统即会将该命令的进程以超级用户的权限运行。之后的一段时间内(默认为5分钟,可在/etc/sudoers自定义),使用sudo不需要再次输入密码。由于不需要超级用户的密码,部分Unix系统甚至利用sudo使一般用户取代超级用户作为管理帐号,例如Ubuntu、Mac OS X等。
sudo特性:
root:列名为user,即用户
第一个ALL:列名为登入主机,可以是主机名,也可以是主机IP
第二个ALL:(ALL),列名为代表用户,即用什么样的用户身份来执行命令
第三个ALL:列名为运行命令,必须使用绝对路径
%wheel:列名为组,开头必须加%,其余都一样
同样,sudoers文件也支持别名
sudo别名有四种类型:
User_Alias MYUSERS=hang,hang5
Host_Alias MYHOSTS=ALL
Runas_Alias RUN=(root)
Cmnd_Alias MYCMNDS=/sbin/*,!/sbin/reboot,!/sbin/poweroff,!/sbin/init,!/usr/bin/rm
MYUSERS MYHOSTS=(root) NOPASSWD:MYCMNDS
这条命令的意思是:hang 和 hang5 可以通过所有主机登入,并且可以使用 root 权限执行除 reboot、poweroff、init、rm 之外的所有超级管理员命令。
还有子目录:
vim /etc/sudoers.d/test,在 /etc/sudoers.d目录下创建一个test文件
(不仅可以修改sudoers文件,passwd文件也可修改)
所以,我们要将test文件权限设置为只读,这样别人无法修改test文件,而我们如果忘记了root密码,可以根据test文件中的设置的用户登录,从而再次获得管理员权限。
在之前的文章中,我们讲述了当忘记root密码时的,我们该如何破解密码的操作。
Linux登录密码忘记怎么办
更改文件配置(适用于所有)
定义每个菜单项的所有脚本都存放在**/etc/grub.d**目录中,这些脚本的名称必须有两位的数字前缀,其目的是构建GRUB 2菜单时定义脚本的执行顺序以及相应菜单项的顺序,比如00_header文件首先被读取。
文件 | 描述 |
---|---|
00_header | 设置grub默认参数 |
10_linux | 系统中存在多个linux版本 |
20_ppc_terminfo | 设置tty控制台 |
30_os_prober | 设置其他分区中的系统(硬盘中有多个操作系统时设置) |
40_custom和41_custom | 用户自定义的配置 |
反之,要想允许普通用户登录,将该文件删除就行。
tty一般指终端,是最上层的终端,即直接与linux相通信的一个终端。
在Linux中,端口扫描工具有很多,我们今天介绍的是nmap。
端口扫描在工作中作用还是有的,比如被黑客攻击时,实用端口扫描工具可以扫描自身开放了那些无用的端口,然后根据端口号,将无用的服务停掉(等于将端口关闭),这样就不太会被攻击,但如果真想搞你,这个就只能学习安全技术了。
首先,确认你的虚拟机中有没有安装nmap,使用 rpm -q namp 即可查看,如果没有安装,就 yum install -y nmap 安装即可
格式:nmap [选项] 想扫描的IP地址/掩码(可以是具体的某一台机器的IP,也可以是一个网段,扫描网段会扫描该网段上的所有在线的IP)
选项 | 作用 |
---|---|
-p | 指定扫描的端口 |
-n | 禁用反向DNS解析(可以加快扫描速度) |
-sT | TCP连接扫描,这是完整的TCP扫描方式(默认扫描类型),用来建立一个TCP连接,如果成功则认为目标端口正在监听服务,否则认为目标端口并未开放 |
-sU | UDP扫描,探测目标主机提供哪些UDP服务,UDP扫描的速度会比较慢 |
-sP | ICMP 扫描,类似于ping检测,快速判断目标主机是否存活,不做其他扫描 |
nmap的用法还有很多很多,上述表格只讲述了几个基本的、常用的选项,如有感兴趣的同学,完全可以百度、B站。