STP协议服务器
简介:
sftp是安全文件传输协议的缩写,是安全的文件传输协议。 可以提供安全的加密方法来传输文件。 虽然sftp和ftp有着几乎相同的语法和功能,但是注意: sftp和FTPvsftpd )完全没有关系。 SFTP是SSH的一部分,是将文件数据传输到SFTP服务器的协议。 没有守护进程本身,而是包含在ssh中,并且还使用ssh端口22。
目标:
允许多个sftp用户上传下载文件,每个用户有不同的路由进行安全隔离。
构建
脚本演示:
sftp服务,本人已经写了脚本,一起看看脚本的执行效果怎么样。
STP自动脚本执行效果
注意:为了实现邮件发送,老猴子会抓紧时间在接下来的实践中开刀
远程登录操作:
SFTP远程登录操作
实操搭建:
发行说明:
操作系统版本: CentOS 7.7
sh版本:开放7.4p 1、开放1.0.2 k -光纤26日本2017
系统版本和ssh版本
如何构建sftp服务器:
1、sftp的能力根植于ssh,有ssh就有sftp,所以只需要直接在系统上创建新的用户就可以完成构建。 这个方式最简单,但最不安全。 sftp用户登录后,可以自由切换目录,非常不安全,是生产环境绝对不能接受的安全威胁。
2、建立标准安全的sftp
步骤1 新的sftp用户组任意组名,为了便于识别,本示例中的用户组称为sftp ) )。
组软件
第二部分:新的sftp用户任意用户名,为了便于识别,本例中的用户组命名为sftpu01 )。
useradd-GS FTP-s/ty DDS /快速安装01
注:新用户有-s/tydds/false选项,因为出于安全原因,必须禁止sftp用户ssh登录到系统
第三部分:为sftp用户设置12位随机密码位数和复杂度根据需要设置) ) )。
passwd=$ strings/dev/urandom|grep-o ‘ [ :铝合金: ] |头N12 |叔D ‘\n ‘; echo )
echo-e ‘ $ {密码} ‘ |密码–stdinsftpu 01
注:生成复杂随机密码的方法很多,在本例中使用urandom实现
第四部分:建立sftp用户的根目录和可读写的数据目录,并设置用户和用户组。 sftp用户的根目录此示例为/data_sftp/sftpu01 )。
创建新目录并更改所属组/主目录
mkdir-p /数据_软件/软件01连接根:软件/数据_软件01
更改sftp用户根目录
sermod-d /数据_软件/软件01软件01
创建sftp用户可以读写的数据目录
mdir-p /数据软件/软件01 /数据01
为sftp用户可以读写的数据目录设置用户和用户组的权限
chown-RSF TPU 01: SFTP /数据SFTP/SFTPU 01 /数据01
chmod 755 /数据_软件/软件01 /数据01
第五部分:修改/etc/ssh/sshd_config文件请注意,此步骤只是第一次引入sftp操作,以后添加新sftp的用户不需要执行)
将subsystems FTP/usr/libexec/OpenSSH/sftp-server的行更改如下:
# # subsystems FTP/usr/libexec/OpenSSH/sftp-server,即在行之前添加或删除#符号
新的附加内容:
名为subsystemsftpinternal-sftp-linfo-fauth #的行指定使用sftp服务来使用系统附带的internal-sftp
名为Match Group sftp #的行用于与用户组匹配
如果使用ch root目录/data_sftp/sftpu01 % u # ch root将用户的根目录指定为/data _ sftp/sftpu 01,则用户可以在/data/sftp上使用
如果用户不希望端口可以转发,请添加两行AllowTcpForwarding no #,否则将其删除
如果用户不希望端口可以转发,请添加X11转发号的两行,否则将其删除
forcecommandinternal-sftp-linfo-fauth #指定的sftp命令
步骤6 :重新启动并启用ssh
服务固态硬盘重新启动