搭建一個sftp文件存儲服務器,有如下要求:
1.隻允許使用sftp登錄,禁止ssh登錄 2.sftp用戶登錄隻能在自己的家目錄活動 3.多用戶登錄,且互不可見
編輯配置文件
vim /etc/ssh/sshd_config Subsystem sftp internal-sftp # 注銷Subsystem sftp /usr/lib/openssh/sftp-server這行 # 因為sshd進程整合了internal-sftp,使用internal-sftp就無須再起新的進程,性能好 Match group sftp # 以下選項隻針對sftpgroup的用戶生效,所以要放在文件的最下面,以免亂入sshd的其他配置 ChrootDirectory %h # 限制sftp用戶隻能在自己的家目錄活動 X11Forwarding no # 禁止圖形界面轉發 AllowtcpForwarding no # 禁止tcp轉發 ForceCommand internal-sftp # 強制使用sftp協議運行的命令,次此選項限制了sftp用戶,使用ssh協議登錄
新增sftp組
groupadd sftp
新增sftp用戶總目錄sftpdata
mkdir /sftpdata
新增sftp用戶
useradd -s /sbin/nologin -d /sftpdata/sftp01 -g sftp sftp01 passwd sftp01
此時登錄,會報錯如圖
因為我們使用ChrootDirectory來限制sftp用戶的活動目錄
這要求sftp01目錄屬主必須是root用戶,且權限最好是755
chown root. /sftpdata/sftp01 chmod 755 /sftpdata/sftp01
此時可以登錄,但是沒有任何權限,必須新建個屬主是sftp01的目錄才可以正常操作
mkdir /sftpdata/sftp01/upload chown sftp01. /sftpdata/sftp01/upload
此時一個sftp用戶已經可以正常使用了
新增一個sftp02用戶
useradd -s /sbin/nologin -d /sftpdata/sftp02 -g sftp sftp02 passwd sftp02 chown root. /sftpdata/sftp02 chmod 755 /sftpdata/sftp02 mkdir /sftpdata/sftp02/upload chown sftp02. /sftpdata/sftp02/upload
分享一些資料吧,最近買了一些極客時間 網易雲課堂的vip課程。有開發,有運維,有前端,有虛拟化,有雲計算,還有文學,育兒,還有大保健,雜七雜八的。
加我V905883566,組個群,無套路,免費分享。
,