服务器nginx权限被拒绝解决案例


Posted in Servers onSeptember 23, 2022

主题

现在服务器资产多种多样,习惯了阿里云的保姆式配置,其他私有云的装机配置各有各的风格,今天聊聊nginx突发状况,权限被拒绝的问题相关排查过程及解决办法。

经过

本来以为是个相当愉快的过程,上一篇说明了服务器安全原因,相关网络环境的排查,这次继续说一说关于nginx代理遇到的问题 先说说表象,原本的服务器已经预装了nginx找到相关配置进行设置以后,还是无法访问

ps -aux | grep nginx  //查看nginx进程情况
netstat -anp | grep :80 //查看相关端口已正常启动

在确定相关nginx已经启动的情况下,发现代理的网站无法访问,接口相关的500可以正常返回

curl 127.0.0.1:80/web //验证访问内容
/var/log/nginx/      //查看相关日志信息

或者用一下命令查看

systemctl status nginx.service -l

经过对错误日志的排查发现访问网站静态网页时,相关异常为 'Permission denied',这种情况查了很多资料,

最终解决办法

chcon命令是修改对象(文件)的安全上下文,比如:用户、角色、类型、安全级别。也就是将每个文件的安全环境变更至指定环境。

SeLinux概念作用

系统开启了SeLinux,受到了SeLinux的限制 先说说SeLinux的概念和作用

selinux(Security-Enhanced Linux)安全增强型linux,是一个Linux内核模块,也是Linux的一个安全子系统。

三种模式

Enforcing:强制模式,在selinux运作时,已经开始限制domain/type。

permissive: 警告模式,在selinux运作时,会有警告讯息,但不会限制domain/type的存取。

disabled: 关闭模式。

可用getenforce查看selinux状态

selinux对文件的作用:

当开启selinux后,selinux会给每个文件加载标签context,安全上下文必须配对,否则文件不能访问 查看下selinux策略配置(找到能生效的文件夹和当前发布的文件夹权限区别,进行相关的设置)

ls -lrtZ /usr/share/nginx/html
chcon -R -t httpd_sys_content_t  /home/xx/
 nginx -s reload

最终解决了相关问题,以下是进行的一些无效尝试,可能某些服务器环境可以生效

无效尝试

  • 发布文件夹授权的尝试
sudo chmod o+x /home/xxx/
  • 关于nginx配置文件/etc/nginx/nginx.conf,指定用户的尝试,依然无效
user nginx; ->更改为 user root
nginx -s reload
  • 其他比较粗暴一点儿的教程要么直接关闭或临时性解决
setenforce 0 ##设置SELinux 成为permissive模式
 #setenforce 1 ##设置SELinux 成为enforcing模式

永久生效 修改/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,重启机器 没敢关闭这个安全策略

总结

、我这种吸引bug的体质,不配顺顺利利完成任务、服务器的问题在最开始上班时,windows环境下经常最头疼的就是服务器环境的预装上线,常常因为这个问题搞到1点多,但那会羁绊少,怀着学习和对事儿的认真,再加上一块和组员和领导搓一顿,幸福感满满。

其后也带过很多人,合作过许多人、形形色色的,慢慢的发现越往后入行的很多人害怕环境部署,害怕出问题,所以拒绝去尝试部署。动辄就是 "福报""PUA" 防身,非是站在道德制高点去指摘,很多事情过犹不及,盲目的随大流去指摘,人生活和工作都是在为自己负责,尽最大的努力,做最好的自己、莫作“总有刁民想要害朕”的心态太久,实在不行,换个环境解放局限性。

linux环境之前一直浅用,之后算是有较多的涉足,沉淀下来的相关内容也会经常去完善补充,部署参考,工作久了很多对自身来说困难的事情,是没办法绕过去或者退缩的,一往无前吧、永远的少年

以上就是服务器nginx权限被拒绝解决案例的详细内容,更多关于nginx服务器权限拒绝的资料请关注三水点靠木其它相关文章!

Servers 相关文章推荐
nginx常用命令放入shell脚本详解
Mar 31 Servers
扩展多台相同的Web服务器
Apr 01 Servers
Nginx URL重写rewrite机制原理及使用实例
Apr 01 Servers
apache基于端口创建虚拟主机的示例
Apr 24 Servers
Nginx缓存设置案例详解
Sep 15 Servers
了解Kubernetes中的Service和Endpoint
Apr 01 Servers
Linux中如何安装并部署Redis
Apr 18 Servers
Windows server 2012 R2 安装IIS服务器
Apr 29 Servers
解决IIS7下无法绑定https主机的问题
Apr 29 Servers
Nginx 配置 HTTPS的详细过程
May 30 Servers
win10+RTX3050ti+TensorFlow+cudn+cudnn配置深度学习环境的方法
Jun 25 Servers
django项目、vue项目部署云服务器的详细过程
Jul 23 Servers
Fluentd搭建日志收集服务
Sep 23 #Servers
Flink 侧流输出源码示例解析
Sep 23 #Servers
修改Nginx配置返回指定content-type的方法
Sep 23 #Servers
Nginx如何配置多个服务域名解析共用80端口详解
Sep 23 #Servers
VMware虚拟机安装 Windows Server 2022的详细图文教程
zabbix如何添加监控主机和自定义监控项
Aug 14 #Servers
教你使用RustDesk 搭建一个自己的远程桌面中继服务器
Aug 14 #Servers
You might like
PHP_MySQL教程-第一天
2007/03/18 PHP
php实现12306余票查询、价格查询示例
2014/04/17 PHP
php结合md5实现的加密解密方法
2016/01/25 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
javascript下判断一个元素是否存在的代码
2010/03/05 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
react.js 获取真实的DOM节点实例(必看)
2017/04/17 Javascript
vue 请求后台数据的实例代码
2017/06/22 Javascript
JavaScript中使用Async实现异步控制
2017/08/15 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
微信小程序实现的绘制table表格功能示例
2019/04/26 Javascript
js图片无缝滚动插件使用详解
2020/05/26 Javascript
[03:36]DOTA2完美大师赛coL战队趣味视频——我演你猜
2017/11/23 DOTA
Python多线程编程(五):死锁的形成
2015/04/05 Python
Python中转换角度为弧度的radians()方法
2015/05/18 Python
Python本地与全局命名空间用法实例
2015/06/16 Python
浅析Python3爬虫登录模拟
2018/02/07 Python
Pytorch释放显存占用方式
2020/01/13 Python
Django实现简单的分页功能
2021/02/22 Python
html5 css3实例教程 一款html5和css3实现的小机器人走路动画
2014/10/20 HTML / CSS
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
阿里巴巴英国:Alibaba英国
2019/12/11 全球购物
电钳专业个人求职信
2014/01/04 职场文书
四年大学自我鉴定
2014/02/17 职场文书
《月球之谜》教学反思
2014/04/10 职场文书
请假条的格式
2014/04/11 职场文书
2014年秋季开学典礼主持词
2014/08/02 职场文书
质量月活动总结
2014/08/26 职场文书
2014年党的群众路线活动个人整改措施
2014/10/28 职场文书
基层工作经验证明样本
2014/11/16 职场文书
北京英文导游词
2015/02/12 职场文书
财务稽核岗位职责
2015/04/13 职场文书
2016年国陪研修感言
2015/11/18 职场文书
Apache SkyWalking 监控 MySQL Server 实战解析
2022/09/23 Servers