| 1 | #!/bin/sh -e |
| 2 | |
| 3 | redo_exim() { |
| 4 | /bin/echo -n "domainlist local_domains = " >/etc/exim4/conf.d/main/10_domtool-domains |
| 5 | /bin/cat /var/domtool/local_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains |
| 6 | /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains |
| 7 | /bin/echo -n "domainlist relay_to_domains = " >>/etc/exim4/conf.d/main/10_domtool-domains |
| 8 | /bin/cat /var/domtool/relay_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains |
| 9 | /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains |
| 10 | /bin/echo -n "domainlist mm_domains = " >>/etc/exim4/conf.d/main/10_domtool-domains |
| 11 | /bin/cat /var/domtool/mailman_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains |
| 12 | /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains |
| 13 | /etc/init.d/exim4 reload |
| 14 | } |
| 15 | |
| 16 | case $1 in |
| 17 | apache) |
| 18 | /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache2/vhosts/ |
| 19 | /etc/init.d/apache2 reload |
| 20 | ;; |
| 21 | apache-down) |
| 22 | /etc/init.d/apache2 stop |
| 23 | ;; |
| 24 | apache-undown) |
| 25 | /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache2/vhosts/ |
| 26 | /etc/init.d/apache2 start |
| 27 | ;; |
| 28 | apache1.3) |
| 29 | /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache/vhosts/ |
| 30 | /etc/init.d/apache reload |
| 31 | ;; |
| 32 | apache1.3-down) |
| 33 | /etc/init.d/apache stop |
| 34 | ;; |
| 35 | apache1.3-undown) |
| 36 | /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache/vhosts/ |
| 37 | /etc/init.d/apache start |
| 38 | ;; |
| 39 | bind) |
| 40 | /usr/bin/rsync -r --delete /var/domtool/zones/ /etc/bind/zones/ |
| 41 | /bin/chown -R bind /etc/bind/zones |
| 42 | /bin/cp /var/domtool/named.conf.local /etc/bind/ |
| 43 | /bin/chown root:bind_config /etc/bind/named.conf.local |
| 44 | /bin/chmod u=rw,g=rw,o=r /etc/bind/named.conf.local |
| 45 | /etc/init.d/bind9 restart |
| 46 | ;; |
| 47 | exim) |
| 48 | /bin/cp /var/domtool/aliases /etc/aliases.hosted |
| 49 | /bin/cp /var/domtool/aliases.default /etc/aliases.wildcard |
| 50 | redo_exim |
| 51 | ;; |
| 52 | mailman) |
| 53 | /bin/echo "HCOOP_VHOSTS = {" >/etc/mailman/vhosts_cfg.py |
| 54 | /bin/cat /var/domtool/mailman.map >>/etc/mailman/vhosts_cfg.py |
| 55 | /bin/echo "}" >>/etc/mailman/vhosts_cfg.py |
| 56 | /etc/init.d/mailman reload |
| 57 | redo_exim |
| 58 | ;; |
| 59 | courier) |
| 60 | /usr/sbin/makeuserdb |
| 61 | /bin/chown -R domtool.nogroup /etc/courier/userdb |
| 62 | /bin/cat /etc/courier/userdb/* >/etc/courier/exim |
| 63 | /bin/chmod o-r /etc/courier/exim |
| 64 | /usr/sbin/exim_dbmbuild /etc/courier/exim /etc/courier/exim.dat |
| 65 | /bin/chgrp mail /etc/courier/exim.dat |
| 66 | /bin/chmod o-r /etc/courier/exim.dat |
| 67 | ;; |
| 68 | smtplog) |
| 69 | /bin/grep $2 /var/log/exim4/mainlog |
| 70 | ;; |
| 71 | apache-fixperms) |
| 72 | /bin/chown -R domtool.nogroup /var/log/apache2/user |
| 73 | ;; |
| 74 | apache1.3-fixperms) |
| 75 | /bin/chown -R domtool.nogroup /var/log/apache/user |
| 76 | ;; |
| 77 | users) |
| 78 | /bin/cp /var/domtool/waklog.conf /etc/apache2/ |
| 79 | /etc/init.d/apache2 reload |
| 80 | ;; |
| 81 | firewall) |
| 82 | # Ideally this would check if the config worked first |
| 83 | # (ferm failing just uses the previous config at |
| 84 | # least). Does it need to chown/chmod the generated |
| 85 | # rules? |
| 86 | /bin/cp /var/domtool/firewall/*.conf /etc/ferm/ |
| 87 | /etc/init.d/ferm reload |
| 88 | ;; |
| 89 | *) |
| 90 | echo "Usage: domtool-publish [apache|bind|courier|exim|mailman|smtplog STRING|users|firewall]" |
| 91 | ;; |
| 92 | esac |