减少记录的命令条数
方式一 vi /etc/profile ## /HISTSIZE 查看这个查参数 假设后面时2000,把它改下200,这时候他记录的命令就是200条 wq ##保存 source /etc/profile ##刷新一下,生效 方式二 还有一种改发,把当前HISTSIZE改下 export HISTSIZE=200 立马生效大多数 Linux 服务器并不建议用户直接以 root 用户进行登录。一方面可以大大减少因误操作而导致的破坏,另一方面也降低了特权密码在不安全的网络中被泄露的风险。鉴于这些原因,需要为普通用户提供一种身份切换或权限提升机制,以便在必要的时候执行管理任务。
Linux 系统为我们提供了 su、sudo 两种命令,其中 su 命令主要用来切换用户,而 sudo命令用来提升执行权限。
使用 su 命令,可以切换为指定的另一个用户,从而具有该用户的所有权限。
密码验证 root -》任意用户,不验证密码 普通用户-》其他用户,验证目标用户的密码 su - root 带- 选项表示将使用目标用户的登录shell环境 whoami 查看一下现在是什么账户 限制使用su命令的用户 将允许使用的su命令的用户加入wheel组 启用pam_wheel认证模块 gpasswd -a tangtang wheel 将tangtang账户加入wheel组中 [root@localhost ~]# vi /etc/pam.d/su #%PAM-1.0 auth sufficient pam_rootok.so #Uncomment the following line to implicitly trust users in the "wheel" group. #auth sufficient pam_wheel.so trust use_uid #Uncomment the following line to require a user to be in the "wheel" group. #auth required pam_wheel.so use_uid ###去掉这里的#号,启用pam_wheel认证模块 vi /etc/login.defs ##进入这个里面编辑 SU_WHEEL_ONLY=yes ##仅允许wheel里面的用户登录(插入到最后)安全日志文件 /var/log/secure
PAM认证原理 PAM 认证一般遵循的顺序:Service(服务)→PAM(配置文件)→pam_*.so;
PAM 认证首先要确定哪一项服务,然后加载相应的 PAM 的配置文件(位于/etc/pam.d 下),最后调用认证文件(位于/lib/security 下)进行安全认证;
用户访问服务器的时候,服务器的某一个服务程序把用户的请求发送到 PAM 模块进行认证。不同的应用程序所对应的 PAM 模块也是不同的。如果想查看某个程序是否支持 PAM 认证,可以用 ls 命令进行查看,
每一行都是一个独立的认证过程; 每一行可以区分为三个字段:n 认证类型n 控制类型n PAM 模块及其参数
PAM 认证类型包括四种 认证管理(authentication management):接受用户名和密码,进而对该用户的密码进行认证;
帐户管理(account management):检查帐户是否被允许登录系统,帐号是否已经过期,帐号的登录是否有时间段的限制等;
密码管理(password management):主要是用来修改用户的密码;
会话管理(session management):主要是提供对会话的管理和记账。
调整 BIOS 引导设置 将第一优先引导设备(First Boot Device)设为当前系统所磁盘。
禁止从其他设备(如光盘、U 盘、网络等)引导系统,对应的项设为“Disabled”。
将 BIOS 的安全级别改为“setup”,并设置好管理密码,以防止未授权的修改
限制更改GRUB引导参数 为 GRUB 菜单设置的密码建议采用“grub2-mkpasswd-pbkdf2”命令生成,表现为经过PBKDF2 算法加密的字符串,安全性更好。生成密码后在/etc/grub.d/00_header 配置文件中,添加对应的用户、密码等配置
grub2-mkpasswd-pbkdf2 ##根据提示指定密码 cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak cp /etc/grub.d/00_header /etc/grub.d/00_header.bak vim /etc/grub.d/00_header ##将下面内容添加到文件最后 cat << EOF set superusers="root" password_pbkdf2 root grub.pbkdf2.sha512.10000.D294CAC961BC4FC289D217D99D5D7DE 263B314E69A1653B9EE8CC2484A7108BED00D810EE2C78A02DD4FAA4F95EC0DC7BF05C3D5BD4F 30ACFC4E9AE62C0D2789.AC5832427DB5E6BD0FD38EE05DD86010768F5743C2B7C46794A0C85D 8F8DC6FA18C78BDEBC51F09465FA31772F24AD54D271439445E902F9E035F43F801F4239 EOF [root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg ##生成新的grub.cfg 文件重新开机进入进入GRUB菜单 需要根据提示输入正确的GRUB菜单
将 john-1.8.0.tar.gz压缩包放进opt目录下 方法一 cd /opt ##进入opt目录下 tar zxvf john-1.8.0.tar.gz ##解压这个压缩包 cd /john-1.8.0 ##进入解压好的这个文件里面 cd src/ ##进入src子目录中 make clean linux-x86-64 ##执行这条命令,执行好之后会在run下面生成一个可执行的john文件 cp -p /etc/shadow /root/shadow.txt ##将shadow文件备份到root下面 cd run/ ##进入run界面 ./john /root/shadow.txt ## 执行强力破解密码 方法二 使用密码字典文件 cd …/run ##进入run界面 ll ##可以看到passwork.lst 这个文件 vi passwork.lst ##进去到最后加入密码 wq ###保存 退出 ./john --wordlist=./password.lst /root/shadow.txt ##密码字典破解密码 vi john.pot ##这里面可以看到破解的密码 :>john.pot ##清空已经破解的账户列表,以便重新分析
nmap [扫描类型] [选项] <扫描目标> -p 指定扫描端口
-n 禁用反向dns解析
-sS TCPSYN扫描(半开扫描);只向目标发出SYN数据包,如果收到SYN/ACK响应包就认为目标端口正在监听,并立即断开连接;否则认为目标端口并未开放
-sF TCP FIN扫描:开放的端口会忽略这种数据包,关闭的端口会回应RST数据包。许多防火墙只对SYN数据包进行简单过滤,而忽略了其他形式的TCP攻击包。这种类型的扫描可间接检测防火墙的健壮性
-sU UDP扫描:探测目标主机提供哪些UDP服务,UDP扫描的速度会比较慢
-sP ICMP扫描:类似于ping检测,快速判断目标主机是否存活,不做其他扫描
P0 跳过ping检测:这种方式认为所有的目标主机是存活的,当对方不响应ICMP请求时,使用这种方式可以避免因无法ping通而放弃扫描 mount /dev/cdrom /mnt 挂载光盘 cd /mnt/Packages/ 进Packages目录下 rpm -ivh nmap-6.40-7.el7.x86_64.rpm 解压这个网络扫描文件 nmap 127.0.0.1 扫描常用的TCP的端口 nmap -sU 127.0.0.1 扫描常用的UDP端口 nmap -p 21 192.168.1.0/24 检测192.168.1.0/24 网段中有哪些主机提供FTP服务 nmap -n -sP 192.168.1.0/24 检测192.168.1.0/24网段中有哪些存活主机() nmap -p 139,445 192.168.1.100-200 检测IP在192.168.1.100-200的主机是否开启文件共享服务