日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

给linux下网站目录配置SFTP

發布時間:2025/3/19 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给linux下网站目录配置SFTP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

   網上很難找到一篇適用于網站目錄的SFTP配置說明,折騰了許久,我來寫一篇完整點的。?如果覺得中文難以理解的話, 請看一篇簡潔的英文配置方法http://www.linuxtechi.com/configure-chroot-sftp-in-linux/。

?

   首先,據說如果開了selinux配置好后可能會無法連接(我沒測試)。

  假設網站目錄: /var/wwwroot/xxx.com/public_html(為什么要有子目錄,是有原因的,見后面) ;

  目錄下文件歸屬為 www:www (php-fpm用戶及組), 我為什么要使用www組? 就是為了保證用戶和php共享組權限。因為我們在給web目錄配置權限的時候, 往往給文件夾 775、 755 或 750, 其他組往往擁有的權限不足, 新建或修改重傳的文件擁有過低權限,導致php不能以組權限讀取。

  // 添加一個SFTP組# groupadd www // 禁止shell,home目錄/var/wwwroot/xxx.com, 組 www .
// 如果user不存在:# useradd -s /bin/nologin -d /var/wwwroot/xxx.com -g www sftp_david // 如果user存在,則修改此user:# usermod -s /bin/nologin -d /var/wwwroot/xxx.com -g www sftp_david // 為此user設置密碼# passwd sftp_david

   到此沒有其他錯誤的話,SFTP已經可以登錄,但是此時user能瀏覽的太多了,幾乎整個系統的文件! 得限制它的訪問目錄。

  ? # vim /etc/ssh/sshd_config ? ??

    // 找到 Subsystem sftp 這一行注釋掉,添加以下行:

    ??Subsystem?? ? ??sftp??internal-sftp? ? ? ? ? ??

    // 在文件末尾添加以下內容, 限制該組只能訪問home目錄:

    Match Group www        // ?也可以 Match User sftp_david

    ChrootDirectory %h

    ForceCommand internal-sftp

    AllowTcpForwarding no

  // 保存然后重啟。 網絡不好不要急著重啟,以免重啟失敗導致當前ssh連接不上

  # service sshd restart ?

  

  權限更改:

  SFTP有一個獨特的地方, 用戶的home目錄以上文件夾的user必為root且你有寫入權限。

  本例中 home 目錄是 ?/var/wwwroot/xxx.com, ?它每一級文件夾,user必須是root,并且SFTP賬號都不能用有寫入權限(通過group也不允許), 否則連接被拒。

  # cd /var/wwwroot/xxx.com# chown root:root .        // xxx.com 是home目錄,將它設為root # chown sftp_david:www public_html   # chmod 775 public_html  

  上面就是public_html 這個子文件夾存在的意義—— 賬號不能擁有xxx.com的文件夾寫入,也就不能在它下面上傳文件。所以我要建public_html這個子文件夾,它下面可以任意上傳。

?

  同時將用戶 sftp_david 加入 www 組,以擁有www組的權限

  #?usermod -s /sbin/nologin -d /var/wwwroot/xxx.com/public_html -G www sftp_david

  完成!

?

  另外,如果public_html下的組權限為文件夾<7, 文件<6:執行(因為我這里依賴組權限操作文件):?

  # cd xxx.com

  # find . -type d -exec chmod g=rwx {} \;
  # find . -type f -exec chmod g=rw {} \;

?  切記不要給文件賦予x權限。

?

?

user操作常用參數說明(其他見 -h):

  -a ? 添加的方式. ? 將一個用戶加入多個組可使用此參數

  -d ? 指定home目錄,也就是登錄時進入的目錄

  -M ??

  -s ? 通常設置:?/bin/false 禁止使用任何登錄(包括shell), ??/sbin/nologin 禁止登陸但可以使用SFTP

  -G ? 并將user加入這個group(同時創建group)

  -g ? 將此user加入這個組(不創建組)

?

  (?vsftp配置鏈接?)

轉載于:https://www.cnblogs.com/antarctican/p/3986523.html

總結

以上是生活随笔為你收集整理的给linux下网站目录配置SFTP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。