Linux-系统管理13-系统安全及应用

                          目录

一、基本安全措施

1.系统账号清理

2.密码安全控制

3.命令历史限制

4.终端自动注销

二、切换用户 su 命令

三、提升权限 sudo 命令

1.su 命令的缺点:

2.sudo 命令

四、开关机安全控制

1.调整 BOIS 引导设置

2.禁用重启热键 Ctrl+Alt+Del

3.gurb 菜单限制

五、弱口令检测 JR(Joth the Ripper)

1.JR(Joth the Ripper)简介

2.安装 JR 工具

六、端口检测 NMAP

1.NMAP 简介

2.NMAP 的扫描语法

3.常用的扫描类型

4.常用选项:


一、基本安全措施

1.系统账号清理

(1)将非登录用户的 shell 设为/sbin/nologin

  • 方法一: usermod -s
  • 方法二: chsh 命令,交互式修改
  • 方法三: chsh -s

示例:

除了上述三种方法,也可以直接 vi 编辑/etc/passwd 文件进行修改。

(2)锁定长期不使用的账号

  • 方法一: passwd -l (将在密文前增加 2 个“!”)解锁 passwd -u 查看 passwd -S
  • 方法二: usermod -L(将在密文前增加 1 个“!”)解锁 usermod -U

示例:

解锁:

除了上述方法,也可以直接 vi 编辑/etc/shadow 文件进行修改。

(3)删除无用的账号

  • userdel [-r] 用户名 (此处不过多解释,详见 Linux 系统管理 03)

(4)锁定账号文件 /etc/passwd、/etc/shadow

锁定:chattr +i /etc/passwd /etc/shadow
解锁:chattr -i /etc/passwd /etc/shadow
查看:lsattr /etc/passwd /etc/shadow

示例:

 注意:锁定后即使是超户,也不能修改该文件,即不能创建、删除、修改用户信息。

2.密码安全控制

(1)设置密码有效期

修改某个已存在用户的密码有效期:

chage -M 天数 用户名 passwd -x 天数 用户名

示例:

设置今后添加用户时的默认密码有效期:

  • 方法:vi 编辑/etc/login.defs 文件,修改“PASS_MAX_DAY”后面的数值

示例:

[root@linuxli ~]# vi /etc/login.defs

(2)要求用户下次登录时修改密码

方法:chage -d 0 用户名

示例:

[root@linuxli ~]# chage -d 0 user1

3.命令历史限制

(1)减少历史的命令条数

  • 方法一:

vi 编辑/etc/profile 文件,修改“HISTSIZE=”后面的数值

  • 方法二:

export HISTSIZE=数值

示例:

  • 方法一:
##vim编辑/etc/profile 文件,修改“HISTSIZE=100”
[root@linuxli ~]# vim /etc/profile

(2)注销时自动清空历史命令

  • 方法e:

vi 编辑宿主目录下的“.bash_logout”文件,添加“history -c”

示例:

##设置 linuxli 用户注销时自动清空历史命令
[root@linuxli ~]# vi ~linuxli/.bash_logout

4.终端自动注销

  • 方法一:

vim 编辑/etc/profile 文件,添加“TMOUT=数值”

  • 方法二:

export TMOUT=数值

示例:

闲置 600 秒后自动注销

方法一:vi 编辑/etc/profile 文件,添加“TMOUT=600”
[root@linux ~]# vim /etc/profile

[root@linuxli ~]# source /etc/profile	     //使/etc/profile 配置文件生效,此时全局生效
  • 方法二:
[root@linuxli ~]# export TMOUT=600			仅当前用户环境下生效

二、切换用户 su 命令

1.作用:
切换用户(Substitute User)

2.格式:
su [-] 目标用户 (有“-”初始化环境变量,无“-”环境变量不改变)

3.查看 su 操作记录 安全日志文件:/var/log/secure

三、提升权限 sudo 命令

1.su 命令的缺点:

在使用 su 命令时,不指定用户名默认切换至 root 用户,需要输入 root 密码,但实际生 产中 root 密码是不可以被广泛告知的。如果需要执行 root 用户才有权限的命令,需要通过 sudo 命令或 wheel 组的设置来实现。

2.sudo 命令

(1)作用:
以其他用户身份(默认 root 身份)执行授权的命令

(2)用法:
sudo 授权命令
默认设置为首次执行时,需输入当前用户的登录密码,5 分钟内再次执行 sudo 命 令时则无需再输入密码。

方法一:添加单个用户的 sudo 授权
visudo 或者 vi /etc/sudoers(效果相同),添加配置内容

格式:用户 主机名列表=命令程序列表,命令前加“!”表示“除了”此命令

示例:

(3)配置 sudo 授权

(4)查看 sudo 操作记录 ·方法:

第一步:
visudo 或者 vi /etc/sudoers 添加“Defaults logfile=/var/log/sudo”

