#!/usr/bin/expect -f # Emre Tugriceri # Citrix Netscaler config backup script # emre@tugriceri.com # This script is licensed under GNU GPL version 2.0 - http://www.tugriceri.com # # This is an expect script for the getting Citrix netscaler config backups. # example : # ./ceknsconfig.ex `date +%y%m%d-%N` # Cront tab entry : # 30 03 * * * root /var/scripts/netscaler/ceknsconfig.ex `date +\%y\%m\%d-\%N` # set Variables #Local server backup path set dirc "/var/scripts/netscaler" #Remote netscaler user set user "nsroot" #Remote netscaler pass set password "somepass" #Remote netscaler ip address set ipaddr "192.168.2.6" #backup server ip adress set bip "191.168.2.4" #backup server username set buser "root" #backup server pass set bpass "somepass" set time [lrange $argv 0 0] set timeout -1 # Connecting to Netscaler spawn ssh $user@$ipaddr match_max 100000 # Look for passwod prompt expect "*?assword:*" # Sending password send -- "$password\r" # Get login promt expect "Last login:*\r Done\r > " # shell promt send -- " shell\r" expect "*?root@*" #Copy config file to our server send -- "scp /nsconfig/ns.conf $buser@$bip:$dirc/ns$time.conf\r" expect "root@*'s password:*" send -- "$bpass\n" send -- "exit\r" send -- "exit\r" expect eof