服務(wù)器nginx權(quán)限被拒絕解決案例
主題
現(xiàn)在服務(wù)器資產(chǎn)多種多樣,習(xí)慣了阿里云的保姆式配置,其他私有云的裝機(jī)配置各有各的風(fēng)格,今天聊聊nginx突發(fā)狀況,權(quán)限被拒絕的問(wèn)題相關(guān)排查過(guò)程及解決辦法。
經(jīng)過(guò)
本來(lái)以為是個(gè)相當(dāng)愉快的過(guò)程,上一篇說(shuō)明了服務(wù)器安全原因,相關(guān)網(wǎng)絡(luò)環(huán)境的排查,這次繼續(xù)說(shuō)一說(shuō)關(guān)于nginx代理遇到的問(wèn)題 先說(shuō)說(shuō)表象,原本的服務(wù)器已經(jīng)預(yù)裝了nginx找到相關(guān)配置進(jìn)行設(shè)置以后,還是無(wú)法訪問(wèn)
ps -aux | grep nginx //查看nginx進(jìn)程情況 netstat -anp | grep :80 //查看相關(guān)端口已正常啟動(dòng)
在確定相關(guān)nginx已經(jīng)啟動(dòng)的情況下,發(fā)現(xiàn)代理的網(wǎng)站無(wú)法訪問(wèn),接口相關(guān)的500可以正常返回
curl 127.0.0.1:80/web //驗(yàn)證訪問(wèn)內(nèi)容 /var/log/nginx/ //查看相關(guān)日志信息
或者用一下命令查看
systemctl status nginx.service -l
經(jīng)過(guò)對(duì)錯(cuò)誤日志的排查發(fā)現(xiàn)訪問(wèn)網(wǎng)站靜態(tài)網(wǎng)頁(yè)時(shí),相關(guān)異常為 'Permission denied',這種情況查了很多資料,
最終解決辦法
chcon命令是修改對(duì)象(文件)的安全上下文,比如:用戶、角色、類型、安全級(jí)別。也就是將每個(gè)文件的安全環(huán)境變更至指定環(huán)境。
SeLinux概念作用
系統(tǒng)開(kāi)啟了SeLinux
,受到了SeLinux
的限制 先說(shuō)說(shuō)SeLinux的概念和作用
selinux(Security-Enhanced Linux)安全增強(qiáng)型linux,是一個(gè)Linux內(nèi)核模塊,也是Linux的一個(gè)安全子系統(tǒng)。
三種模式:
Enforcing:強(qiáng)制模式,在selinux運(yùn)作時(shí),已經(jīng)開(kāi)始限制domain/type。
permissive: 警告模式,在selinux運(yùn)作時(shí),會(huì)有警告訊息,但不會(huì)限制domain/type的存取。
disabled: 關(guān)閉模式。
可用getenforce查看selinux狀態(tài)
selinux對(duì)文件的作用:
當(dāng)開(kāi)啟selinux后,selinux會(huì)給每個(gè)文件加載標(biāo)簽context,安全上下文必須配對(duì),否則文件不能訪問(wèn) 查看下selinux策略配置(找到能生效的文件夾和當(dāng)前發(fā)布的文件夾權(quán)限區(qū)別,進(jìn)行相關(guān)的設(shè)置)
ls -lrtZ /usr/share/nginx/html
chcon -R -t httpd_sys_content_t /home/xx/ nginx -s reload
最終解決了相關(guān)問(wèn)題,以下是進(jìn)行的一些無(wú)效嘗試,可能某些服務(wù)器環(huán)境可以生效
無(wú)效嘗試
- 發(fā)布文件夾授權(quán)的嘗試
sudo chmod o+x /home/xxx/
- 關(guān)于nginx配置文件/etc/nginx/nginx.conf,指定用戶的嘗試,依然無(wú)效
user nginx; ->更改為 user root nginx -s reload
- 其他比較粗暴一點(diǎn)兒的教程要么直接關(guān)閉或臨時(shí)性解決
setenforce 0 ##設(shè)置SELinux 成為permissive模式 #setenforce 1 ##設(shè)置SELinux 成為enforcing模式
永久生效 修改/etc/selinux/config
文件,將SELINUX=enforcing
改為SELINUX=disabled
,重啟機(jī)器 沒(méi)敢關(guān)閉這個(gè)安全策略
總結(jié)
、我這種吸引bug的體質(zhì),不配順順利利完成任務(wù)、服務(wù)器的問(wèn)題在最開(kāi)始上班時(shí),windows環(huán)境下經(jīng)常最頭疼的就是服務(wù)器環(huán)境的預(yù)裝上線,常常因?yàn)檫@個(gè)問(wèn)題搞到1點(diǎn)多,但那會(huì)羈絆少,懷著學(xué)習(xí)和對(duì)事兒的認(rèn)真,再加上一塊和組員和領(lǐng)導(dǎo)搓一頓,幸福感滿滿。
其后也帶過(guò)很多人,合作過(guò)許多人、形形色色的,慢慢的發(fā)現(xiàn)越往后入行的很多人害怕環(huán)境部署,害怕出問(wèn)題,所以拒絕去嘗試部署。動(dòng)輒就是 "福報(bào)" 和 "PUA" 防身,非是站在道德制高點(diǎn)去指摘,很多事情過(guò)猶不及,盲目的隨大流去指摘,人生活和工作都是在為自己負(fù)責(zé),盡最大的努力,做最好的自己、莫作“總有刁民想要害朕”的心態(tài)太久,實(shí)在不行,換個(gè)環(huán)境解放局限性。
linux環(huán)境之前一直淺用,之后算是有較多的涉足,沉淀下來(lái)的相關(guān)內(nèi)容也會(huì)經(jīng)常去完善補(bǔ)充,部署參考,工作久了很多對(duì)自身來(lái)說(shuō)困難的事情,是沒(méi)辦法繞過(guò)去或者退縮的,一往無(wú)前吧、永遠(yuǎn)的少年
以上就是服務(wù)器nginx權(quán)限被拒絕解決案例的詳細(xì)內(nèi)容,更多關(guān)于nginx服務(wù)器權(quán)限拒絕的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
詳解Nginx服務(wù)器的nginx-http-footer-filter模塊配置
這篇文章主要介紹了Nginx服務(wù)器的nginx-http-footer-filter模塊配置,nginx-http-footer-filter用作在請(qǐng)求的頁(yè)面底部插入代碼,需要的朋友可以參考下2016-01-01詳解Nginx中HTTP的keepalive相關(guān)配置
這篇文章主要介紹了Nginx中HTTP的keepalive相關(guān)配置,以及Nginx的Httpd守護(hù)進(jìn)程相關(guān)的keepalive timeout配置,需要的朋友可以參考下2016-01-01Nginx 實(shí)現(xiàn)灰度發(fā)布的三種方法總結(jié)
這篇文章主要介紹了Nginx 實(shí)現(xiàn)灰度發(fā)布的三種方法總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-05-05Nginx配置SSL證書(shū)部署HTTPS網(wǎng)站的方法(頒發(fā)證書(shū))
這篇文章主要介紹了Nginx配置SSL證書(shū)部署HTTPS網(wǎng)站的方法(頒發(fā)證書(shū)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06