回顾CSA,CSA复习
RHCSA == redhat certificate system Administrator
RHCE == redhat certificate engineer
回顾CSA
文件管理
-
创建文件:touch 、重定向、vim
-
阅读文件:cat看短小的文件、vim、head看文件前面部分、tail看文件的尾部内容、more、less看文档使用more和less
-
复制文件:cp复制文件,利用cat和重定向也能实现复制文件的目的
-
移动文件:mv 移动单/多文件,重新起名
-
删除文件:rm -rf r表示递归删除目录 f表示无提示强制删除
-
查找文件:find:可以通过文件名查找 可以通过文件大小查找 可以通过文件的日期信息查找 通过文件的权限查找
- find 要搜索的路径 -name 名字 :通过 文件名搜索
- find 要搜索的路径 -iname 名字 :通过 文件名(不区分大小写)搜索
- find 要搜索的路径 -mtime/-atime/-mmin/-amin/-ctime/-cmin +/- 数字: 通过文件的时间查询
-
创建目录:mkdir 创建目录 -p可以创建多层级目录
-
移动目录:mv
-
复制目录: cp -r
vim
vim :yy 复制光标所在行 p向下粘贴 P向上粘贴 gg回到首行 G回到尾行 dd删除当前行
nyy 复制光标位置以下的n行内容 ndd 删除光标以下的n行内容
:% s/old/new/g 在全文中将new替换掉old
:n1,n2 s/old/new/g 将在n1行到n2之间的 new替换掉old
: s/old/new/g 在光标所在行的所有old替换为new
: s/old/new/ 将光标所在行的第一个old替换为new
/word 全文的word高亮处理
num + 上下左右按键: 向上下左右移动n个字符位置。
^:立刻移动到当前行的行首
$:立刻移动到当前行的行尾
用户管理和权限管理
创建用户:useradd用户添加,userdel用户删除,usermod修改用户信息,passwd修改密码
: groupadd 添加组 groupdel 删除组 groupmod 修改组信息 gpasswd修改组密码 添加组成员 删除组成员 指派组管理员
权限管理:chmod用于修改文件的权限信息。可以使用数字以及权限字的形式修改文件的权限信息。
7 ==>二进制 100(r–)
-
SUID:
SUID 权限一般添加给可执行文件的,当普通用户使用了具有SUID权限的命令,在命令运行期间具备超级管理员权限。
# 查看cat的权限 此时它还不具备 suid权限 [root@xxxxx bin]# ll cat -rwxr-xr-x. 1 root root 68936 Jan 6 2023 cat# redhat此时不能阅读shadow 因为没有权限[redhat@xxxxx ~]$ cat /etc/shadowcat: /etc/shadow: Permission denied# root给cat添加suid权限 [root@xxxxx bin]# chmod u+s /bin/cat# 添加suid后 redhat可以查看shadow[redhat@xxxxx ~]$ cat /etc/shadow root:$6$7HCdz8K1gcTzct0U$R1LpNUCNusO/4lUwtNZdw/ZNJHlfsOAytfkk/D6aSTSWjiPWzJcvpLGHRACTjMRCIQbAlRUWm0f.R5ba26LSR1:20170:0:99999:7:::
-
SGID
SGID权限添加给某个目录后,无论是谁在该目录中创建文件,该文件的归属组跟该目录的归属组一致。此即共享目录。
# 进入到tmp中创建 一个share_dir目录让他拥有SGID权限 [root@xxxxx bin]# cd /tmp/ [root@xxxxx tmp]# mkdir share_dir [root@xxxxx tmp]# chmod g+s /tmp/share_dir/ [root@xxxxx tmp]# chmod a+w share_dir/ [root@xxxxx tmp]# ll /tmp/share_dir/ -d drwxrwsrwx. 2 root root 6 Mar 23 10:40 /tmp/share_dir/# redhat用户在拥有SGID权限的目录中创建文件,该文件归属组都是该目录的归属组 [redhat@xxxxx ~]$ cd /tmp/share_dir/ [redhat@xxxxx share_dir]$ echo helloworld > hw.txt [redhat@xxxxx share_dir]$ ll total 4 -rw-r--r--. 1 redhat root 11 Mar 23 10:42 hw.txt
-
SBIT
当一个目录拥有了SBIT权限时,在该目录中的文件,只有3个人删除,1.root 2.目录的所有者 3.文件的所有者。
SBI是为了达到,谁创建谁管理的目的。
# 创建具有sbit权限的目录 [root@xxxxx tmp]# mkdir sbit_dir [root@xxxxx tmp]# chmod o+t /tmp/sbit_dir/ [root@xxxxx tmp]# ll -d sbit_dir/ drwxr-xr-t. 2 root root 6 Mar 23 10:47 sbit_dir/ [root@xxxxx tmp]# chmod a+w sbit_dir/# redhat在该目录中新增一个文件 [redhat@xxxxx share_dir]$ cd /tmp/sbit_dir/ [redhat@xxxxx sbit_dir]$ touch redhat.txt [redhat@xxxxx sbit_dir]$ ll total 0 -rw-r--r--. 1 redhat redhat 0 Mar 23 10:49 redhat.txt# 新增用户张三 [root@xxxxx tmp]# useradd zhang3 [root@xxxxx tmp]# passwd zhang3 Changing password for user zhang3. New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully.# 让张3用户去删除redhat创建的文件,此时张三删除失败,原因就是该目录具备sbit权限 [zhang3@xxxxx ~]$ cd /tmp/sbit_dir/ [zhang3@xxxxx sbit_dir]$ ls redhat.txt [zhang3@xxxxx sbit_dir]$ rm redhat.txt rm: remove write-protected regular empty file 'redhat.txt'? y rm: cannot remove 'redhat.txt': Operation not permitted
网络管理
numtui
Nuclei
软件管理
rpm:通过本地光盘或其他存储介质安装软件
-
rpm -qf 文件名: 查看某个文件是哪个安装包产生的
-
rpm -ql 包名:查看软件包都会在系统中产生那些文件
-
rpm -qa :查询系统中已经安装的软件,一般用来配合grep命令查看某个软件是否安装
[root@xxxxx ~]# rpm -qa | grep nginx nginx-filesystem-1.20.1-22.el9.noarch nginx-core-1.20.1-22.el9.aarch64 nginx-1.20.1-22.el9.aarch64
yum:通过互联网软件仓库安装软件
yum (dnf)install 包名:安装指定软件
yum(dnf)remove 包名:删除指定的软件
yum(dnf)list : 展示仓库中所有可以安装的软件
yum(dnf)search 包名:使用yum搜索是否存在相关的包名
yum (dnf) provicdes: 产看软件仓库提供了那些nginx相关软件
grep 关键字 文件(字符串) : 将文件(字符串)中包含关键字的行展示出啦
进程管理
所谓的进程就是软件的一次运行。
top
top是一个实时监控系统进程资源占用情况的命令
再开启了top命令状态下:
M:以内存使用率进行排序
P:以CPU使用率进行排序
T:以进程的运行时长进行排序
ps
ps -ef : 对某个进程进行溯源工作。
ps aux : 查看系统中的进程资源占用情况
-a : 表示查看所有的用户进程
-u : 先使用的详情
-x : 显示无用户的所有进程
-e:所有进程
kill
可以将进程关闭,但不止于此,可以将进程暂停,恢复,停止。
[root@xxxxx ~]# ps -aux | grep vim
root 36896 0.0 0.2 229216 8252 pts/1 S+ 16:27 0:00 vim
root 36898 0.0 0.0 221368 1804 pts/2 S+ 16:27 0:00 grep --color=auto vim
[root@xxxxx ~]# kill 36896[root@xxxxx ~]# ps -aux | grep vim
root 37053 0.0 0.3 229216 8328 pts/1 S+ 16:29 0:00 vim
redhat 37054 0.1 0.3 229304 8476 pts/3 S+ 16:29 0:00 vim
zhang3 37055 0.2 0.2 229304 8244 pts/4 S+ 16:29 0:00 vim
root 37057 0.0 0.0 221368 1872 pts/2 S+ 16:29 0:00 grep --color=auto vim
[root@xxxxx ~]# killall vim
后台管理
重置root密码
如果未使用root身份登录系统,同时又遗失了root的密码,此时我们只能通过重置root密码来实现,系统登录
重置步骤如下
# 1.关闭系统
poweroff
# 2.开启系统进入grub界面 按下按键e
# 3.在倒数第二行末尾写入rd.break,写完后按下ctrl+x
# 4.mount -o remount,rw /sysroot
# 5.chroot /sysroot
# 6.passwd root
# 7.touch /.autorelabel
# 8.exit
# 9.exit
apache web服务
-
安装apche,因为apache在linux中名为httpd服务,所以安装时要安装的是httpd而不是apache
[root@xxxxx ~]# yum install httpd -y Updating Subscription Management repositories. Unable to read consumer identityThis system is not registered with an entitlement server. You can use subscription-manager to register.Last metadata expiration check: 0:55:06 ago on Sun 23 Mar 2025 10:52:28 AM CST. Dependencies resolved. ========================================================================================Package Architecture Version Repository Size ======================================================================================== Installing:httpd aarch64 2.4.62-4.el9 appstream 47 k Installing dependencies: ...
-
使用systemctl进行服务的状态查询,服务开启,服务关闭等操作的学习
# 查看系统中的服务状态
[root@xxxxx ~]# systemctl status httpd
○ httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; preset: disabled)Active: inactive (dead)Docs: man:httpd.service(8)# 开启系统中的服务
[root@xxxxx ~]# systemctl start httpd# 关闭系统中的服务
[root@xxxxx ~]# systemctl start httpd# 设置开机自启动 --now表示如果服务没开启则立即开启
[root@xxxxx ~]# systemctl enable --now httpd# 取消开机自启动 --now表示如果服务已经开启了则立即关闭
[root@xxxxx ~]# systemctl disable --now httpd# 重启服务
restart
-
所有的网络服务程序,在访问时都需要通过ip:port形式访问。
而端口号小于1024的都是知名端口,比如说http的端口80,https端口号443, sshd的端口是22
-
修改web服务的端口号,然后通过浏览器来访问
所有服务一定会有一个配置文件,通过修改配置文件就可以完成修改端口,所有的配置一旦修改,必须重启服务才能生效。