summaryrefslogtreecommitdiff
path: root/debian/vyatta-cfg-firewall.postinst.in
diff options
context:
space:
mode:
Diffstat (limited to 'debian/vyatta-cfg-firewall.postinst.in')
-rw-r--r--debian/vyatta-cfg-firewall.postinst.in70
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
+