Nginx问题:connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream
Jacky
Nginx
2022-06-07
13
nginx错误信息
2022/06/07 16:29:19 [crit] 12441#12441: *91 connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream, client: 172.16.0.19, server: 172.16.0.19, request: "GET /api/demo/index HTTP/1.1", upstream: "http://127.0.0.1:8080/demo/index", host: "172.16.0.19"
SElinux安全访问规则原因
SElinux也是Linux操作系统的一种安全访问规则。用于确定哪个进程可以访问哪些文件、目录和端口的一组安全规则。保护的对象是服务(进程)、服务对应的文件(目录)、服务对应的端口。 SElinux可以被看作是与标准权限系统并行的权限系统,如果selinux开启,以root身份运行进程,访问文件不光要受用户对文件访问权限的限制,还要受进程对文件selinux上下文类型的限制,否则,就算是root用户运行的进程,也不一定能访问某个文件。
selinux的三种模式(状态)
|名称|模式| 作用| | ------------ | |enforcing |强制模式 |拒绝非法访问并录入日志| |permissive |许可模式(警告模式)| 暂时允许非法访问并录入日志| |disabled |禁用模式 |允许非法访问且不录入日志|
切换selinux的状态
#获取selinux状态
[root@localhost ~]# getenforce
# 临时切换:
[root@localhost ~]# setenforce 0 #临时关闭selinux策略 enforcing -> permissive
[root@localhost ~]# setenforce 1 #临时开启selinux策略 permissive -> enforcing
# 永久切换:
[root@localhost ~]# vim /etc/selinux/config
SELINUX=enforcing/permissive/disabled
[root@localhost ~]# reboot