Linux設定SFTP服務使用者目錄許可權

2022-09-01 08:51:10 字數 1585 閱讀 5192

我們有時會遇到這樣的需求,限制乙個linux使用者,讓他只能在指定的目錄下進行新增、修改、刪除操作,並且只能使用sftp登入伺服器,不能用ssh操作。這些可以通過配置sftp服務實現。

提供sftp服務的有vsftpd和internal-sftp,這裡用的是系統自帶的internal-sftp,操作步驟如下:

1.建立新使用者ui,禁止ssh登入,不建立家目錄

useradd -s /sbin/nologin -m www
2.設定使用者密碼

passwd www
3.建立使用者的根目錄,使用者就只能在此目錄下活動

mkdir /home/www
4.設定目錄許可權,目錄的許可權設定有兩個要點:

目錄開始一直往上到系統根目錄為止的目錄擁有者都只能是root

目錄開始一直往上到系統根目錄為止都不可以具有群組寫入許可權

chown root:root /home/www

chmod 755 /home/www

5.配置sshd_config

vim /etc/ssh/sshd_config
6.修改為下面內容,儲存退出

#注釋掉這行

#subsystem sftp /usr/libexec/openssh/sftp-server

#新增在配置檔案末尾

subsystem sftp internal-sftp #指定使用sftp服務使用系統自帶的internal-sftp

match user www #匹配使用者,如果要匹配多個組,多個組之間用逗號分割

chrootdirectory /home/www #用chroot將指定使用者的根目錄,chroot的含義:

forcecommand internal-sftp #指定sftp命令

x11forwarding no #這兩行,如果不希望該使用者能使用埠**的話就加上,否則刪掉

allowtcpforwarding no

7.重啟sshd服務

service sshd restart
8.測試:

使用者登入後進入的是/home/www即使用者根目錄,根目錄是無法寫入的,所以先用root在/home/www新建乙個ui目錄

mkdir /home/www/ui
修改目錄所有者和許可權

chown ui:ui /home/www/ui

chmod 777 /home/www/ui

#可以在其他目錄建立軟連線指向ui目錄

#ln -s /home/www/ui /www/

sftp登入www使用者,進入ui目錄,即可在/home/www/ui下,對檔案進行新增、修改、刪除的操作

sftp -oport=22 [email protected]

sftp> cd ui

http協議整理

php安全之web攻擊

秒殺系統設計優化

mysql優化

linux下常見的io模型

Linux 設定SFTP服務使用者目錄許可權

我們有時會遇到這樣的需求,限制乙個linux使用者,讓他只能在指定的目錄下進行新增 修改 刪除操作,並且只能使用sftp登入伺服器,不能用ssh操作。這些可以通過配置sftp服務實現。建立新使用者www,禁止ssh登入,不建立家目錄 root local useradd s sbin nologin...

Linux下SFTP設定使用者目錄許可權

1 安裝參考 2 許可權設定參考 按上述安裝配置好之後,客戶端使用工具開啟出現permission denied問題。可參考 設定目錄許可權,目錄的許可權設定有兩個要點 目錄開始一直往上到系統根目錄為止的目錄擁有者都只能是root 目錄開始一直往上到系統根目錄為止都不可以具有群組寫入許可權 chow...

Linux下如何進行SFTP使用者許可權設定

ssh v 具體實施步驟 1.我們需要建立乙個使用者組,專門用於sftp使用者 groupadd sftpusers 2.我們建立乙個使用者test useradd s bin false g sftpuser test 注意這裡我們將test使用者的shell設定為 bin false使他沒有登陸...