Qmail+Vpopmail ve Mailman Kurulumu

2015 yılından beri Sponsorumuz PlusClouds tarafından bize sağlanan Vps kullanıyoruz.

Vps servis sağlayıcılar genelde popüler linux dağıtımlarının templatelerini sunuyorlar.
Bende kendime daha yakın bulduğum ubuntu'nun 14.04 LTS sürümü ile başladık.
2019 Şubat ayında Dist-upgrade yaparak 16.04 sürümüne yüksettik.

2015 yılından beri postfix kullanmaktaydık. Herhangi bir aksilik yaşamadık.
Bir değişiklik yapıp Sunucuda Qmail kullanmak istedim.
Şubat 2019 tarihinden beridir sunucuda Qmail kullanmaya başladım.



Ubuntu paket sisteminde hazır qmail paketleri bulunmakta.
apt ile kolayca kurulabiliyor. Lakin ben bir türlü hazır paketi işler hale getiremedim.
Sadece sunucu üzerinde değil yerelde kullandığım sanal makinalardada qmail paketi çalışmadı.

Şu anda sunucuda qmail+spamdyke+vpopmail+dovecot problemsiz çalışıyor.
qmail kurulumunu daha sonra yazmak istiyorum.

Kardeş sitemiz getgnu.org sayesinde fikir birliğive varıp e-posta listeleri açmak istedik.
zira bizim yönettiğimiz forum.debian.org.tr kullanıcıları için sohbet ve yardımlaşma ortamı oluşturmanın güzel bir yolu oldu.

Bu arada hızımızı alamayıp bds-tr içinde bir e-posta listesi oluşturduk.

Qmail kullandığımız için ezmlm bütünleşik olarak bulunmaktaydı.

Ezmlm Listecisi için kullanıcıların kafasını karıştıran bir üye olma ve prosedürü bulunduğu için Mailman kullanmak fikri doğdu.

Mailman ile herşey web tarayıcı üzerinden idare edilebiliyor olmasından dolayı tercihim mailman yönünde oldu.

Buraya kadar herşey çok güzel.

Ubuntu ile mailman kurmak çok kolay apt ile hemen kuruluyor.
Velhasıl mailman geliştiricileri postfix kullanıyor biz ise Qmail.
Bu nedenle Qmail ile kullanımı pek mümkün olmadı.
Çaresiz kaynak paketten mailman kuracağız :)

Ne yaparım nasıl yaparım diye araştırırken bu adrese rastladım.

http://nick.vargish.org/clues/qmail-vpopmail-mailman.html

Hadi başlayalım.

Mailman için kullanıcımızı açalım
~# groupadd mailman
~# useradd -c"GNU Mailman" -s /no/shell -d /home/mailman/lists -g mailman mailman

~# mkdir /home/mailman/lists
~# chgrp /home/mailman/lists
~# chmod a+rx,g+ws /home/mailman/lists

Mailman Arşivi indirelim. [en son sürümü]
~# wget http://ftp.gnu.org/gnu/mailman/mailman-2.1.29.tgz

arşivi açalım.
tar -xvf mailman-2.1.29.tgz
cd mailman-2.1.29

 
~# ./configure --prefix=/home/mailman/lists 
--with-mail-gid=vchkpw
--with-cgi-gid=www-data
--with-python=/usr/bin/python

 
~# make
~# make install

bu işlemler biraz zamanınızı alacaktır.
Çay Kahve Molası verebiliriz.

Kurulum problemsiz tamamlandıysa devam edelim.

Mailman için Cron görevlerini eklemeliyiz.
cd /mailman/lists/cron/
~# crontab -u mailman crontab.in

Mailman için Yetkili parolayı belirleyelim.
E-posta listesi Yönetim için gereklidir.
~# ./bin/mmsitepass

Liste için domain ekleyelim.
~# /home/vpopmail/bin/vadddomain lists.getgnu.org mailmanpass

Vpopmail ve mailman arasında köprü olacak python betiğini source arşivinden kopyalayalım.
cp ~/mailman-2.1.29/contrib/qmail-to-mailman.py /home/mailman/lists/

qmail-to-mailman.py betiğinin bir satırını düzenlemek gerekiyor.
~# nano /home/mailman/lists/qmail-to-mailman.py

ilk satırıdaki bu satırı
#! @PYTHON@

bu şekle çevirelim.
#! /usr/bin/python

Kaydedip çıkın.
~# chmod 755 /home/mailman/lists/qmail-to-mailman.py

~# chown mailman:mailman /home/mailman/lists/qmail-to-mailman.py

Mailman yapılandırması.
En alt satıra ekleyiniz. Url kısmını kendi domaninize düzeltmeyi unutmayınız.
~# nano /home/mailman/lists/Mailman/mm_cfg.py

 
#------
DEFAULT_EMAIL_HOST = 'lists.getgnu.org'
DEFAULT_URL_HOST = 'lists.getgnu.org'

VIRTUAL_HOSTS.clear()
add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)
add_virtualhost('liste.truvalinux.org.tr', 'liste.truvalinux.org.tr')
#------
DEFAULT_URL_PATTERN = 'http://%s/'
PUBLIC_ARCHIVE_URL = 'http://%(hostname)s/pipermail/%(listname)s'
#----bitiş----

Kaydedip çıkın.

Vpomail ile mailman köprüsünü oluşturalım.
~# cd ~vpopmail/domains/lists.getgnu.org/
~# nano .qmail-default
|/var/qmail/bin/preline /usr/bin/python /home/mailman/lists/qmail-to-mailman.py

Kaydedip çıkın.

qmail için .qmail-* dosyaların oluşturmak için betik.
~# nano user-qmail.sh

#!/bin/sh
cd /home/mailman/lists/
sleep 1
if [ $# = 1 ]; then
i=$1
echo Making links to $i in the current directory...
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman post $i" > .qmail-$i
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman admin $i" > .qmail-$i-admin
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman bounces $i" > .qmail-$i-bounces
# The following line is for VERP
# echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman bounces $i" > .qmail-$i-bounces-default
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman confirm $i" > .qmail-$i-confirm
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman join $i" > .qmail-$i-join
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman leave $i" > .qmail-$i-leave
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman owner $i" > .qmail-$i-owner
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman request $i" > .qmail-$i-request
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman subscribe $i" > .qmail-$i-subscribe
echo "|/var/qmail/bin/preline /home/mailman/lists/mail/mailman unsubscribe $i" > .qmail-$i-unsubscribe
fi

chown mailman:mailman .qmail*
#--- bitiş

Nginx yapılandırması için bu sayfayı kullanmıştım.

https://wiki.list.org/DOC/Mailman%20and%20nginx

SONUÇ :)

http://lists.getgnu.org/mailman/listinfo
caylakpenguen
caylakpenguen

Truva Linux takımıyla 2006'da tanışan "Çaylak Penguen" -BASH- betiklerine bayılır. Truva'nıñ çekirdek derleme işleri ile çalışan cd tasarımıyla uğraşmaktadır.

Hiç yorum yok:

Yorum Gönderme