close

自己由於工作需要,有架設一台簡易的ubuntu linux server,使用的是sftp

沒想到搭配的人越來越多,導致需要多開些ftp帳號給其它合作的人上傳資料用

以下說明如何新增ftp使用者,又讓他們在使用FileZilla登入時,又只能登入自己所屬的home資料夾

1. 編輯sftp的設定檔/etc/ssh/sshd_config

~#vi /etc/ssh/sshd_config    //打開編輯

# override default of no subsystems
#Subsystem   sftp  /usr/libexec/openssh/sftp-server
Subsystem    sftp  internal-sftp

# Example of overriding settings on a per-user basis
#Match User anoncvs
#    X11Forwarding no
#    AllowTcpForwarding no
#    ForceCommand cvs server
Match Group group_sftp     #此處是群組名稱,名字自由設定,但前題需要有此群組
ChrootDirectory /home/%u
X11Forwarding no
AllowTCPForwarding no
ForceCommand internal-sftp
存檔   :wq

2. 重新啟動ssh服務
~#service ssh restart
3. 新增使用者群組

~#groupadd group_sftp

4. 新增使用者,並加入group_sftp群組

~#useradd -s /bin/false -G group_sftp userxxxx
~#passwd userxxxx
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

新增完成!

5. 可檢查是否登入的目錄如設定

~#vi /etc/passwd

6. 設定權限

現在新增的使用者,登入ftp一定都上傳不了資料

因為home資料夾的特殊性,只能讓root群組上傳資料。因此我們必需在該使用者目錄下再設定一個資料夾,讓使用者可以上傳資料。

~#cd /home/userxxxx/
~#mkdir upload
~#ls
upload
~# chown userxxxx upload

將權限設定完成,使用者只能登入他們所屬的home,資料也只能傳進home資料夾底下的upload囉!


參考資料:
http://www.coolsun.idv.tw/modules/xhnewbb/viewtopic.php?topic_id=1390
http://www.serverubuntu.it/SFTP-chroot
http://blog.miniasp.com/post/2011/08/11/OpenSSH-SFTP-chroot-with-ChrootDirectory.aspx



arrow
arrow
    全站熱搜
    創作者介紹
    創作者 許敦凱 的頭像
    許敦凱

    許敦凱的部落格

    許敦凱 發表在 痞客邦 留言(0) 人氣()