Changeset 799


Ignore:
Timestamp:
02/22/06 04:01:08 (7 years ago)
Author:
anarcat
Message:

skipping to 20060221201309-67438-1ad69475725370c754a58452453d0693db92624a.gz .

Files:
2 added
12 edited

Legend:

Unmodified
Added
Removed
  • bureau/class/m_mail.php

    r789 r799  
    11<?php 
    22/* 
    3  $Id: m_mail.php,v 1.30 2005/12/18 09:51:32 benjamin Exp $ 
     3 $Id: m_mail.php,v 1.31 2006/01/12 06:26:16 anarcat Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    440440      $m="_"; 
    441441    } 
    442     $db->query("INSERT INTO mail_users (uid,alias,path,password,sasl) VALUES ('$cuid','".$mail."_".$dom."','/var/alternc/mail/".$m."/".$mail."_".$dom."','"._md5cr($pass)."','$pass');"); 
    443     $db->query("INSERT INTO mail_users (uid,alias,path,password,sasl) VALUES ('$cuid','".$mail."@".$dom."','/var/alternc/mail/".$m."/".$mail."_".$dom."','"._md5cr($pass)."','$pass');"); 
     442    $db->query("INSERT INTO mail_users (uid,alias,path,password) VALUES ('$cuid','".$mail."_".$dom."','/var/alternc/mail/".$m."/".$mail."_".$dom."','"._md5cr($pass)."');"); 
     443    $db->query("INSERT INTO mail_users (uid,alias,path,password) VALUES ('$cuid','".$mail."@".$dom."','/var/alternc/mail/".$m."/".$mail."_".$dom."','"._md5cr($pass)."');"); 
    444444    $db->query("INSERT INTO mail_alias (mail,alias) VALUES ('".$mail."_".$dom."','/var/alternc/mail/".$m."/".$mail."_".$dom."/Maildir/');"); 
    445445 
     
    451451    fclose($f); 
    452452    exec("/usr/lib/alternc/mail_add ".$mail."_".$dom." ".$cuid); 
    453     exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -c -p ".$mail."@".$dom); 
    454     exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -c -p ".$mail."_".$dom); 
    455453    return true; 
    456454  } 
     
    469467    $m=substr($mail,0,1); 
    470468    $gecos=$mail; 
    471     $db->query("UPDATE mail_users SET sasl='$pass', password='"._md5cr($pass)."' WHERE ( alias='". $mail."_".$dom."' OR alias='". $mail."@".$dom."' ) AND uid='$cuid';"); 
    472     exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -p ".$mail."@".$dom); 
    473     exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -p ".$mail."_".$dom); 
     469    $db->query("UPDATE mail_users SET password='"._md5cr($pass)."' WHERE ( alias='". $mail."_".$dom."' OR alias='". $mail."@".$dom."' ) AND uid='$cuid';"); 
    474470    return true; 
    475471  } 
     
    492488    @unlink("/var/lib/squirrelmail/data/".$mail."@".$dom.".abook"); 
    493489    exec("/usr/lib/alternc/mail_del ".$mail."_".$dom); 
    494     exec("/usr/sbin/saslpasswd -u postfix -d ".$mail."@".$dom); 
    495     exec("/usr/sbin/saslpasswd -u postfix -d ".$mail."_".$dom); 
    496490    return true; 
    497491  } 
  • debian/config

    r782 r799  
    2626INTERNAL_IP=`perl -e "print gethostbyname('$FQDN')"` 
    2727DEFAULT_MX=`cat /etc/mailname` 
    28 v v v v v v v 
    29 ALTERNC_LOC='/var/alternc' 
    30 ************* 
    31 v v v v v v v 
    32 ALTERNC_LOC='/var/alternc' 
    33 ^ ^ ^ ^ ^ ^ ^ 
    34 FQDN=`hostname -f` 
    35 v v v v v v v 
    36  
    37 ************* 
    3828ALTERNC_LOC='/var/alternc' 
    3929FQDN=`hostname -f` 
    40 # default DATA_PART to /dev/hda, even if we can't find any 
    41 # this will occur within vservers 
    42 DATA_PART=${DATA_PART:-/dev/hda} 
    4330NS1_HOSTNAME="$FQDN" 
    4431NS2_HOSTNAME="$FQDN" 
    4532 
    46 ************* 
    47 DATA_PART=`df /var/alternc 2>/dev/null | awk '/^\// { print $1 }'` 
    48 # default DATA_PART to /dev/hda, even if we can't find any 
    49 # this will occur within vservers 
    50 DATA_PART=${DATA_PART:-/dev/hda} 
    51 NS1_HOSTNAME="$FQDN" 
    52 NS2_HOSTNAME="$FQDN" 
    53  
    54 ^ ^ ^ ^ ^ ^ ^ 
    55 ************* 
    56 NS1_HOSTNAME="$FQDN" 
    57 NS2_HOSTNAME="$FQDN" 
    58  
    59 ^ ^ ^ ^ ^ ^ ^ 
    6033if [ -r /etc/alternc/local.sh ]; then 
    6134    # source the current config 
     
    6437 
    6538# mettre les valeurs de local.sh comme "default" pour debconf 
    66 v v v v v v v 
    6739db_set alternc/hostingname "$HOSTING" 
    6840db_set alternc/desktopname "$FQDN" 
     
    8052db_set alternc/alternc_location "$ALTERNC_LOC" 
    8153db_set alternc/mynetwork "$SMTP_RELAY_NETWORKS" 
    82 ************* 
    83 v v v v v v v 
    84       db_set alternc/mysql/host $MYSQL_HOST 
    85     db_set alternc/mysql/db $MYSQL_DATABASE 
    86     db_set alternc/mysql/user $MYSQL_USER 
    87     db_set alternc/mysql/password $MYSQL_PASS 
    88     db_set alternc/internal_ip $DEFAULT_IP 
    89     db_set alternc/public_ip $DEFAULT_IP 
    90     db_set alternc/default_mx $DEFAULT_MX 
    91     db_set alternc/alternc_location $ALTERNC_LOC 
    92     db_set alternc/desktopname $FQDN 
    93  
    94  
    95 # ... sauf pour ns1/ns2, qui ne sont pas dans local.sh 
    96 # ici, on met donc le FQDN par defaut si debconf n'y connait rien 
    97   db_get alternc/ns1 || true 
    98   if [ -z "$RET" ] 
    99   then 
    100       db_set alternc/ns1 $FQDN 
    101   fi 
    102   db_get alternc/ns2 || true 
    103   if [ -z "$RET" ] 
    104   then 
    105       db_set alternc/ns2 $FQDN 
    106   fi 
    107 ************* 
    108 db_set alternc/hostingname "$HOSTING" 
    109 db_set alternc/desktopname "$FQDN" 
    110 db_set alternc/public_ip "$PUBLIC_IP" 
    111 db_set alternc/internal_ip "$INTERNAL_IP" 
    112 db_set alternc/monitor_ip "$MONITOR_IP" 
    113 db_set alternc/ns1 "$NS1_HOSTNAME" 
    114 db_set alternc/ns2 "$NS2_HOSTNAME" 
    115 db_set alternc/bind_internal "$BIND_INTERNAL" 
    116 db_set alternc/default_mx "$DEFAULT_MX" 
    117 db_set alternc/mysql/host "$MYSQL_HOST" 
    118 db_set alternc/mysql/db "$MYSQL_DATABASE" 
    119 db_set alternc/mysql/user "$MYSQL_USER" 
    120 db_set alternc/mysql/password "$MYSQL_PASS" 
    121 db_set alternc/data_part "$DATA_PART" 
    122 db_set alternc/mynetwork "$SMTP_RELAY_NETWORKS" 
    123 ^ ^ ^ ^ ^ ^ ^ 
    124 ^ ^ ^ ^ ^ ^ ^ 
    12554 
    12655db_input medium alternc/desktopname || true 
  • debian/control

    r795 r799  
    88Package: alternc 
    99Architecture: all 
    10 Depends: debianutils (>= 1.13.1), debconf (>= 0.5.00) | debconf-2.0, php4 | php5, apache, apache-ssl, courier-ssl, courier-imap-ssl, courier-pop-ssl, gettext (>= 0.14.1), mysql-server, php5-mysql | php4-mysql, php5-cgi | php4-cgi, phpmyadmin, proftpd-mysql, squirrelmail, postfix, postfix-tls, bind9, wget, libapache-mod-gzip, rsync, quota, courier-authmysql, pop-before-smtp, ca-certificates, locales, perl-suid, perl, postfix-mysql, wwwconfig-common, alternc-admintools, sasl2-bin, libsasl2-modules, libsasl2-modules-sql 
     10Depends: debianutils (>= 1.13.1), debconf (>= 0.5.00) | debconf-2.0, php4 | php5, apache, apache-ssl, courier-ssl, courier-imap-ssl, courier-pop-ssl, gettext (>= 0.14.1), mysql-server, php5-mysql | php4-mysql, php5-cgi | php4-cgi, phpmyadmin, proftpd-mysql, squirrelmail, postfix, postfix-tls, pdksh, bind9, wget, libapache-mod-gzip, rsync, quota, courier-authmysql, pop-before-smtp, ca-certificates, locales, perl-suid, perl, postfix-mysql, wwwconfig-common, alternc-admintools, sasl2-bin, libsasl2-modules, libsasl2-modules-sql 
    1111Suggests: screen, alternc-awstats, alternc-mailman, alternc-changepass 
    1212Description: hosting software managment suite for Debian 
  • debian/postinst

    r782 r799  
    9393    fi 
    9494 
    95 v v v v v v v 
    96     # Update local.sh 
    97     # 1. use cp to keep permissions 
    98     # 2. add missing variable to local.sh 
    99     # 3. use sed to set variables with current values 
    100     echo "Updating $CONFIGFILE" 
    101     cp -a -f $CONFIGFILE $CONFIGFILE.tmp 
    102     # SED_SCRIPT will be modified by update_var 
    103     SED_SCRIPT="" 
    104     update_var alternc/hostingname HOSTING 
    105     update_var alternc/desktopname FQDN  
    106     update_var alternc/public_ip PUBLIC_IP 
    107     update_var alternc/internal_ip INTERNAL_IP 
    108     update_var alternc/monitor_ip MONITOR_IP 
    109     update_var alternc/ns1 NS1_HOSTNAME 
    110     update_var alternc/ns2 NS2_HOSTNAME 
    111     update_var alternc/bind_internal BIND_INTERNAL 
    112     update_var alternc/default_mx DEFAULT_MX  
    113     update_var alternc/mysql/host MYSQL_HOST  
    114     update_var alternc/mysql/db MYSQL_DATABASE  
    115     update_var alternc/mysql/user MYSQL_USER  
    116     update_var alternc/mysql/password MYSQL_PASS  
    117     update_var alternc/data_part DATA_PART  
    118     update_var alternc/mynetwork SMTP_RELAY_NETWORKS 
    119     sed -e "$SED_SCRIPT" < $CONFIGFILE > $CONFIGFILE.tmp 
    120     mv -f $CONFIGFILE.tmp $CONFIGFILE 
    121 ************* 
    12295    for pair in \ 
    12396    "alternc/desktopname FQDN" \ 
    12497    "alternc/default_mx DEFAULT_MX" \ 
    125 v v v v v v v 
    12698    "alternc/alternc_location ALTERNC_LOC" \ 
    127 ^ ^ ^ ^ ^ ^ ^ 
    12899    "alternc/mysql/host MYSQL_HOST" \ 
    129100    "alternc/mysql/db MYSQL_DATABASE" \ 
     
    143114      done 
    144115    done 
    145 ^ ^ ^ ^ ^ ^ ^ 
    146116 
    147117    # forget the password 
     
    154124    fi 
    155125 
    156 v v v v v v v 
    157     # Erase all apacheconf file 
    158     # They will be regenerated without the bug by upgrade_check.sh below. 
    159     if dpkg --compare-versions "$2" le "0.9.3.9-globenet14"; then 
    160         rm -f /var/alternc/apacheconf/*/* 
    161         rm -f /var/alternc/apacheconf/override_php.conf 
    162     fi 
    163 ************* 
    164 v v v v v v v 
    165     # 
    166     # rewriting alternc.conf 
    167     # 
    168     change_var "mx" "$DEFAULT_MX" 
    169     change_var "ALTERNC_LOC" "$ALTERNC_LOC" 
    170     change_var "dbhost" "$MYSQL_HOST" 
    171     change_var "dbuser" "$MYSQL_USER" 
    172     change_var "dbpwd" "$MYSQL_PASS" 
    173     change_var "dbname" "$MYSQL_DATABASE" 
    174     change_var "fqdn" "$FQDN" 
    175     change_var "public_ip" "$DEFAULT_IP" 
    176      
    177     for pair in \ 
    178     "alternc/internal_ip internal_ip" \ 
    179     "alternc/hostingname hosting" \ 
    180     "alternc/ns1 ns1" \ 
    181     "alternc/ns2 ns2" \ 
    182     "alternc/monitor_ip monitor_ip" \ 
    183     "alternc/bind_internal bind_internal" \ 
    184     "alternc/mynetwork mynetwork" 
    185     do 
    186       skip=0 
    187       for single in $pair 
    188       do 
    189         if [ "$skip" = "0" ]; then 
    190           var="$single" 
    191           skip=1 
    192         else 
    193           db_get "$var" || true 
    194           change_var "$single" "$RET" 
    195         fi 
    196       done 
    197     done 
    198 ^ ^ ^ ^ ^ ^ ^ 
    199  
    200 ************* 
    201126    # Erase all apacheconf file 
    202127    # They will be regenerated without the bug by upgrade_check.sh below. 
     
    206131    fi 
    207132 
    208 ^ ^ ^ ^ ^ ^ ^ 
    209133    echo "checking for upgrades" 
    210134    /usr/share/alternc/install/upgrade_check.sh $2 
     135 
     136    # important: postinst gele sans ca 
     137    db_stop 
    211138 
    212139    echo "config phpmyadmin" 
  • debian/prerm

    r713 r799  
    66case "$1" in 
    77remove) 
    8     . /etc/alternc/local.sh 
    9  
    10     FQDN_LETTER="`echo $FQDN | sed -e 's/.*\.\([^\.]\)[^\.]*\.[^\.]*$/\1/'`" 
    11  
    12     rm -rf /var/alternc/bureau/locales 
    13     rmdir -p /var/alternc/bureau 2> /dev/null || true 
    14     rm -f /var/alternc/dns/bureau 
    15     rm -f /var/alternc/dns/$FQDN_LETTER/$FQDN 
    16     rm -f /var/alternc/apacheconf/bureau 
    17     rm -f /var/alternc/apacheconf/$FQDN_LETTER/$FQDN 
    18     rmdir -p /var/alternc/html/r/root 2> /dev/null || true 
    19     rm -f /var/alternc/apacheconf/override_php.conf 
    20     rmdir -p /var/alternc/htm/r/root 2> /dev/null || true 
    21  
    228    ;; 
    239 
     
    2612 
    2713purge) 
     14    find /var/alternc/bureau/locales -type f -name "alternc.mo" -exec rm {} \; 
     15    find /var/alternc/bureau/locales -type f -name "alternc" -exec rm {} \; 
     16    rm /var/alternc/bureau/class/local.php 
    2817    ;; 
    2918 
  • etc/alternc/templates/postfix/sasl/smtpd.conf

    r579 r799  
    1 pwcheck_method: auxprop 
    2 auxprop_plugin: sql 
     1pwcheck_method: saslauthd 
    32mech_list: plain login 
    4 sql_engine: mysql 
    5 sql_hostnames: %%dbhost%% 
    6 sql_user: %%dbuser%% 
    7 sql_passwd: %%dbpwd%% 
    8 sql_database: %%dbname%% 
    9 sql_select: select sasl from mail_users where alias='%u@%r' or alias='%u' 
    10  
  • install/alternc.install

    r794 r799  
    154154done 
    155155 
    156 v v v v v v v 
    157156####################################################################### 
    158157# Save installed files to check them during next install 
    159158# 
    160159tar -zcf "$INSTALLED_CONFIG_TAR" -C / $CONFIG_FILES 
    161 ************* 
    162 v v v v v v v 
    163 ####################################################################### 
    164 # Save installed files to check them during next install 
    165 # 
    166 tar -zcf "$INSTALLED_CONFIG_TAR" -C / $CONFIG_FILES 
    167 ************* 
    168 %vars = ( 
    169          "hosting" => "Nom du service d'hebergement ", 
    170          "mx" => "Nom du serveur de mail ", 
    171          "ns1" => "Nom du serveur DNS primaire ", 
    172          "ns2" => "Nom du serveur DNS secondaire ", 
    173          "internal_ip" => "Adresse IP de l'interface réseau", 
    174          "mynetwork" => "Liste des réseaux autorisés en SMTP", 
    175          "fqdn" => "Nom de domaine du serveur hébergé ", 
    176          "bind_internal" => "Adresse IP ou classe d'IP des machines à l'intérieur de notre réseau de confiance DNS, séparés par ';', facultatif ", 
    177          "public_ip" => "Adresse IP annoncee par le serveur DNS pour ce serveur (vaut souvent internal_ip)", 
    178          "data_part" => "Nom de la partition contenant /%DATA/, pour la gestion des quotas (ex: /dev/hda3)", 
    179          "dbhost" => "Serveur où la base de données systeme de MySQL sera créée", 
    180          "dbname" => "Base de données systeme de MySQL à créer", 
    181          "dbuser" => "Nom d'utilisateur mysql réservé pour le Bureau", 
    182          "dbpwd" => "Mot de passe de l'utilisateur mysql du Bureau", 
    183          "monitor_ip" => "Adresse IP (ou ip/prefixe) du(des) serveur(s) dont on veut autoriser le ping vers nous et le status apache (pour le monitoring de serveur.) 127.0.0.1 par défaut", 
    184          "myrandom" => "Debian : Mot de passe de l'utilisateur 'debian-maint' de mysql.", 
    185          "ALTERNC_LOC" => "General : chemin où AlternC est installé (pour les quotas)", 
    186          "version" => "General : Version d'AlternC" 
    187          ); 
    188 ^ ^ ^ ^ ^ ^ ^ 
    189 ^ ^ ^ ^ ^ ^ ^ 
    190160 
    191161###################################################################### 
     
    265235fi 
    266236 
    267 v v v v v v v 
    268 ************* 
    269 v v v v v v v 
    270237         # Postfix (serveur SMTP) 
    271238         "etc/postfix/main.cf" => "[Postfix] Fichier de configuration principal de postfix", 
     
    421388system("chown -R root.www-data /var/alternc/bureau"); 
    422389system("chmod -R 0640 /var/alternc/bureau"); 
    423 system("chmod -R ug+X /var/alternc/bureau"); 
    424390system("chown www-data.www-data /var/alternc/html/* /var/alternc/mail/* /var/alternc/html/ /var/alternc/mail/ "); 
    425391system("install -o root -g www-data -m0750 $TMP/usr/lib/alternc/sendmail /usr/lib/alternc/sendmail"); 
     
    503469 
    504470exit(0); 
    505 ************* 
    506 # vim: et sw=4 
    507 ^ ^ ^ ^ ^ ^ ^ 
    508  
    509 ^ ^ ^ ^ ^ ^ ^ 
  • install/mysql.sh

    r793 r799  
    7878echo "Installing AlternC schema " 
    7979$mysql $systemdb < /usr/share/alternc/install/mysql.sql 
     80 
    8081echo "Granting users " 
    8182$mysql -e "GRANT ALL ON *.* TO '$rootlogin'@'localhost' IDENTIFIED BY '$rootpass' WITH GRANT OPTION"  
  • install/mysql.sql

    r712 r799  
    11# 
    2 # $Id: mysql.sql,v 1.34 2005/03/22 17:20:37 anarcat Exp $ 
     2# $Id: mysql.sql,v 1.35 2006/01/12 06:26:17 anarcat Exp $ 
    33# ---------------------------------------------------------------------- 
    44# AlternC - Web Hosting System 
     
    6666  `path` varchar(255) NOT NULL default '',      # Chemin vers le mail de l'utilisateur 
    6767  `password` varchar(255) NOT NULL default '',  # Mot de passe crypté  
    68   `sasl` varchar(255) NOT NULL default '',      # Mot de passe en clair 
    6968  PRIMARY KEY  (`alias`), 
    7069  KEY `path` (`path`), 
  • install/upgrades/0.9.3.1.sql

    r660 r799  
     1-- we don't store cleartext passwords anymore, we use saslauthd 
     2ALTER TABLE `mail_users` DROP `sasl`; 
     3 
    14use mysql; 
    25 
  • src/quota_edit.sh

    r782 r799  
    11#!/bin/sh 
    22. /etc/alternc/local.sh 
    3 v v v v v v v 
    43/usr/sbin/setquota -r -g $1 $2 $2 0 0 $ALTERNC_LOC 
    5 ************* 
    6 v v v v v v v 
    7 /usr/sbin/setquota -g $1 $2 $2 0 0 $ALTERNC_LOC 
    8 ************* 
    9 /usr/sbin/setquota -r -g $1 $2 $2 0 0 $DATA_PART 
    10 ^ ^ ^ ^ ^ ^ ^ 
    11 ^ ^ ^ ^ ^ ^ ^ 
  • src/quota_get.sh

    r782 r799  
    22. /etc/alternc/local.sh 
    33 
    4 v v v v v v v 
    54DATA_PART=`df ${ALTERNC_LOC} 2>/dev/null | awk '/^\// { print $1 }'` 
    65 
     
    2625fi 
    2726 
    28 ************* 
    29 v v v v v v v 
    30 # quota doesn't doesn't give us the device, find it 
    31 DATA_PART=`df ${ALTERNC_LOC} 2>/dev/null | awk '/^\// { print $1 }'` 
    32  
    33 quota -g $1 | awk /${DATA_PART//\//\\\/}/\ {print\ '$2'} 
    34 quota -g $1 | awk /${DATA_PART//\//\\\/}/\ {print\ '$3'} 
    35 ************* 
    36 # quota will give over NFS will print the partition using the full NFS name 
    37 # (e.g. 10.0.0.1:/var/alternc) so we need to lookup first with mount 
    38 # to convert DATA_PART if needed. 
    39 QUOTA_PART=`mount | sed -n -e "s,\([^ ]*\) on ${DATA_PART} type nfs.*,\1,p"` 
    40 if [ -z "$QUOTA_PART" ]; then 
    41     QUOTA_PART="$DATA_PART" 
    42 fi 
    43  
    44 # quota will split its display on two lines if QUOTA_PART is bigger than 15 
    45 # characters. *sigh* 
    46 PART_LEN=`echo -n "$QUOTA_PART" | wc -c` 
    47 if [ "$PART_LEN" -gt 15 ]; then 
    48     quota -g "$1" | 
    49        sed -n -e "\\;${QUOTA_PART}w,+1s/ *\([0-9]*\).*/\1/p" 
    50     quota -g "$1" | 
    51        sed -n -e "\\;${QUOTA_PART}w,+1s/ *[0-9]* *\([0-9]*\).*/\1/p" 
    52 else 
    53     quota -g "$1" | awk /${QUOTA_PART//\//\\\/}/\ {print\ '$2'} 
    54     quota -g "$1" | awk /${QUOTA_PART//\//\\\/}/\ {print\ '$3'} 
    55 fi 
    56  
    57 ^ ^ ^ ^ ^ ^ ^ 
    58 ^ ^ ^ ^ ^ ^ ^ 
Note: See TracChangeset for help on using the changeset viewer.