第二步:
cat /var/log/sudo

示例:
启用Defaults logfile配置,给amber用户所有/sbin/以及/usr/sbin下的命令执行 权限,除了关机以及重启。

(5)查询授权操作 sudo -l
示例:

四、开关机安全控制

1.调整 BOIS 引导设置

(1)将第一引导设备设为当前系统所在硬盘

(2)禁止其他设备(光盘、U 盘、网络)引导系统

BIOS中可以设置,极个别电脑不支持此功能

(3)将安全级别设为 setup,并设置管理员密码

2.禁用重启热键 Ctrl+Alt+Del

(1)目的:

避免用户误操作

(2)方法:

删除 /usr/lib/systemd/system/ctrl-alt-del.target
恢复Ctrl+Alt+Del按键重启功能
ln -s /usr/lib/systemd/system/reboot.target /usr/lib/systemd/system/ctrl-alt-del.target
init q 不重启,立即生效配置文件

3.gurb 菜单限制

(1)、备份文件以防配置错误可以恢复

[root@linuxli ~]# cd /etc/grub.d/
[root@linuxli ~]# cp 01_users 01_users.bak

(2)、以明文方式设置grub的密码
在/etc/grub.d/01_users文件中指定超级用户,其中root为超级用户的用户名,PassRoot+123为超级用户root的密码,清空该文件并添加以下几行。(用户名和密码按实际情况设置)

[root@linuxli ~]# vim 01_users

cat << EOF
set superusers="root"
password root 123123
EOF

(3)、重新编译生成grub.cfg文件

