SFTP服务器搭建

今天公司业务部门说要测试一款产品,需要FTP服务器,本来想给他们使用pure-ftp,但是他们指定要SFTP服务器。

我从来都没搭建过,正好借此机会部署测试一下

SFTP访问会使用本地系统账号,而非其他ftp服务器那样可以使用虚拟账号

 

1 软件包(大多数系统已默认安装)

openssh openssh-clients openssh-server

 

2 创建ftp组与ftp账号

在创建账号时,禁止ssh登录,并将账号加入ftpgroup,账号密码为123456

# groupadd ftpgroup

# useradd -s /sbin/nologin -M -N ftpuser01

# usermod -a -G ftpgroup ftpuser01

 

3创建ftp根目录并修改权限

# mkdir /ftpdata

# chown root.ftpgroup /ftpdata

 

4创建上传目录upload并修改权限

# mkdir -p /ftpdata/upload/

# chown root.ftpgroup upload/

# chmod 770 upload/

 

5 sftp配置

修改/etc/ssh/sshd_config,以下几项:

Subsystem        sftp  internal-sftp-------此处务必要修改为internal-sftp

Match Group ftpgroup------此处使用组管理,即创建的ftpgroup

AllowTcpForwarding no

ForceCommand internal-sftp

ChrootDirectory /sftpdata------限制根目录

 

6 重启sshd服务

 

7测试

用户可以在upload目录内进行文件上传下载,以及文件夹的创建

wKiom1jXN_6D2PDeAABQmrr1Y4o800.jpg-wh_50

 

总结:

SFTP配置还是比较简单的

sshd_config配置文件中,系统默认采用Match User(匹配用户)的模式,而我们采用组管理方式。

经过测试,配置多组Match User或者Match Group都是可以的。

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章