- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會(huì )理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標記
- 域名注冊服務(wù)機構許可:滇D3-20230001
- 代理域名注冊服務(wù)機構:新網(wǎng)數碼
配置IIS 的Ftp server,遇到域時(shí),一不小心就會(huì )出現錯誤530 User cannot log in, home directory inaccessible。
經(jīng)過(guò)在網(wǎng)上不斷的看帖和實(shí)踐的嘗試,現在歸納幾個(gè)經(jīng)驗。
1 文件夾權限設置不正確
百度上基本都是這么說(shuō)的,這句話(huà)沒(méi)錯但是很不嚴謹,不懂的同學(xué)可能都不知道在哪設或者設哪一個(gè)。
在ftp根路徑下右鍵“屬性”,在選項卡里找到“安全”,這個(gè)是系統的文件權限設置,無(wú)論共享還是FTP登錄,文件權限都在這里設置。在界面上點(diǎn)擊“編輯”,選擇要修改的登錄用戶(hù)權限,在復選框中選擇至少讀取選項。
問(wèn)題 1 ftp登錄用戶(hù)是什么,它在哪?
在IIS的FTP操作界面中,點(diǎn)擊右上角的
如果針對驗證用戶(hù),可以對Authenticated Users設置權限,如果沒(méi)有,在點(diǎn)擊“編輯”進(jìn)入“安全”選項卡界面上點(diǎn)擊“添加”,添加這個(gè)用戶(hù)。
如果針對某一個(gè)用戶(hù),如yyliu,可以對yyliu用戶(hù)設置權限,點(diǎn)擊“編輯”進(jìn)入“安全”選項卡界面上點(diǎn)擊“添加”,添加yyliu用戶(hù)。
如果針對域用戶(hù),如SSCHPC,可以對SSCHPCdomain users設置權限,如果沒(méi)有,點(diǎn)擊“編輯”進(jìn)入“安全”選項卡界面上點(diǎn)擊“添加”,添加SSCHPCdomain users用戶(hù)。
問(wèn)題 2 如果不能修改權限或者無(wú)法單獨設置權限怎么辦?
windows文件夾權限設置的交互規則是,子文件夾必須繼承父文件夾,不能去掉父文件夾已有權限,但可以增加新的權限。
有經(jīng)驗的同學(xué)會(huì )立刻想到這樣做有時(shí)會(huì )產(chǎn)生一個(gè)新的問(wèn)題。
例如:
我們不想讓用戶(hù)局限在自己的根路徑下,可以訪(fǎng)問(wèn)某些其他用戶(hù)目錄或者虛擬目錄,我們會(huì )將IIS ftp設置為不隔離用戶(hù)。(關(guān)于如何設置隔離用戶(hù),給一個(gè)http://www.tjdsmy.cn.NET/page.aspx/305/configuring-ftp-user-isolation-in-iis-7/)。
這樣一來(lái),所有用戶(hù)目錄都會(huì )自動(dòng)的從根目錄繼承了自己父親的權限設置,往往這些權限對ftp而言就是破壞性的,因為ftp所有用戶(hù)都是屬于這個(gè)組的權限,這個(gè)和Linux下有很大不同,Linux的Vsftpd程序可以和用戶(hù)和組很好的結合,可以通過(guò)設置用戶(hù)、組的權限控制FTP的權限。而Windows我們在創(chuàng )建一個(gè)目錄時(shí),會(huì )自動(dòng)產(chǎn)生很多權限,有時(shí)候很方便,但實(shí)則比較混亂,只不過(guò)我們平時(shí)根本沒(méi)空關(guān)注它,抱著(zhù)能用就行的態(tài)度,孰不知有時(shí)候會(huì )讓自己的辛苦管理變成一個(gè)個(gè)大漏洞。
如果要在某個(gè)用戶(hù)文件夾上去掉父權限,一個(gè)辦法就是編輯父目錄權限,去掉多余不安全的,另外一個(gè)就是在用戶(hù)目錄下拒絕父目錄權限,但是windows規則里明確說(shuō),拒絕權限要大于允許權限,如果我把用戶(hù)組權限拒絕了,而額外加了一個(gè)自己的用戶(hù)權限,也是不行的,原因就在于自己用戶(hù)本身就屬于被拒絕的組用戶(hù)。如sschpc/domain users和sschpc/yyliu。
這個(gè)時(shí)候我們需要通過(guò)高級命令cacls命令來(lái)跳過(guò)這個(gè)矛盾,這個(gè)屬于高級操作,能破壞windows的規則。
我給大家三個(gè)例子,這里不再去解釋了,有疑問(wèn)可以google或聯(lián)系我。
a) 只對FTP根目錄D:ftproot下的用戶(hù)目錄d:ftprootyyliu設置不包括yyliu的子目錄的唯一yyliu用戶(hù)的修改控制權限,使得只有yyliu可以FTP登錄到路徑d:ftprootyyliu,有列出、讀取,修改,寫(xiě)入權限。
cacls d:ftprootyyliu /p yyliu:c
b) 對FTP根目錄D:ftproot下的用戶(hù)目錄d:ftprootyyliu不包括yyliu的子目錄,增加一個(gè)xfinity用戶(hù)的完全控制權限,使得只有yyliu和xfinity可以FTP登錄到路徑d:ftprootyyliu,保持yyliu設置,且xfinity有完全控制權限。
cacls d:ftprootyyliu /e /p xfinity:f
c) 對FTP根目錄D:ftproot下的用戶(hù)目錄d:ftprootyyliu及所有yyliu的子目錄,增加一個(gè)llhao用戶(hù)的完全控制權限.
cacls d:ftprootyyliu /e /t /p llhao:f
小結:
通過(guò)解決以上2個(gè)問(wèn)題,就可以自定義的管理ftp用戶(hù)文件權限,而且可以不首用戶(hù)根路徑限制,屬于高級操作。
2 IIS FTP忘了權限配置
很多同學(xué)可能沒(méi)有注意到,點(diǎn)擊IIS ftp網(wǎng)站,會(huì )顯示FTP管理界面,上面有個(gè)圖?叫“FTP授權規則”,點(diǎn)擊進(jìn)去,點(diǎn)擊”添加允許規則“,最簡(jiǎn)單的是添加所有用戶(hù)的一個(gè)讀取和寫(xiě)入權限,如果是域用戶(hù),選擇“指定的角色和用戶(hù)組”,添加如SSCHPCdomain users,這樣設置,在大家嘗試了設置目錄權限而沒(méi)有頭緒后,應該就不會(huì )?報530 User cannot log in, home directory inaccessible,前提是大家不會(huì )傻的設置了一個(gè)物理不存在的目錄。
如果有高手修改了FTP應用程序池的標識,請不要忘了修改回ApplicationPoolIdentity。
3 IIS FTP用戶(hù)隔離配置沒(méi)有正確設置目錄
隔離用戶(hù)下的禁用全局虛擬目錄,和啟用全局虛擬目錄,它們的設置的差別就是一個(gè)可以設置虛擬目錄和物理目錄,一個(gè)只能設置物理目錄。
設置目錄必須遵守規則如下:
User Account Types | Physical Home Directory Syntax |
Anonymous users | %FtpRoot%LocalUserPublic |
Local Windows user accounts | %FtpRoot%LocalUser\%UserName% |
Windows domain accounts | %FtpRoot%\%UserDomain%\%UserName% |
IIS Manager or ASP.Net custom | %FtpRoot%LocalUser\%UserName% |
舉個(gè)例子
隔離用戶(hù)下的禁用全局虛擬目錄:
文件夾幾種情況:
1)假設建立了一個(gè)ftp站點(diǎn)并設置ftp根目錄為d:ftproot,域yyliu用戶(hù)目錄在d:ftprootyyliu,域為SSCHPC
在IIS ftp 管理器ftp中,在ftp站點(diǎn)下設置虛擬目錄SSCHPC,路徑為d:ftproot.此時(shí)ftp路徑就有了虛擬的d:ftprootsschpcyyliu,ftp登錄后路徑為
2)假設建立了一個(gè)ftp站點(diǎn)并設置ftp根目錄為d:ftproot,域yyliu用戶(hù)目錄在d:ftprootsschpcyyliu,域為SSCHPC
在IIS ftp 管理器ftp中此時(shí)ftp路徑就有了物理的d:ftprootsschpcyyliu,ftp登錄后路徑為
如果是本地賬戶(hù),需要把SSCHPC改為L(cháng)ocalUser,使之成為d:ftprootLocalUseryyliu
售前咨詢(xún)
售后咨詢(xún)
備案咨詢(xún)
二維碼
TOP