在CentOS上實現SFTP自動化運維,通常涉及以下幾個步驟:
sudo yum install openssh-server
sudo systemctl start sshd
sudo systemctl enable sshd
sudo groupadd sftp
sudo useradd -g sftp -d /home/sftpuser -s /sbin/nologin sftpuser
sudo passwd sftpuser
/etc/ssh/sshd_config
文件,配置SFTP子模塊為internal-sftp
,并設置Match Group sftp
來限制用戶只能訪問特定的目錄。Match Group sftp
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sudo chown root:sftp /home/sftpuser
sudo chmod 755 /home/sftpuser
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('192.168.1.100', username='sftpuser', password='your_password')
stdin, stdout, stderr = ssh.exec_command('ls -l')
print(stdout.read().decode())
ssh.close()
crontab
設置定時任務,定期執行自動化腳本。# 編輯crontab文件
crontab -e
# 添加定時任務,例如每天凌晨2點執行備份腳本
0 2 * * * /usr/bin/python /path/to/your/backup_script.py
ssh-keygen
ssh-copy-id sftpuser@192.168.1.100
以上步驟可以幫助您在CentOS上實現SFTP自動化運維,提高運維效率和系統安全性。