在Linux系统中,itables命令可以为我们进行异机备份或恢复,但可能很多用户还不是很熟悉,下面小编就将方法分享给大家。
方法如下:
1、iptables的配置文件位置:/etc/sysconfig/iptables
主控机:即业务运行中的机子;备份机:即主控机故障时,切换到备份的机子
--在主控机上的操作-------------------
2、建立目录:
mkdir -p /bak/iptables/
mkdir /root/script/
3、在/root/script/目录下建立脚本:
vi backup.sh
\cp /etc/sysconfig/iptables /bak/iptables/iptables_$(date +%Y%m%d%H)
4、定制自动任务:
crontab -e
*/10 * * * * /usr/sbin/ntpdate 210.72.145.44
10 * * * * sh /root/script/backup.sh
--在备份机上操作---------------------
5、建立目录:
mkdir -p /bak/iptables/{lt,yd} #lt目录放联通跳转的备份,yd目录放移动跳转的备份
mkdir /root/script/
6、在/root/script/目录下建立脚本:
vi scp_lt.sh
#!/usr/bin/expect -f
set password gst
spawn scp -P 22 root@202.105.135.52:/etc/sysconfig/iptables /bak/iptables/lt/iptables
set timeout 300
expect "root@202.105.135.52's password:"
set timeout 300
send "$password\r"
set timeout 300
send "exit\r"
expect eof
7、在/root/script/目录下建立脚本:
vi scp_yd.sh
#!/usr/bin/expect -f
set password gst
spawn scp -P 22 root@183.62.178.91:/etc/sysconfig/iptables /bak/iptables/yd/iptables
set timeout 300
expect "root@183.62.178.91's password:"
set timeout 300
send "$password\r"
set timeout 300
send "exit\r"
expect eof
8、在/root/script/目录下建立脚本:
vi backup.sh
expect /root/script/scp_lt.sh
expect /root/script/scp_yd.sh
sed -i 's/202.105.135.52/183.62.178.85/g' /bak/iptables/lt/iptables
sed -i 's/58.251.49.18/58.250.56.154/g' /bak/iptables/lt/iptables
\cp /bak/iptables/lt/iptables /etc/sysconfig/iptables
/etc/init.d/iptables restart
/etc/init.d/iptables save
mv /bak/iptables/lt/iptables /bak/iptables/lt/iptables_$(date +%Y%m%d%H)
mv /bak/iptables/yd/iptables /bak/iptables/yd/iptables_$(date +%Y%m%d%H)
9、注意,要在备份机上手动远程登陆一次,以获得RSA的公钥,之后就不用这样登陆了,否则脚本会执行错误
10、定制自动任务:
crontab -e
*/10 * * * * /usr/sbin/ntpdate 210.72.145.44
20 * * * * sh /root/script/backup.sh
以上就是Linux使用iptables进行异机备份/恢复的方法,除此之外,我们还可以通过iptables命令开启、关闭防火墙功能。