Linux - 設置SFTP服務用戶目錄權限


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

創建新用戶www,禁止ssh登錄,不創建家目錄

[root@local ~]# useradd -s /sbin/nologin -M www
[root@local ~]# passwd www
更改用戶 www 的密碼 。
新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。

創建用戶的根目錄,用戶就只能在此目錄下活動

mkdir /var/www

設置目錄權限,目錄的權限設定有兩個要點:
目錄開始一直往上到系統根目錄為止的目錄擁有者都只能是root
目錄開始一直往上到系統根目錄為止都不可以具有群組寫入權限

[root@local ~]# chown root:root /var/www
[root@local ~]# chmod 755 /var/www

如果是777,www用戶就可以新建文件夾。如果是755,www用戶就不可以新建文件夾。

配置sshd_config

vim /etc/ssh/sshd_config

修改一下內容

# Subsystem     sftp    /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
Match User www
ChrootDirectory /var/www
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no

重啟sshd服務

systemctl restart sshd.service

創建目錄測試

[root@local ~]# mkdir /var/www/tpadmin
[root@local ~]# chown www:www /var/www/tpadmin
[root@local ~]# chmod 777 /var/www/tpadmin


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM