#!/bin/sh # usage: update-vsftp with no argument # retrieve external IP address after ipcheck.py got it from the router # author: Christophe Garrigue # creation date: 7th may 2006 # Publice domain CONF=/etc/vsftpd/vsftpd.conf IPCHECK=/etc/ipcheck/ #copy previous external IP rm -f gate.dat.old mv gate.dat gate.dat.old #get last external ip detected by ipcheck cat ${IPCHECK}ipcheck.html | sed -e 's/nochg\ \(.*\)\|good\ \(.*\)/IP=\1\2/' > gate.dat #test if external IP has changed rm -f gate.change diff gate.dat gate.dat.old > gate.change if test -s "gate.change"; then . gate.dat; rm ${CONF}.old; mv $CONF ${CONF}.old; sed -e"s/pasv_address=.*/pasv_address=$IP/" > $CONF < ${CONF}.old; /etc/init.d/vsftpd restart; fi