新聞中心
本文談兩個很容易被忽視,又偶爾會突然蹦出來,給我們配置服務(wù)器造成困擾的權(quán)限管理問題。

創(chuàng)新互聯(lián)成立10多年來,這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站策劃、網(wǎng)頁設(shè)計(jì)、域名注冊、網(wǎng)絡(luò)營銷、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗(yàn)好、性價比高、打開快等等,這些對于網(wǎng)站建設(shè)都非常重要,創(chuàng)新互聯(lián)通過對建站技術(shù)性的掌握、對創(chuàng)意設(shè)計(jì)的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。
1、太寬的權(quán)限
有些服務(wù)對權(quán)限的要求會是一個區(qū)間,小了不行,大了也不行。如果這個文件被賦予的權(quán)限不夠,那么肯定不能使用;但是,如果這個文件被賦予的權(quán)限太多了,同樣不能正常使用。
舉例:
問題現(xiàn)象:test帳號使用key無法登錄某ssh服務(wù)器,而同機(jī)器下的test2帳號卻可以登錄。
查看文件權(quán)限:
test@client:~$ls-l~/.ssh/
-rw-------1testtest 16752010-03-2515:15id_rsa
查看了客戶端及服務(wù)器端的.ssh目錄下的公鑰與私鑰權(quán)限,可以看出,并沒有問題。
私鑰必須是600權(quán)限,而公鑰至少是644或者更嚴(yán)格的權(quán)限,這都符合,但依然無法登錄。
test@server:~$ls-la~|grep-w.ssh
drwxr-xr-x2testtest4.0K12-2316:59.ssh
查看了服務(wù)器端的.ssh目錄權(quán)限,是755,也是沒問題的,ssh服務(wù)器要求在使用key登錄時.ssh目錄的權(quán)限必須是其他用戶不可寫。
一開始實(shí)在想不明為啥test2帳號使用key可以登錄,test帳號使用key無法登錄,ssh_config和sshd_config。
在檢查了多遍后確實(shí)沒有問題,最后在服務(wù)器端對比兩個帳號的不同時,發(fā)現(xiàn)了可疑的地方。
$ls-l/home/
drwxrwxrwx 3testtest4096 2009-12-31 17:31test
drwxr-xr-x 6 test2 test2 4096 2010-03-23 15:59test2
兩個帳號的home目錄權(quán)限不同,test帳號是777,test2帳號是755,會不會是這里不同導(dǎo)致的?在服務(wù)器端把test目錄修改成755后,解決問題。
原因解釋:
ssh服務(wù)器的key方式登錄對權(quán)限要求嚴(yán)格。對于客戶端:私鑰必須為600權(quán)限或者更嚴(yán)格權(quán)限(400),一旦其他用戶可讀,私鑰就不起作用(如640),表現(xiàn)為系統(tǒng)認(rèn)為不存在私鑰。
對于服務(wù)器端:要求必須公鑰其他用戶不可寫,一旦其他用戶可寫(如660),就無法用key登錄,表現(xiàn)為:Permission denied(publickey)。
同時要求.ssh目錄其他用戶不可寫,一旦其他用戶可寫(如770),就無法使用key登錄,表現(xiàn)為:Permission denied(publickey)。
不僅.ssh目錄,更上層的目錄的權(quán)限同樣會有影響。
home中用戶目錄的可寫,表示其他用戶對.ssh子目錄也有改寫的權(quán)限(刪除或重命令),也就導(dǎo)致ssh判斷.ssh為其他用戶可寫,拒絕使用key登錄。
2、悄悄啟動的selinux
如果你配置某項(xiàng)服務(wù),但是不論怎么定義配置文件,有些端口始終不能打開,或者文件無法訪問到,那么這時你要小心是selinux在搗鬼。
舉例:
問題現(xiàn)象:配置apache上的目錄可以訪問,卻始終提示你沒有權(quán)限。
apache上的配置:
Alias/hello.html/web/hello.html
Order deny,allow
Allow from all
怎么查都沒有問題,文件權(quán)限也對,這時可以考慮查一下selinux的權(quán)限。
#ls-Z/web/
-rw-r--r--.root root unconfined_u:object_r:admin_home_t:s0hello.html
原來/web目錄不能被apache內(nèi)建的用戶訪問。
原因解釋:
默認(rèn)情況下,selinux限制了apache可以訪問的目錄,默認(rèn)僅能在/var/www/下面讀寫文件。這也難怪,我們只配置apache和文件權(quán)限沒有任何作用了。
要想實(shí)現(xiàn)對/web/目錄下的文件讀取,必須修改selinux的配置。
其實(shí)不止是文件權(quán)限,包括服務(wù)可以使用的端口、消息接口等,selinux都有默認(rèn)限制。如果你配置服務(wù)遇到莫名其妙的問題,看一下selinux吧
本文名稱:兩個易被忽視的linux安全權(quán)限配置問題
路徑分享:http://www.5511xx.com/article/dpichod.html


咨詢
建站咨詢
