diff options
Diffstat (limited to 'postfix_wizard')
-rwxr-xr-x | postfix_wizard/scripts/check_masquerade.sh | 53 | ||||
-rwxr-xr-x | postfix_wizard/scripts/check_relay.sh | 50 | ||||
-rwxr-xr-x | postfix_wizard/scripts/compute_mail_relay.sh | 41 | ||||
-rwxr-xr-x | postfix_wizard/scripts/compute_masquerade.sh | 41 | ||||
-rwxr-xr-x | postfix_wizard/scripts/postfix_do_it.sh | 103 | ||||
-rw-r--r-- | postfix_wizard/scripts/testlabel.pl | 15 |
6 files changed, 303 insertions, 0 deletions
diff --git a/postfix_wizard/scripts/check_masquerade.sh b/postfix_wizard/scripts/check_masquerade.sh new file mode 100755 index 00000000..ad0559c6 --- /dev/null +++ b/postfix_wizard/scripts/check_masquerade.sh @@ -0,0 +1,53 @@ +#!/bin/bash +# +# Wizard +# +# Copyright (C) 2000 Mandrakesoft. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# See file LICENSE for further informations on licensing terms. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi +# icons: Helene Durosini <ln@mandrakesoft.com> +# <corporate@mandrakesoft.com> http://www.mandrakesoft.com + +# script for wizard postfix configuration +# +# checking if the provided domain value is correct : +# strip the @, need at least a dot + +if [ -z "${wiz_mail_masquerade}" ] ;then + echo_debug "wiz_mail_masquerade is empty, should not." + exit 1 +fi + +test=`echo ${wiz_mail_masquerade} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' |grep "\."` +echo_debug "test of masquerading domain : ${test}" + +if [ -z "${test}" ] ;then + echo_debug "domain empty, should not." + exit 1 +fi +if `echo ${test}| grep -q ' '` ;then + echo_debug "bad domain : $test" + exit 1 +fi + +# all seems to be ok +exit 10 + + + + diff --git a/postfix_wizard/scripts/check_relay.sh b/postfix_wizard/scripts/check_relay.sh new file mode 100755 index 00000000..c7a2368f --- /dev/null +++ b/postfix_wizard/scripts/check_relay.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# +# Wizard +# +# Copyright (C) 2000 Mandrakesoft. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# See file LICENSE for further informations on licensing terms. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi +# icons: Helene Durosini <ln@mandrakesoft.com> +# <corporate@mandrakesoft.com> http://www.mandrakesoft.com + +# script for wizard postfix configuration +# +# checking if the provided hostname of relay value is correct +# +# at least a dot, strip @ + + +if [ -z "${wiz_ext_mail_relay}" ]; then + echo_debug "wiz_ext_mail_relay is empty, should not." + exit 1 +fi + +# (no need to skip white space), stripping @, need dot + +test=`echo ${wiz_ext_mail_relay} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}'|grep "\."` +echo_debug "test of relay domain : ${test}" + +if [ -z "${test}" ] ;then + echo_debug "relay empty, should not." + exit 1 +fi + +# all seems to be ok +exit 10 + diff --git a/postfix_wizard/scripts/compute_mail_relay.sh b/postfix_wizard/scripts/compute_mail_relay.sh new file mode 100755 index 00000000..b2fc35e6 --- /dev/null +++ b/postfix_wizard/scripts/compute_mail_relay.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# +# Wizard +# +# Copyright (C) 2000 Mandrakesoft. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# See file LICENSE for further informations on licensing terms. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi +# icons: Helene Durosini <ln@mandrakesoft.com> +# <corporate@mandrakesoft.com> http://www.mandrakesoft.com + +# script for wizard postfix configuration +# +# echo on stdout the correct value of wiz_ext_mail_relay +# (strip @) + + +#stripping @, need dot + +test=`echo ${wiz_ext_mail_relay} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' -e 's! .*$!!'` +echo_debug "relay domain : ${test}" + +echo ${test} + +# all seems to be ok +exit 0 + diff --git a/postfix_wizard/scripts/compute_masquerade.sh b/postfix_wizard/scripts/compute_masquerade.sh new file mode 100755 index 00000000..a6f37111 --- /dev/null +++ b/postfix_wizard/scripts/compute_masquerade.sh @@ -0,0 +1,41 @@ +#!/bin/bash +# +# Wizard +# +# Copyright (C) 2000 Mandrakesoft. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# See file LICENSE for further informations on licensing terms. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi +# icons: Helene Durosini <ln@mandrakesoft.com> +# <corporate@mandrakesoft.com> http://www.mandrakesoft.com + +# script for wizard postfix configuration +# +# echo on stdout the correct value of wiz_mail_masquerade +# (strip @) + + +#stripping @ + +test=`echo ${wiz_mail_masquerade} |sed -e '/@/{s/^[^@]*@\([^@]*\)$/\1/;}' -e 's! .*$!!'` +echo_debug "masquerade domain : ${test}" + +echo ${test} + +# all seems to be ok +exit 0 + diff --git a/postfix_wizard/scripts/postfix_do_it.sh b/postfix_wizard/scripts/postfix_do_it.sh new file mode 100755 index 00000000..1fbaffd9 --- /dev/null +++ b/postfix_wizard/scripts/postfix_do_it.sh @@ -0,0 +1,103 @@ +#!/bin/bash +# +# Wizard +# +# Copyright (C) 2000 Mandrakesoft. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# See file LICENSE for further informations on licensing terms. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi +# icons: Helene Durosini <ln@mandrakesoft.com> +# <corporate@mandrakesoft.com> http://www.mandrakesoft.com + +# script for wizard network configuration +# +# install default postfix configuration for server +# assuming all dependencies are ok + + +echo_debug "now applying configuration for postfix" + +[ -d /etc/postfix ] || exit 1 + +# first loading values +. /etc/sysconfig/network + +# loading values from /etc/sysconfig/mdk_serv +# wiz_host_name and wiz_domain_name +wiz_host_name=`get_var wiz_host_name` +wiz_domain_name=`get_var wiz_domain_name` + +wiz_device=`get_var wiz_device` + + +file="/etc/sysconfig/network-scripts/ifcfg-${wiz_device}" +echo_debug "device config : ${file}" +[ -f ${file} ] || exit 1 +. ${file} + +# store the wiz_mail variable +cfg_file=/etc/sysconfig/mdk_serv +echo_debug "wiz_mail_masquerade ${wiz_mail_masquerade}" +chg_val ${cfg_file} wiz_ext_mail_relay "${wiz_ext_mail_relay}" s +chg_val ${cfg_file} wiz_mail_masquerade "${wiz_mail_masquerade}" s + +bck_file /etc/postfix/aliases +bck_file /etc/postfix/canonical +bck_file /etc/postfix/main.cf +bck_file /etc/postfix/master.cf +bck_file /etc/postfix/virtual + +# now configuring + +postconf -e "myhostname = ${wiz_host_name}" +postconf -e 'myorigin = $mydomain' +postconf -e 'inet_interfaces = all' +postconf -e 'mydestination = $myhostname, localhost.$mydomain, $mydomain' + +if [ -n "${wiz_ext_mail_relay}" ]; then + postconf -e "relayhost = ${wiz_ext_mail_relay}" +fi + +postconf -e 'masquerade_domains = $mydomain' + +postconf -e 'alias_maps = hash:/etc/postfix/aliases' +postconf -e 'alias_database = hash:/etc/postfix/aliases' + +postconf -e 'virtual_maps = hash:/etc/postfix/virtual' +postconf -e 'canonical_maps = hash:/etc/postfix/canonical' + +if [ -n "${wiz_mail_masquerade}" ]; then + if [ ! `grep "@${wiz_domain_name} @${wiz_mail_masquerade}" /etc/postfix/canonical` ]; then + echo "@${wiz_domain_name} @${wiz_mail_masquerade}" >> /etc/postfix/canonical + fi +fi + +echo_debug "rebuilding hash" + +postmap /etc/postfix/canonical +postmap /etc/postfix/virtual +postalias /etc/postfix/aliases + +postfix check + +echo_debug "end of postfix configuration, restarting" + +service postfix restart +service xinetd restart + +# all is ok +exit 10 diff --git a/postfix_wizard/scripts/testlabel.pl b/postfix_wizard/scripts/testlabel.pl new file mode 100644 index 00000000..c61d3cb0 --- /dev/null +++ b/postfix_wizard/scripts/testlabel.pl @@ -0,0 +1,15 @@ +$toto = "tutu"; +$tata = "titi"; + +$file = "/home/logarno/toto"; +open(CANONICAL, "< $file"); +while (<CANONICAL>) { + if (/\@$toto\s*\@$tata/){ + goto NOUPDATE; + } +} +close(CANONICAL); +open(CANONICAL, ">> $file"); +print CANONICAL "\n\@$toto \@$tata"; + NOUPDATE: + close(CANONICAL); |