[root@linuxli ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

(4)、设置密文密码
使用grub2-mkpasswd-pbkdf2命令创建密文

现在我们可以修改/etc/grub.d/01_users

最后:重新编译生成grub.cfg文件

[root@linuxli ~]# grub2-mkconfig -o /boot/grub2/grub.cfg

##重启验证

五、弱口令检测 JR(Joth the Ripper)

1.JR(Joth the Ripper)简介

  • 一款密码分析工具,支持字典式的暴力破解
  • 通过对 shadow 文件的口令分析,可以检测密码
  • 官方网站:http://www.openwall.com/john/

2.安装 JR 工具

(1)tar 包解压

tar xvf john-1.8.0.tar.xz

(2)进到解压后的 src 目录下,执行 make clean

[root@linuxli ~]# cd john-1.8.0/src/
[root@linuxli ~]# make clean linux-x86-64

(3)进到解压后的 run 目录下,执行命令

[root@linuxli ~]# cd ../run/

(4)示例:

字典式暴力破解,可添加内容至字典:

[root@linuxli ~]# vim password.lst

六、端口检测 NMAP

1.NMAP 简介

  • 一款强大的网络扫描、安全检测工具
  • 官方网站:http://nmap.org/
  • 可从光盘中安装 nmap-5.51-3.el6.x86_64.rpm

2.NMAP 的扫描语法

nmap [扫描类型] [选项] <扫描目标>

3.常用的扫描类型

-sS TCP SYN 扫描(半开)
-sT TCP 链接扫描(全开)
-sF TCP FIN 扫描
-sU UDP 扫描
-sP ICMP 扫描
-s0 跳过ping检测【较少使用】

4.常用选项:

  • -n 禁止 DNS 反向解析

  • -p 指定端口号

1.扫描本机开放了哪些 TCP 端口、UDP 端口

2.检测当前 192.168.0.0/24 网段有哪些主机提供 FTP 服务

3.检测 192.168.0.0/24 网段有哪些存活主机

4.检测 192.168.60.100~254/24 有哪些主机开启了文件共享服务

  • Linux 常用端口:
端口号码名称注释
1tcpmuxTCP 端口服务多路复用
5rje远程作业入口
7echoEcho 服务
9discard用于连接测试的空服务
11systat用于列举连接了的端口的系统状态
13daytime给请求主机发送日期和时间
17qotd给连接了的主机发送每日格言
18msp消息发送协议
19chargen字符生成服务;发送无止境的字符流
20ftp-dataFTP 数据端口
21ftp文件传输协议(FTP)端口;有时被文件服务协议(FSP)使用
22ssh安全 Shell(SSH)服务
23telnetTelnet 服务
25smtp简单邮件传输协议(SMTP)
37time时间协议
39rlp资源定位协议
42nameserver互联网名称服务
43nicnameWHOIS 目录服务
49tacacs用于基于 TCP/IP 验证和访问的终端访问控制器访问控制系统
50re-mail-ck远程邮件检查协议
53domain域名服务(如 BIND)
63whois++WHOIS++,被扩展了的 WHOIS 服务
67bootps引导协议(BOOTP)服务;还被动态主机配置协议(DHCP)服务使用
68bootpcBootstrap(BOOTP)客户;还被动态主机配置协议(DHCP)客户使用
69tftp小文件传输协议(TFTP)
70gopher Gopher互联网文档搜寻和检索
71netrjs-1远程作业服务
72netrjs-2远程作业服务
73netrjs-3远程作业服务
73netrjs-4远程作业服务
79finger用于用户联系信息的 Finger 服务
80http用于万维网(WWW)服务的超文本传输协议(HTTP)
88kerberosKerberos 网络验证系统
95supdupTelnet 协议扩展
101hostnameSRI-NIC 机器上的主机名服务
102iso-tsapISO 开发环境(ISODE)网络应用
105csnet-ns邮箱名称服务器;也被 CSO 名称服务器使用
107rtelnet远程 Telnet
109pop2邮局协议版本2
110pop3邮局协议版本3
111sunrpc用于远程命令执行的远程过程调用(RPC)协议,被网络文件系统(NFS)使用
113auth验证和身份识别协议
115sftp安全文件传输协议(SFTP)服务
117uucp-pathUnix 到 Unix 复制协议(UUCP)路径服务
119nntp用于 USENET 讨论系统的网络新闻传输协议(NNTP)
123ntp网络时间协议(NTP)
137netbios-ns在红帽企业 Linux 中被 Samba 使用的 NETBIOS 名称服务
138netbios-dgm在红帽企业 Linux 中被 Samba 使用的 NETBIOS 数据报服务
139netbios-ssn在红帽企业 Linux 中被 Samba 使用的NET BIOS 会话服务
143imap互联网消息存取协议(IMAP)
161snmp简单网络管理协议(SNMP)
162snmptrapSNMP 的陷阱
163cmip-man通用管理信息协议(CMIP)
164cmip-agent通用管理信息协议(CMIP)
174mailqMAILQ
177xdmcpX 显示管理器控制协议
178nextstepNeXTStep 窗口服务器
179bgp 边界网络协
191prosperoCliffod Neuman 的 Prospero 服务
194irc互联网中继聊天(IRC)
199smuxSNMP UNIX 多路复用
201at-rtmpAppleTalk 选路
202at-nbpAppleTalk 名称绑定
204at-echoAppleTalk echo 服务
206at-zisAppleTalk 区块信息
209qmtp快速邮件传输协议(QMTP)
210z39.50 NISOZ39.50 数据库
213ipx互联网络分组交换协议(IPX),被 Novell Netware 环境常用的数据报协议
220imap3互联网消息存取协议版本3
245linkLINK
347fatservFatmen 服务器
363rsvp_tunnelRSVP 隧道
369rpc2portmapCoda 文件系统端口映射器
370codaauth2Coda 文件系统验证服务
372ulistprocUNIX Listserv
389ldap轻型目录存取协议(LDAP)
427svrloc服务位置协议(SLP)
434mobileip-agent可移互联网协议(IP)代理
435mobilip-mn可移互联网协议(IP)管理器
443https安全超文本传输协议(HTTP)
444snpp小型网络分页协议
445microsoft-ds通过 TCP/IP 的服务器消息块(SMB)
464kpasswdKerberos 口令和钥匙改换服务
468photurisPhoturis 会话钥匙管理协议
487saft简单不对称文件传输(SAFT)协议
488gss-http用于 HTTP 的通用安全服务(GSS)
496pim-rp-disc用于协议独立的多址传播(PIM)服务的会合点发现(RP-DISC)
500isakmp互联网安全关联和钥匙管理协议(ISAKMP)
535iiop互联网内部对象请求代理协议(IIOP)
538gdomapGNUstep 分布式对象映射器(GDOMAP)
546dhcpv6-client动态主机配置协议(DHCP)版本6客户
547dhcpv6-server动态主机配置协议(DHCP)版本6服务
554rtsp实时流播协议(RTSP)
563nntps通过安全套接字层的网络新闻传输协议(NNTPS)
565whoamiwhoami
587submission邮件消息提交代理(MSA)
610npmp-local网络外设管理协议(NPMP)本地 / 分布式排队系统(DQS)
611npmp-gui网络外设管理协议(NPMP)GUI / 分布式排队系统(DQS)
612hmmp-indHMMP 指示 / DQS
631ipp互联网打印协议(IPP)
636ldaps通过安全套接字层的轻型目录访问协议(LDAPS)
674acap应用程序配置存取协议(ACAP)
694ha-cluster用于带有高可用性的群集的心跳服务
749kerberos-admKerberos 版本5(v5)的“kadmin”数据库管理
750kerberos-ivKerberos 版本4(v4)服务
765webster网络词典
767phonebook网络电话簿
873rsyncrsync 文件传输服务
992telnets通过安全套接字层的 Telnet(TelnetS)
993imaps通过安全套接字层的互联网消息存取协议(IMAPS)
994ircs通过安全套接字层的互联网中继聊天(IRCS)
995pop3s通过安全套接字层的邮局协议版本3(POPS3)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

改名叫热炸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值