For Devices with ONLY TFTP Support, see folloing link with a GTE an PUT Script
This works with most Cisco Devices
Easy Script sample
Newer Cisco Devices supports also SCP, FTP ... protocol for backing up, and restore the config.
Copying config from and to the router is possible to control with snmp
commands. Here you find some script sample, for using with linux.
A TFTP Sample:
#!/bin/bash
#
# simple tftp copy from the Router to the TFTP Server
#
# Version 0.1
# date 11.10.2008
# (c) by packetlevel.ch
#
#################################################################################
#
# Community COMM
# Cisco Device IP DEVIP
# TFTP Server TARGETIP
# Backupfilename FILENAME
COMM=privat
DEVIP=192.168.1.1
TARGETIP=192.168.1.100
FILENAME=backupfile
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 6
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.2.111 i 1
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.3.111 i 4
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.4.111 i 1
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.5.111 a $TARGETIP
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.6.111 s $FILENAME
snmpset -c $COMM -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 1
A Sample with scp
#!/bin/bash
#
# simple scp copy from the Router to the ssh Server
#
# Version 0.1
# date 11.10.2008
# (c) by packetlevel.ch
#
#################################################################################
#
# Community COMM
# Cisco Device IP DEVIP
# SSH Server TARGETIP
# Backupfilename FILENAME
# Username USERNAME
# Password PASSWD
COMM=privat
DEVIP=192.168.1.1
TARGETIP=192.168.1.100
FILENAME=backupfile
USERNAME=mysshuser
PASSWD=mysecret
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 6
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.2.111 i 4
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.3.111 i 4
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.4.111 i 1
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.7.111 s $USERNAME
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.8.111 s $PASSWD
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.5.111 a $TARGETIP
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.6.111 s $FILENAME
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 1
A Sample with ftp
#!/bin/bash
#
# simple ftp copy from the Router to the ssh Server
#
# Version 0.1
# date 11.10.2008
# (c) by packetlevel.ch
#
#################################################################################
#
# Community COMM
# Cisco Device IP DEVIP
# SSH Server TARGETIP
# Backupfilename FILENAME
# Username USERNAME
# Password PASSWD
COMM=privat
DEVIP=192.168.1.1
TARGETIP=192.168.1.100
FILENAME=backupfile
USERNAME=myftpuser
PASSWD=mysecret
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 6
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.2.111 i 2
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.3.111 i 4
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.4.111 i 1
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.7.111 s $USERNAME
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.8.111 s $PASSWD
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.5.111 a $TARGETIP
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.6.111 s $FILENAME
snmpset -c privat -v 1 $DEVIP 1.3.6.1.4.1.9.9.96.1.1.1.1.14.111 i 1
Easy Script sample