Last Updated on 2015年5月27日 by かんりにん
会社のNetscreenのコンフィグを、Linuxサーバー側からtelnetでアクセスしたのち
tftpを使ってdailyでバックアップする、やや回りくどいスクリプト。
とりあえずLANなのでtelnetにechoでコマンドを渡して済ませているけど
本来ならsshにするのが良い。
#!/bin/sh
# ENV
BACKUPDIR='/home/admin/backup'
BATCHDIR='/home/admin/batch'
HOST='netscreen5GT'
DATE=`date '+%Y-%m-%d'`
TFTPROOT="/tftpboot"
# REGION
REGION='honsya_LAN'
# netscreen 5GT login commandline
# netscreenへのログインの際、telnetへ渡すID、パスワード、コマンドをechoでまとめる
commandline()
{
sleep 1; echo <ログインID>
sleep 1; echo <パスワード>
sleep 5; echo save config from flash to tftp ns5.config
sleep 1; echo exit
}
## コンフィグ受信用の空ファイルを作成
## リモートホスト側からtftpする場合、受信側ホストに同名のファイルが存在している必要があるため
## 前もって空ファイルを作成しておく。
touch ${TFTPROOT}/ns5.config
chmod 707 ${TFTPROOT}/ns5.config
## netscreenへログインし、tftpでサーバにコンフィグを落とす
commandline | telnet /dev/null 2>&1
## /tftpbootに出力されたコンフィグをバックアップ先へ移動し、リネーム
chmod 644 ${TFTPROOT}/ns5.config
mv ${TFTPROOT}/ns5.config ${BACKUPDIR}/${REGION}/${HOST}/config.${DATE}.${HOST}.txt
exit
作成して動作確認後、問題なければcronに登録して終了。