diff options
Diffstat (limited to 'debian/vyatta-cfg-firewall.postinst.in')
-rw-r--r-- | debian/vyatta-cfg-firewall.postinst.in | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/debian/vyatta-cfg-firewall.postinst.in b/debian/vyatta-cfg-firewall.postinst.in new file mode 100644 index 0000000..4208536 --- /dev/null +++ b/debian/vyatta-cfg-firewall.postinst.in @@ -0,0 +1,70 @@ +#!/bin/bash + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +sysconfdir=@sysconfdir@ +bindir=@bindir@ +sbindir=@sbindir@ + +# remove init of daemons that we start/stop +for init in ntp ssh snmpd keepalived ipvsadm; do + update-rc.d -f ${init} remove >/dev/null +done + +# create symlinks +for bb in telnetd telnet tftp ftpget ftpput; do + ln -sf /bin/busybox ${sbindir}/${bb} +done +ln -sf ${bindir}/progress-indicator /usr/bin/progress-indicator + +if [ "$sysconfdir" != "/etc" ]; then + # remove the config files and replace with blank ones + for conf in motd.tail ntp.conf syslog.conf logrotate.d/messages \ + default/ssh ssh/ssh_host_key quagga/daemons quagga/zebra.conf \ + quagga/bgpd.conf quagga/ospfd.conf quagga/ospf6d.conf \ + quagga/ripd.conf quagga/ripngd.conf quagga/isisd.conf \ + snmp/snmpd.conf snmp/snmptrapd.conf keepalived/keepalived.conf \ + ipvsadm.rules default/ipvsadm + do + [ -f /etc/$conf ] && mv -f /etc/$conf /etc/$conf.vyatta-save + touch /etc/$conf + done + + # use our config files + for conf in motd.tail syslog.conf; do + cp $sysconfdir/$conf /etc/$conf + done + cp $sysconfdir/logrotate_messages /etc/logrotate.d/messages + cp $sysconfdir/default_ssh /etc/default/ssh + + # sudoers + [ -f /etc/sudoers ] && cp -pf /etc/sudoers /etc/sudoers.vyatta-save + if ! grep -q '%quaggavty ALL=NOPASSWD: ALL' /etc/sudoers; then + echo -e "\n%quaggavty ALL=NOPASSWD: ALL" >> /etc/sudoers + fi + echo "Defaults env_keep+=VYATTA_*" >> /etc/sudoers + + # ssh v1. remove the empty key file + rm /etc/ssh/ssh_host_key + + # remove unnecessary files + rm /etc/logrotate.d/*.vyatta-save >& /dev/null + + # quagga/daemons + sed 's/=no/=yes/' /etc/quagga/daemons.vyatta-save > /etc/quagga/daemons + echo "log syslog warnings" >> /etc/quagga/zebra.conf +fi + +# update crontab for logrotate +grep -v logrotate /etc/crontab>/etc/crontab.$$ +echo "*/10 * * * * /usr/sbin/logrotate /etc/logrotate.conf" >> /etc/crontab.$$ +rm /etc/crontab +mv /etc/crontab.$$ /etc/crontab +crontab /etc/crontab + +# create needed directories +mkdir -p /etc/raddb +mkdir -p /var/log/{user,vrrpd} + +touch /etc/environment + |