通过CentOS SFTP进行远程备份,可以按照以下步骤操作:
sudo yum install openssh-server
sudo systemctl start sshd
sudo systemctl enable sshd
编辑/etc/ssh/sshd_config
文件,确保以下配置存在并正确:
Subsystem sftp /usr/libexec/openssh/sftp-server
sudo adduser backupuser
sudo passwd backupuser
编辑/etc/ssh/sshd_config
文件,添加或修改以下行以限制用户的访问:
Match User backupuser
ChrootDirectory /home/backupuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sudo mkdir -p /home/backupuser
sudo chown root:root /home/backupuser
sudo chmod 755 /home/backupuser
确保防火墙允许SFTP连接(默认端口22):
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
大多数Linux发行版和macOS都自带SFTP客户端。Windows用户可以使用PuTTY或其他SFTP客户端。
sftp backupuser@remote_server_ip
put /path/to/local/file /path/to/remote/directory
get /path/to/remote/file /path/to/local/directory
ls /path/to/remote/directory
可以编写一个简单的脚本来自动化备份过程。例如:
#!/bin/bash
# 定义变量
LOCAL_DIR="/path/to/local/backup"
REMOTE_DIR="/path/to/remote/backup"
USER="backupuser"
SERVER="remote_server_ip"
# 创建本地备份目录(如果不存在)
mkdir -p $LOCAL_DIR
# 使用SFTP上传文件
sftp $USER@$SERVER <<EOF
put $LOCAL_DIR/* $REMOTE_DIR/
bye
EOF
将此脚本保存为backup.sh
,并赋予执行权限:
chmod +x backup.sh
然后运行脚本进行备份:
./backup.sh
通过以上步骤,你可以使用CentOS SFTP进行远程备份,并且可以根据需要自动化备份过程。