2026.1.12 Linux提升账户权限

Root用于不能随便给其他人

普通用户提权 sudo

普通用户sudo提权后所有操作的日志文件在

(Ubuntu)/var/log/auth.log

(CentOS)/var/log/secure

sudo与su - 的区别

su - : 切换用户为指定用户

sudo: 提权,默认提权为Root,也可以提权为其他用户,默认5分钟的提权时间,结束后丢失Root权限,提权后,所有操作会被记录

配置sudo文件的三种方法:

sudoedit /etc/sudoers

vim /etc/sudoers

visudo

检查sudo文件

visudo -c

实验、使用普通用户安装apache脚本

使用普通用户登录,执行

vim /etc/sudoers

会提示权限不足

新建一个Utest的新用户,密码为123456

进入Root模式,执行

su -

vim /etc/sudoers

为Utest用户提升权限

在100行,找到root ALL=(ALL) ALL

添加用户名 权限 指定命令

Utest ALL=(ALL) ALL

切换为Utest用户,执行

sudo vim /etrc/sudoers

输入密码123456

这时候可以发现权限能够访问并修改sudoers文件内容。

现在开始安装apache

执行

复制代码
sudo rm -rf /etc/yum.repos.d/*
sudo vim /etc/yum.repos.d/yum.repo

输入指定内容

挂载镜像

sudo mount /dev/cdrom /mnt/

关闭防火墙

sudo systemctl stop firewalld.service

sudo setenforce 0

将文件放至桌面

安装编译环境,执行

sudo yum -y install gcc*

安装依赖关系(这里我已经安装),执行

sudo yum -y install apr apr-devel apr-util apr-util-devel cyrus-sasl-devel expat-devel libdb-devel openldap-devel pcre-devel pcre

解压文件,执行

sudo tar -zxvf /home/ymqs-1/桌面/apr-1.5.2.tar.gz -C /usr/src/

切换目录,执行

cd /usr/src/apr-1.5.2/

指定安装路径,执行

sudo ./configure --prefix=/usr/local/apr

安装,执行

sudo make && sudo make install

切换目录与解压文件,执行

cd /

sudo tar -zxvf /home/ymqs-1/桌面/apr-util-1.5.4.tar.gz -C /usr/src/

切换目录,执行

cd /usr/src/apr-util-1.5.4/

指定安装路径,安装,分别执行

sudo ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

sudo make && sudo make install

执行

cd /

sudo yum -y install pcre-devel openssl-devel zlib-devel

解压文件httpd,执行

sudo tar -zxvf /home/ymqs-1/桌面/httpd-2.4.18.tar.gz -C /usr/src/

切换目录,浏览,执行

cd /usr/src/httpd-2.4.18/

ls

安装文件,执行

sudo ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-sockets

如果提示

checking for APR-util... no configure: error: APR-util not found. Please read the documentation.

↑脚本无法找到APR-util的路径,我们需要指定路径,执行↓

复制代码
sudo ./configure \ --prefix=/usr/local/httpd \
  --with-apr=/usr/local/apr \
  --with-apr-util=/usr/local/apr-util \
  --enable-so \
  --enable-rewrite \
  --enable-charset-lite \
  --enable-cgi \
  --enable-sockets

安装,执行

sudo make && sudo make install

创建链接,执行

sudo ln -s /usr/local/httpd/bin/* /usr/local/bin/

sudo ln -s /usr/local/httpd/include /usr/include

拷贝目录,执行

sudo cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

给予目录权限,执行

sudo chmod a+x /etc/init.d/httpd

设置优先级别,执行

sudo vim /etc/init.d/httpd

添加chkconfig: 35 25 25

保存退出

添加系统自启动

sudo chkconfig --add httpd

设置开机自启动

sudo chkconfig httpd on

配置httpd详细配置文件

vim /lib/systemd/system/httpd.service

进入文档后,将下方内容复制
[Unit]

Description=The Apache HTTP Server

After=network.target

[Service]

Type=forking

PIDFile=/usr/local/httpd/logs/httpd.pid

ExecStart=/usr/local/bin/apachectl $OPTIONS

ExecReload=/bin/kill -HUP $MAINPID

KIllMode=process

Restart=On-failure

RestartSec=42s

[Install]

WantedBy=graphical.target

指定服务器主机名,在http的配置文件将ServerName前的#去掉,执行

sudo vim/usr/local/httpd/conf/httpd.conf

将ServerName前的#去掉,可以按shift+:号,然后输入"/ServerName",可快速定位

使用系统方式启动httpd,执行

sudo /etc/init.d/httpd start

systemctl start httpd

修改主页内容,执行

cd /usr/local/httpd/htdocs/

sudo vim index.html

修改内容

回到CentOS7桌面,执行

firefox 10.10.1.65

显示404 not found,不是我们上方出现的内容,表示没有配置成功

浏览器显示的是nginx,是他占用了80端口,回到终端,执行

sudo systemctl stop nginx

sudo systemctl disable nginx

重新开启httpd服务,执行

sudo systemctl start httpd

sudo systemctl enable httpd

然后回到桌面,再次执行

firefox 10.10.1.65

显示成功

相关推荐
哈基咪怎么可能是AI2 小时前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行19 小时前
Linux和window共享文件夹
linux
Sinclair1 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
木心月转码ing1 天前
WSL+Cpp开发环境配置
linux
Rockbean2 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
茶杯梦轩2 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
崔小汤呀2 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应2 天前
vi编辑器使用
linux·后端·操作系统
何中应2 天前
Linux进程无法被kill
linux·后端·操作系统