И така ...
след инсталацията на дебиана, си оправяме хранилишата, по следния начин и добавяме едно допълнително:
- Код за потвърждение: Избери целия код
deb http://ftp.bg.debian.org/debian/ etch main non-free contrib
deb http://security.debian.org/ etch/updates main contrib non-free
deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free
След това инсталираме следните пакети, които ще ни трябват за инсталацията:
- Код за потвърждение: Избери целия код
apt-get install perl-suid gcc php5 apache2 perl libssl-dev make openssl bzip2 unzip
Създаваме си после папчица и теглим архива с файловете за qmail-a и ги разархивираме:
- Код за потвърждение: Избери целия код
mkdir /downloads
cd /downloads
wget http://www.qmailrocks.org/downloads/qmailrocks.tar.gz
tar zxvf qmailrocks.tar.gz
След това пускаме скрипчета и пачове, които се намират на следните места:
- Код за потвърждение: Избери целия код
/downloads/qmailrocks/scripts/install/qmr_install_linux-s1.script
/downloads/qmailrocks/scripts/util/qmail_big_patches.script
И инсталираме qmail-a ...:
- Код за потвърждение: Избери целия код
cd /usr/src/qmail/qmail-1.03
make man && make setup check
./config-fast your.domain.name
make cert (отговаряме на въпросите ... :))
chown -R vpopmail:qmail /var/qmail/control/clientcert.pem /var/qmail/control/servercert.pem
Така ...след това трябва да инсталираме ucspi-tcp и daemontools, в qmailrocks пише, че трябва да се инсталират пачове за тези пакети само за redhat, slackware и т.н., обаче се оказа, че трябват и за etch, така че инсталираме
- Код за потвърждение: Избери целия код
cd /usr/src/qmail/ucspi-tcp-0.88/
patch < /downloads/qmailrocks/patches/ucspi-tcp-0.88.errno.patch
make && make setup check
cd /package/admin/daemontools-0.76/src
patch < /downloads/qmailrocks/patches/daemontools-0.76.errno.patch
cd /package/admin/daemontools-0.76
package/install
Инсталираме EZmlm и Autoresponder
- Код за потвърждение: Избери целия код
cd /downloads/qmailrocks/
tar zxvf ezmlm-0.53-idx-0.41.tar.gz
cd ezmlm-0.53-idx-0.41
make && make setup
cd /downloads/qmailrocks
tar zxvf autorespond-2.0.5.tar.gz
cd autorespond-2.0.5
make && make install
Така ...след това трябва да си изберем дали да инсталираме vpopmail с mysql support или без ...аз лично съм инсталирал за момента без, с mysql е за сървъри, които ще работят с над 50 домейна ...така че преценете си сами
- Код за потвърждение: Избери целия код
cd /downloads/qmailrocks
tar zxvf vpopmail-5.4.13.tar.gz
cd vpopmail-5.4.13
./configure --help (за да изберем с каква опцийка да конфигурираме, аз се придържам към опцията, която е показана в сайта, а именно ./configure --enable-logging=p)
make && make install-strip
Следващата стъпка е инсталацията на Vqadmin, ще пейстна моят конфигурационен файл на apache-то, който е дефоултния, но променен Ако няма да работи машината ви и като web server, с множество виртуални хостове, можете за улеснение направо да copy/paste моя
- Код за потвърждение: Избери целия код
cd /downloads/qmailrocks
tar zxvf vqadmin-2.3.6.tar.gz
cd vqadmin-2.3.6
./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
make && make install-strip
NameVirtualHost *
<VirtualHost>
ServerName my.domain.name
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<Directory>
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
RedirectMatch ^/$ /apache2-default/
</Directory>
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
<Directory>
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
<Directory>
Options ExecCGI
AllowOverride AuthConfig
Order deny,allow
Deny from all
</Directory>
</VirtualHost>
После отиваме в директорията ни, където сме инсталирали vqadmin-a и променяме файлчето .htaccess, като в него задаваме пътя до .htpasswd, можем да го сложим навсякъде, но се ползва от apache-то и лично аз си го слагам в /etc/apache2 След това трябва да променим правата на .htaccess и да извършим още няколко действия ...:
- Код за потвърждение: Избери целия код
chown www-data:www-data /var/www/cgi-bin/vqadmin/.htaccess
chmod 644 /var/www/cgi-bin/vqadmin/.htaccess
htpasswd -bc /etc/apache2/.htpasswd admin password
chmod 644 /etc/apache2/.htpasswd
/etc/init.d/apache2 restart
Сега трябва да можем да си отворим http://www.yourdomain.com/cgi-bin/vqadmin/vqadmin.cgi
После инсталираме qmailadmin
- Код за потвърждение: Избери целия код
cd /downloads/qmailrocks
tar zxvf qmailadmin-1.2.9.tar.gz
cd qmailadmin-1.2.9
./configure --enable-cgibindir=/var/www/cgi-bin --enable-htmldir=/var/www/html
make && make install-strip
Отваря се на адрес http://www.yourdomain.com/cgi-bin/qmailadmin
И сега финализираме инсталацията на qmail-a ...:
- Код за потвърждение: Избери целия код
/downloads/qmailrocks/scripts/finalize/linux/finalize_linux.script
vim /var/qmail/supervise/qmail-pop3d/run
mail.example.com се заменя с вашия домейн
vim /var/qmail/supervise/qmail-smtpd/run
mail.example.com се заменя с вашия домейн
qmailctl stop
echo '127.:allow,RELAYCLIENT=""' >> /etc/tcp.smtp
qmailctl cdb
echo some_address > /var/qmail/alias/.qmail-root (имейла на администратора, където ще пристигат доста бози ;), като препоръчвам да се направи отделен имейл само за тази цел, защото понякога флууда е много як :))
echo some_address > /var/qmail/alias/.qmail-postmaster
echo some_address > /var/qmail/alias/.qmail-mailer-daemon
ln -s /var/qmail/alias/.qmail-root /var/qmail/alias/.qmail-anonymous
chmod 644 /var/qmail/alias/.qmail*
Сега ще поизтрием sendmail/exim
- Код за потвърждение: Избери целия код
/etc/init.d/exim stop
cd /etc/rc2.d
mv S20exim K20exim
rm -f /usr/lib/sendmail
rm -f /usr/sbin/sendmail
ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
Ако имаме postfix: dpkg --purge --force-depends postfix
Следващата стъпка е да проверим дали всичко е ок с инсталацийката и стартираме следния скрипт:
- Код за потвърждение: Избери целия код
/downloads/qmailrocks/scripts/util/qmr_inst_check
След това се правят няколко теста с телнет-ване, досега никога съм нямал проблеми с тях, по дефоулт са си наред Ако някой му се теств с тях (което не е лоша идея по принцип) може да види тук: http://qmailrocks.org/start_qmail.htm
Сега следва инсталацията за courier-imap ...която за дебиан има доста проблеми, понеже техните пакети нямат поддръжка на authvchkpw ....и проблемите са доста има два начина за инсталация, единия, който се препоръчва е по redhat way обяснен в qmailrocks с малко корекцийки Втория е дебианския начин с добавяне на няколко нещица, третия е манджа с грозде дебиан+редхат+допълнителни пакети Един приятел ми каза че го е инсталирал по дебианския начин, като е инсталирал допълнително courier-authlib-0.55, който се намира в инсталационния пакет на qmail, който изтеглихме по рано Но този начин не съм го пробвал все още, така че ще опиша само начина, който аз съм ползвал и знам че си бачка И така ...:
- Код за потвърждение: Избери целия код
apt-get install libgdbm3 libgdbm-dev
cd /downloads/qmailrocks/
tar jxvf courier-authlib-0.55.tar.bz2
cd courier-authlib-0.55
./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-authdaemon --without-authldap --disable-root-check --with-ssl --with-authchangepwdir=/usr/local/libexec/authlib --with-debian
make && make check
make install-strip && make install-configure
cp /downloads/qmailrocks/scripts/misc/authvchkpw /usr/lib/courier/courier-authlib/authvchkpw
cp /downloads/qmailrocks/courier-authlib-0.55/.libs/libauthvchkpw.so /usr/lib/courier-authlib/
vim /etc/courier/authdaemonrc
намираме и променяме следните неща по този начин:
authmodulelist="authvchkpw"
authmodulelistorig="authvchkpw"
vim /etc/courier/authmodulelist
махаме auhdaemond и сменяме authvchkpw
cd /downloads/qmailrocks/
tar jxvf courier-imap-4.0.2.tar.bz2
После инсталираме всичко като user-че :)
chown -R user:user courier-imap-4.0.2
su user
./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-authldap --without-authmysql --disable-root-check --with-ssl --with-authchangepwdir=/usr/local/libexec/authlib --with-debian
make && make check
Връщаме се като root пак и продължаваме :) :
make install-strip && make install-configure
правим ssl сертификат:
/usr/local/sbin/mkimapdcert
vim /usr/local/etc/imapd
оправяме IMAPDSTART да е IMAPDSTART=YES
и после може да оправим и MAXPERIP да е MAXPERIP=100 примерно :) това е колко кънекции да се правят към един акаунт ...понякога, като се добави един акаунт на няколко компютъра и като се ползва едновременно от много хора и изкарва съобщение, че е достигнат лимита на imap connections ...това е при thunderbird-a, за outlook незнам как седят нещата, но няма начин да няма проблем при него :P
vim /usr/local/etc/imapd-ssl
оправяме IMAPDSSLSTART да е IMAPDSSLSTART=YES и проверяваме дали TLS_CERTFILE сочи така: TLS_CERTFILE=/usr/local/share/imapd.pem
vim /usr/local/etc/authlib/authdaemonrc
тук оправяме authmodulelist= да е authmodulelist="authvchkpw"
После правим стартови скриптове:
ln -s /usr/local/sbin/authdaemond /etc/init.d/authdaemond
update-rc.d authdaemond defaults
/etc/init.d/authdaemond start
cp /usr/local/libexec/imapd.rc /etc/init.d/imapd
update-rc.d imapd defaults
/etc/init.d/imapd start
cp /usr/local/libexec/imapd-ssl.rc /etc/init.d/imapd-ssl
update-rc.d imapd-ssl defaults
/etc/init.d/imap-ssl start
тестваме дали IMAP-a бачка ...
telnet localhost 143
a login postmaster@my.domain.name password
ако ни логне, всичко е ОК :)
после може да инсталираме Courierpassd, който позволява на юзърите да си сменят паролите от Squirrelmail-a
И така ...сега инсталиеаме катерица мейл инсталира се дебиански
- Код за потвърждение: Избери целия код
apt-get install squirrelmail
линкваме в /var/www – ln -s /usr/share/squirrelmail webmail
и линкваме в /etc/apache2/sites-available ln -s /etc/squirrelmail/apache.conf webmail като променяме леко въпросния apache.conf ...Ще пейстна пак моята конфигурация
Alias /mail /usr/share/squirrelmail
<Directory>
Options Indexes FollowSymLinks
<IfModule>
php_flag register_globals off
</IfModule>
<IfModule>
php_flag register_globals off
</IfModule>
<IfModule>
DirectoryIndex index.php
</IfModule>
# access to configtest is limited by default to prevent information leak
<Files>
order deny,allow
deny from all
allow from 127.0.0.1
</Files>
</Directory>
# users will prefer a simple URL like http://webmail.example.com
<VirtualHost>
DocumentRoot /usr/share/squirrelmail
ServerName mail.domain.name
</VirtualHost>
За квотите за атачмънтите в /etc/php5/apache2/php.ini ...търсим upload_max_filesize = и post_max_size = и ги променяме на желания размер (например 15MB)
Такааа ...остана антивирусната и спам асасина ...
инсталираме clamav дебиански
- Код за потвърждение: Избери целия код
apt-get install clamav clamav-daemon
Пооправяме малко конфигурационни файлове, в /etc/clamav:
- Код за потвърждение: Избери целия код
vim freshclam.conf
и променяме database owner-a да е qscand
после добавяме user и group
useradd -s /sbin/nologin -d /bin/false qscand
groupadd qscand
chown qscand:qscand /var/run/clamav/
chown qscand:qscand /var/log/clamav/
chown qscand:adm /var/log/clamav/clamav.log
правим dpkg-reconfigure clamav-base, като не слагаме група, като стигнем до този момент :)
chown qscand:adm /var/log/clamav/freshclam.log
добавя се DatabaseMirror db.bg.clamav.net в /etc/clamav/freshclam.conf
Мисля, че като цяло е това ....може да сканирате ръчно директорийки с clamav със следната команда:
- Код за потвърждение: Избери целия код
clamscan -r /директорията
За вдигане на лимита за атачмънт в мейл клиент:
- Код за потвърждение: Избери целия код
cd /var/qmail/control
touch databytes
vim databytes
и написваме 150000000 за 15 мегабайта например
qmail-scanner w/qms-analog е следващата последна стъпка
Има понякога грижи и един скрипт, който се пуска накрая за да се провери инсталацията, не минава всички стъпки ...случвало ми се е, оправял съм го засега простичко - инсталирах всичко от тази стъпка наново Дано някой от вас не срещне по голям проблем ....Та така:
- Код за потвърждение: Избери целия код
cd /downloads/qmailrocks
tar zxvf qmail-scanner-1.25.tgz
tar zxvf qms-analog-0.4.4.tar.gz
cd qms-analog-0.4.4
make all
cp qmail-scanner-1.25-st-qms-YYYYMMDD.patch /downloads/qmailrocks/qmail-scanner-1.25/
да не забравите да смените YYYYMMDD с актуалната дата :)
cd /downloads/qmailrocks/qmail-scanner-1.25
patch -p1 < qmail-scanner-1.25-st-qms-YYYYMMDD.patch
cd /downloads/qmailrocks/qmail-scanner-1.25
vim qms-config
тук търсите къде пише - yourdomain.com и го променяте на вашия ...и MYDOMAIN също се променя
запазваме и излизаме и:
chmod 755 qms-config
./qms-config
./qms-config install
setuidgid qmaild /var/qmail/bin/qmail-scanner-queue.pl -g
vim /var/qmail/supervise/qmail-smtpd/run
тук е важно да се промени softlimit-a да е 40000000 ако вече не е :) и да се зададе пътя където е qmail-scanner-queue.pl, за целта добавяме най-отгоре:
QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl" ; export QMAILQUEUE
и отново, където пише your_domain.com променяме :)
qmailctl stop
qmailctl start
cd /downloads/qmailrocks/qmail-scanner-1.25/contrib
chmod 755 test_installation.sh
./test_installation.sh -doit
Ако всичко е добре, последното скриптче, което пуснахме, стъпките, които то прави трябва да минат безпроблемно и да изпрати мейл до postmaster-a Общо взето е това ....
А ако не ни харесва всичко това, което забъркахме, qmail-a се трие по този начин
- Код за потвърждение: Избери целия код
groupdel qmail
groupdel vchkpw
userdel alias
userdel qmaild
userdel qmaill
userdel qmailp
userdel qmailq
userdel qmailr
userdel qmails
userdel vpopmail
rm -rf /var/qmail
rm -rf /usr/src/qmail
rm -rf /var/log/qmail
rm -rf /service
rm -rf /package
rm -rf /command
rm -rf /home/vpopmail
Или просто преинсталираме дебиана ;]
това е.... надявам се да съм помогнал поне малко на някой
p.p. Искам само да допълня, че ако не сте създали директорията downloads в /, демек да е само /downloads а не /home/downloads, преди да пуснете който и да е скрипт, ще трябва да го пооправите малко, защото търси всичко в /downloads [/code]