日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

服務器nginx權限被拒絕解決案例_nginx

作者:沈二到不行 ? 更新時間: 2022-11-08 編程語言

主題

現在服務器資產多種多樣,習慣了阿里云的保姆式配置,其他私有云的裝機配置各有各的風格,今天聊聊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環境之前一直淺用,之后算是有較多的涉足,沉淀下來的相關內容也會經常去完善補充,部署參考,工作久了很多對自身來說困難的事情,是沒辦法繞過去或者退縮的,一往無前吧、永遠的少年

原文鏈接:https://juejin.cn/post/7143557803549360136

欄目分類
最近更新