- vise informativnih poruka
[fail2ban-cn.git] / debian / postinst
1 #!/bin/sh
2 # postinst script for bind9-cn
3 #
4 # see: dh_installdeb(1)
5
6 set -e
7
8 # summary of how this script can be called:
9 #        * <postinst> `configure' <most-recently-configured-version>
10 #        * <old-postinst> `abort-upgrade' <new version>
11 #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
12 #          <new-version>
13 #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
14 #          <failed-install-package> <version> `removing'
15 #          <conflicting-package> <version>
16 # for details, see http://www.debian.org/doc/debian-policy/ or
17 # the debian-policy package
18 #
19
20 case "$1" in
21     configure|reconfigure)
22       # continue below
23     ;;
24
25     *)
26         exit 0
27     ;;
28 esac
29
30 # import CN-functions
31 . /usr/share/carnet-tools/functions.sh
32
33 CONF=/etc/fail2ban/jail.conf
34
35 if [ -e "$CONF" ]; then
36     # enable ssh, pam-generic, sasl, proftpd and vsftpd service
37     echo "CN: Enabling SSH, PAM-generic, SASL, Proftpd and Vsftpd support"
38     perl -ne 'if (/^\[(ssh|pam-generic|sasl|proftpd|vsftpd)\]/ .. /^enabled/) { $_ =~ s/^enabled\s+=\s+false/enabled    = true/gi }; print $_' "$CONF" > "$CONF.$$" && \
39         cp_mv "$CONF.$$" "$CONF"
40     rm -f "$CONF.$$"
41
42     # enable dovecot service
43     echo "CN: Enabling full Dovecot support"
44     cp -a "$CONF" "$CONF.$$"
45     cp-update fail2ban-cn "$CONF.$$" <<EOF
46 [dovecot]
47
48 enabled     = true
49 port        = 110,143
50 protocol    = tcp
51 filter      = dovecot
52 logpath     = /var/log/mail.log
53 EOF
54     cp_mv "$CONF.$$" "$CONF"
55
56     # add network address and class if needed
57     cp_get_netaddr || true
58     NETADDR="$RET"
59     IGNOREIP=$(grep '^ignoreip' "$CONF")
60     if ! echo "$IGNOREIP" | grep -q "$NETADDR"; then
61        echo "CN: Enabling local IP ranges exclusion"
62        cp_check_and_sed '^ignoreip' \
63             "s;^\(ignoreip.*\)$;\1 $NETADDR;g" "$CONF" || true
64     fi
65 fi
66
67 # restart the services
68 if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
69         invoke-rc.d fail2ban restart || exit $?
70 else
71         /etc/init.d/fail2ban restart || exit $?
72 fi
73
74 # dh_installdeb will replace this with shell code automatically
75 # generated by other debhelper scripts.
76
77 #DEBHELPER#
78
79 exit 0