快使用Ctrl+D收藏本站!如果本站的文章以及資源有幫助到您,希望您能贊助本站服務器費用,感謝您的支持!本站開放注冊,現邀請您一起分享技術心得!您可以-注冊-

記坑爹的Linux服務器設置用戶權限用sftp訪問固定文件夾

網站搭建 Julius_wen 780℃ 0評論

#新增用戶
useradd username
#設置密碼
passwd username
#連續輸兩次密碼完成用戶設置

#刪除用戶
userdel username
#刪除用戶及刪除創建的文件夾
userdel -r username

#查看用戶是否添加
tail /etc/passwd

#修改sshd_config文件,建議先備份

cp sshd_config sshd_config.back // 備份

#使用vi進入文件修改
vi /etc/ssh/sshd_config

#enter進入后,按I鍵,insert插入
#找到下面這行,前面加上#號,注釋掉
#Subsystem sftp /usr/libexec/openssh/sftp-server

#在文件的最下方加入以下代碼
Subsystem?sftp?internal-sftp

#實現username賬號訪問固定文件夾
Match?User?username

????????ChrootDirectory?/data/nginx/wwwroot/default/source/plugin
????????X11Forwarding?no
????????AllowTcpForwarding?no
????????ForceCommand?internal-sftp

#下面開始更改權限,首先從根目錄看起
cd data到根目錄
ls -l看權限

一層一層的看下去,要求權限都是755

常見的權限表示形式有:
-rw——- (600) 只有擁有者有讀寫權限。
-rw-r–r– (644) 只有擁有者有讀寫權限;而屬組用戶和其他用戶只有讀權限。
-rwx—— (700) 只有擁有者有讀、寫、執行權限。
-rwxr-xr-x (755) 擁有者有讀、寫、執行權限;而屬組用戶和其他用戶只有讀、執行權限。
-rwx–x–x (711) 擁有者有讀、寫、執行權限;而屬組用戶和其他用戶只有執行權限。
-rw-rw-rw- (666) 所有用戶都有文件讀、寫權限。
-rwxrwxrwx (777) 所有用戶都有讀、寫、執行權限。

要求從根目錄開始到最后要指定的文件夾為止,都需要是755權限,所有者都是root,用戶組也是root

#建議按如下指令設置一下
sudo chmod 755 /data

#然后設置username屬于root用戶組,指定其成為 some_dir 某個文件夾的所有者,這樣username就具有了some_dir的讀寫權限
sudo chown -R username:root /datas/nginx/wwwroot/default/source/plugin/some_dir

這里要求some_dir在上圖寫的路徑下面

#重啟ssh服務
service sshd restart

#嘗試登陸sftp
sftp -oPort=端口號 [email protected](你的IP)

可能會登陸失敗
如果你鏈接服務器的時候出現下面的提示:

Write failed: Broken pipe
Couldn’t read packet: Connection reset by peer

這個問題的原因是ChrootDirectory的權限問題,你設定的目錄必須是root用戶所有,否則就會出現問題。所以請確保sftp用戶根目錄的所有人是root, 權限是 750 或者 755。注意以下兩點原則:

目錄開始一直往上到系統根目錄為止的目錄擁有者都只能是 root,用戶組可以不是 root。

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

上面2點一定注意,仔細檢查。我就是因為這個問題,導致一直有這個問題。仔細檢查配置后,解決問題。

轉載請注明:燕駿博客 » 記坑爹的Linux服務器設置用戶權限用sftp訪問固定文件夾

贊賞作者

微信贊賞支付寶贊賞

喜歡 (1)or分享 (0)

如果您喜歡本站文章,感覺本站的資源對您有幫助,請狠狠點擊下面

每累計贊助40元,即可讓本站按最低配置運行一個月,感謝您的支持!

發表我的評論
取消評論

表情

Hi,您需要填寫昵稱和郵箱!

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
上海时时乐走势图