搭建sftp平台并使用rsync同步实操
一 首先搭建sftp服务
1 首先需要确定openssh的版本,版本需要大于 4.8 p1版本(可以使用ssh -V命令查看版本)
2 使用root用户创建用户组(sftp),创建用户(sftptest),用户组指定为sftp,并设置密码
命令: groupadd sftp
useradd sftptest -s /sbin/nologin -g sftp
passwd sftptest
3 创建sftp组使用的目录,目录为 /data/publicsftp/sftp,这几个目录需要设置为root权限,并且具有755或750的权限。
命令:mkdir -p /data/publicsftp/sftp
usermod -d /data/publicsftp/sftp sftptest
chown root:sftp /data/publicsftp/sftp
chmod 755 /data/publicsftp/sftp
4 在sftptest的家目录下面建立上传路径(upload)
mkidr -p /data/publicsftp/sftp/upload
chmod sftptest:sftp /data/publicsftp/sftp/upload
chmod 755 /data/publicsftp/sftp/upload
5 更改sshd配置文件(/etc/ssh/sshd.config)
在文件末尾添加如下行,缩进参考配置文件注释的部分
Match Group sftp
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory /data/publicsftp/sftp
ForceCommand internal-sftp
二 使用rsync进行同步
1 首先确保rsync包安装了(yum install rsync -y)
2 将rsync设置为开启启动(systemctl enable rsyncd)
3 更改配置文件 /etc/rsyncd.conf
配置详情参考
3 上传命令
/usr/bin/rsync -avz [email protected]::sftp /data/publicsftp/ --password-file=/etc/rs.passwd