在CentOS系統中,配置SFTP備份主要涉及以下幾個步驟:
如果尚未安裝OpenSSH服務器,請使用以下命令進行安裝:
sudo yum install openssh-server
編輯SSH配置文件 /etc/ssh/sshd_config:
sudo vi /etc/ssh/sshd_config
找到并修改以下配置項:
Subsystem sftp /usr/libexec/openssh/sftp-server
確保以下配置項存在并正確設置:
PermitRootLogin no
PasswordAuthentication yes # 或者使用公鑰認證
創建一個專門用于備份的用戶,并為其設置密碼:
sudo adduser backupuser
sudo passwd backupuser
為了提高安全性,可以將SFTP用戶的根目錄限制在其主目錄下:
sudo vi /etc/ssh/sshd_config
添加或修改以下配置:
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
然后創建一個組 sftpusers 并將備份用戶添加到該組:
sudo groupadd sftpusers
sudo usermod -aG sftpusers backupuser
為備份用戶創建一個專用的備份目錄,并設置適當的權限:
sudo mkdir /home/backupuser/backup
sudo chown backupuser:backupuser /home/backupuser/backup
sudo chmod 700 /home/backupuser/backup
使用 crontab 設置定時備份任務。編輯當前用戶的crontab文件:
sudo crontab -e
添加一行來定義備份任務,例如每天凌晨2點執行備份:
0 2 * * * /usr/bin/rsync -avz --delete /path/to/source /home/backupuser/backup
確保 /usr/bin/rsync 命令可用,并根據實際情況調整源路徑和目標路徑。
使用SFTP客戶端連接到服務器,驗證配置是否正確:
sftp backupuser@your_server_ip
檢查SSH和SFTP的日志文件以確保一切正常運行:
sudo tail -f /var/log/secure
通過以上步驟,您可以在CentOS系統上配置SFTP備份。根據具體需求,您可能需要進一步調整和優化配置。