如何用Ubuntu SFTP进行远程备份

使用Ubuntu进行SFTP远程备份的步骤如下:

1. 安装SFTP服务器

首先,确保你的Ubuntu系统上已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install openssh-server

2. 配置SFTP服务器

编辑SSH配置文件 /etc/ssh/sshd_config 来启用SFTP子系统:

sudo nano /etc/ssh/sshd_config

找到并修改以下行:

Subsystem sftp /usr/lib/openssh/sftp-server

确保以下行没有被注释掉(即前面没有 # 号):

ChrootDirectory %h
ForceCommand internal-sftp

保存并退出编辑器,然后重启SSH服务:

sudo systemctl restart sshd

3. 创建备份目录

在你的主目录下创建一个用于存放备份的目录:

mkdir ~/backup

4. 设置权限

确保SFTP用户只能访问其主目录和备份目录:

sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username

sudo mkdir -p /home/your_username/backup
sudo chown your_username:your_username /home/your_username/backup

5. 配置防火墙

如果你使用的是UFW(Uncomplicated Firewall),确保允许SSH连接:

sudo ufw allow ssh
sudo ufw enable

6. 使用SFTP进行备份

你可以使用任何支持SFTP的客户端(如FileZilla、WinSCP等)连接到你的Ubuntu服务器。连接信息如下:

  • 主机名:你的服务器IP地址或域名
  • 端口:22
  • 用户名:你的SFTP用户名
  • 密码:你的SFTP密码

连接成功后,你可以将本地文件上传到 /home/your_username/backup 目录中。

7. 自动化备份(可选)

你可以使用 rsynccron 来自动化备份过程。首先,确保你已经安装了 rsync

sudo apt install rsync

然后,创建一个备份脚本 backup.sh

nano ~/backup.sh

添加以下内容:

#!/bin/bash

# 定义源目录和目标目录
SOURCE_DIR="/path/to/local/backup"
TARGET_DIR="/home/your_username/backup"

# 使用rsync进行备份
rsync -av --delete $SOURCE_DIR $TARGET_DIR

保存并退出编辑器,然后赋予脚本执行权限:

chmod +x ~/backup.sh

最后,使用 cron 设置定时任务:

crontab -e

添加一行来设置备份频率,例如每天凌晨2点执行备份:

0 2 * * * /home/your_username/backup.sh

保存并退出编辑器。

通过以上步骤,你就可以使用Ubuntu进行SFTP远程备份了。

Both comments and pings are currently closed.

Comments are closed.

Powered by KingAbc | 粤ICP备16106647号-2 | Loading Time‌ 0.803