Difference between revisions of "Instalasi Mailman"

From OnnoWiki
Jump to navigation Jump to search
(New page: Tulisan ini merupakan kumpulan pengalaman selama beberapa hari menginstalasi dan mengoperasikan mailing list server groups.or.id. Mesin server-nya merupakan hasil saweran beberapa akti...)
 
 
Line 1: Line 1:
 
Tulisan ini merupakan kumpulan pengalaman selama beberapa hari menginstalasi dan mengoperasikan mailing list server groups.or.id.  
 
Tulisan ini merupakan kumpulan pengalaman selama beberapa hari menginstalasi dan mengoperasikan mailing list server groups.or.id.  
 
 
  
 
Mesin server-nya merupakan hasil saweran beberapa aktifis IT Indonesia mengumpulkan uang rata-rata Rp. 100-200.000 / orang. Koordinasi saweran dilakukan oleh Donny BU.
 
Mesin server-nya merupakan hasil saweran beberapa aktifis IT Indonesia mengumpulkan uang rata-rata Rp. 100-200.000 / orang. Koordinasi saweran dilakukan oleh Donny BU.
 
 
  
 
Server Groups.or.berlokasi di Colocation dan bandwidth sumbangan dari CBN. Memang bukan server yang besar sekali karena dia hanyalah kelas Pentium III, dengan /var sekitar 7Gbyte saja dan RAM 256 Mbyte.
 
Server Groups.or.berlokasi di Colocation dan bandwidth sumbangan dari CBN. Memang bukan server yang besar sekali karena dia hanyalah kelas Pentium III, dengan /var sekitar 7Gbyte saja dan RAM 256 Mbyte.
 
 
  
 
Mailing list server tersebut telah dapat di akses melalui Web di http://groups.or.id/mailman/listinfo.
 
Mailing list server tersebut telah dapat di akses melalui Web di http://groups.or.id/mailman/listinfo.
 
 
  
 
Mudah-mudahan dapat menampung beberapa mailing list yang besar-besar supaya mengurangi traffic internasional yahoogroups.com yang membuang devisa kita.
 
Mudah-mudahan dapat menampung beberapa mailing list yang besar-besar supaya mengurangi traffic internasional yahoogroups.com yang membuang devisa kita.
  
 
+
==Persiapkan Komputer==
 
 
Persiapkan Komputer
 
 
 
 
 
  
 
Spesifikasi komputer tentunya sangat tergantung pada beban pekerjaan yang harus di handle. Harddisk dan directory /var harus besar karena tempat penyimpanan arsip mailing list dilakukan pada /var.
 
Spesifikasi komputer tentunya sangat tergantung pada beban pekerjaan yang harus di handle. Harddisk dan directory /var harus besar karena tempat penyimpanan arsip mailing list dilakukan pada /var.
 
 
  
 
Pada kesempatan ini, kami menggunakan spesifikasi server
 
Pada kesempatan ini, kami menggunakan spesifikasi server
 
 
  
 
  Pentium III
 
  Pentium III
 
 
  RAM 256Mbyte
 
  RAM 256Mbyte
 
 
  Harddisk sekitar 14 Gbyte
 
  Harddisk sekitar 14 Gbyte
 
 
  
 
Beberapa hal administratif lain yang perlu dilakukan jika kita menginginkan server tersebut dapat berfungsi secara baik di Internet adalah:
 
Beberapa hal administratif lain yang perlu dilakukan jika kita menginginkan server tersebut dapat berfungsi secara baik di Internet adalah:
 
 
  
 
* Mencari tempat meletakan server tersebut di Internet, sebaiknya di ISP lokal di kota anda. Atau di Indonesia Internet Exchange. Pada kesempatan ini kami meletakannya di CBN karena teman-teman di CBN bersedia menyumbangkan tempat colocation dan bandwidth Internasional-nya untuk traffic mailing list tersebut.
 
* Mencari tempat meletakan server tersebut di Internet, sebaiknya di ISP lokal di kota anda. Atau di Indonesia Internet Exchange. Pada kesempatan ini kami meletakannya di CBN karena teman-teman di CBN bersedia menyumbangkan tempat colocation dan bandwidth Internasional-nya untuk traffic mailing list tersebut.
Line 50: Line 28:
  
  
 +
==Instalasi System Operasi==
  
 
+
Di bulan puasa, Bona Simandjuntak dan [[Onno W. Purbo]] membutuhkan waktu sekitar dua (2) jam untuk menginstalasi server mailing list dari nol. Sambil nyambi memaksa Donny BU untuk belajar menginstalasi Linux.
 
 
 
 
==Instalasi System Operasi
 
==
 
 
 
 
 
Di bulan puasa, Bona Simandjuntak dan saya membutuhkan waktu sekitar dua (2) jam untuk menginstalasi server mailing list dari nol. Sambil nyambi memaksa Donny BU untuk belajar menginstalasi Linux.
 
 
 
 
 
  
 
Linux merupakan pilihan terbaik untuk server mailing list. Beberapa fasilitas yang wajib di install agar mailing list server dapat beroperasi dengan baik adalah:
 
Linux merupakan pilihan terbaik untuk server mailing list. Beberapa fasilitas yang wajib di install agar mailing list server dapat beroperasi dengan baik adalah:
 
 
  
 
* Postfix, mail server.
 
* Postfix, mail server.
 
 
* Mailman, mailing list server.
 
* Mailman, mailing list server.
 
 
* Apache, web server, karena mailman menggunakan web untuk interaksi.
 
* Apache, web server, karena mailman menggunakan web untuk interaksi.
 
 
* Python, bahasa pemrogramman yang digunakan Mailman.
 
* Python, bahasa pemrogramman yang digunakan Mailman.
 
 
* Ssh, agar kita dapat login dari remote.
 
* Ssh, agar kita dapat login dari remote.
 
 
* BIND. untuk mengoperasikan Domain Name System agar dapat memperkenalkan nama domain dari server yang kita operasikan.
 
* BIND. untuk mengoperasikan Domain Name System agar dapat memperkenalkan nama domain dari server yang kita operasikan.
 
 
* Webmin, bagi mereka yang lebih suka mengadministrasi server dari jauh.
 
* Webmin, bagi mereka yang lebih suka mengadministrasi server dari jauh.
 
 
* Sebaiknya di instalasi juga semua fasilitas yang dibutuhkan untuk development karena kita akan banyak mengcompile software untuk mengupdate berbagai fasilitas yang ada.
 
* Sebaiknya di instalasi juga semua fasilitas yang dibutuhkan untuk development karena kita akan banyak mengcompile software untuk mengupdate berbagai fasilitas yang ada.
 
 
  
 
Bagi mereka yang agak paranoid tentunya dapat menginstalasi software firewall, seperti iptables dan shorewall, maupun Intrusion Detection System (IDS), seperti, snort dan prelude untuk menambah pertahanan server.
 
Bagi mereka yang agak paranoid tentunya dapat menginstalasi software firewall, seperti iptables dan shorewall, maupun Intrusion Detection System (IDS), seperti, snort dan prelude untuk menambah pertahanan server.
 
 
  
 
Pada Mandrake 9.0 maupun 9.1 semua software yang dibutuhkan terdapat dalam bentuk RPM. Instalasi software jadi amat sangat mudah sekali.
 
Pada Mandrake 9.0 maupun 9.1 semua software yang dibutuhkan terdapat dalam bentuk RPM. Instalasi software jadi amat sangat mudah sekali.
 
 
  
 
Kita perlu mengupgrade mailman yang digunakan karena mailman RPM bawaan Mandrake 9.1 adalah versi 2.0.13. Mailman yang terbaru saat tulisan ini dibuat adalah 2.1.3.
 
Kita perlu mengupgrade mailman yang digunakan karena mailman RPM bawaan Mandrake 9.1 adalah versi 2.0.13. Mailman yang terbaru saat tulisan ini dibuat adalah 2.1.3.
 
 
  
 
Sebaiknya kita tetap menginstalasi Mailman RPM bawaan Mandrake karena akan menjadi dasar untuk setup folder dan lain sebagainya bagi instalasi Mailman selanjutnya.
 
Sebaiknya kita tetap menginstalasi Mailman RPM bawaan Mandrake karena akan menjadi dasar untuk setup folder dan lain sebagainya bagi instalasi Mailman selanjutnya.
  
  
 
+
==Test Awal Operasi Server==
 
 
 
 
==Test Awal Operasi Server
 
==
 
 
 
  
 
Selesai di instalasi server mailing list dapat langsung di test operasional-nya. Beberapa hal yang perlu di tuning sebelum test dilakukan adalah:
 
Selesai di instalasi server mailing list dapat langsung di test operasional-nya. Beberapa hal yang perlu di tuning sebelum test dilakukan adalah:
 
 
  
 
Edit /etc/postfix/main.cf dan isikan parameter,
 
Edit /etc/postfix/main.cf dan isikan parameter,
 
 
  
 
* myhostname = nama hostname anda.
 
* myhostname = nama hostname anda.
 
 
* inet_interfaces = all
 
* inet_interfaces = all
 
 
* owner_request_special = no
 
* owner_request_special = no
 
 
* recipient_delimiter = +
 
* recipient_delimiter = +
 
 
* unknown_local_recipient_reject_code = 500
 
* unknown_local_recipient_reject_code = 500
 
 
* alias_maps=hash:/etc/postfix/aliases,hash:/var/lib/mailman/data/aliases
 
* alias_maps=hash:/etc/postfix/aliases,hash:/var/lib/mailman/data/aliases
 
 
  
 
Edit /etc/httpd/conf/httpd.conf (Mandrake 9.0) atau /etc/httpd/conf/httpd2.conf (Mandrake 9.1), tambahkan pada line paling bawah agar
 
Edit /etc/httpd/conf/httpd.conf (Mandrake 9.0) atau /etc/httpd/conf/httpd2.conf (Mandrake 9.1), tambahkan pada line paling bawah agar
 
 
  
 
* Include conf/mailman.conf
 
* Include conf/mailman.conf
 
 
  
 
Bagi mereka yang juga mengoperasikan DNS server untuk domain dari mailinglist server tersebut, sebaiknya di edit file
 
Bagi mereka yang juga mengoperasikan DNS server untuk domain dari mailinglist server tersebut, sebaiknya di edit file
 
 
  
 
  /var/named/nama-domain.hosts
 
  /var/named/nama-domain.hosts
 
 
  
 
isikan dengan benar informasi domain yang diregistrasikan ke IDNIC.
 
isikan dengan benar informasi domain yang diregistrasikan ke IDNIC.
 
 
  
 
Restart semua server yang kita tuning, melalui perintah
 
Restart semua server yang kita tuning, melalui perintah
 
 
  
 
  # service postfix restart
 
  # service postfix restart
 
 
  # service httpd restart
 
  # service httpd restart
 
 
  # service named restart
 
  # service named restart
 
  
  
 
Check routing menggunakan ping.
 
Check routing menggunakan ping.
 
 
  
 
Browse secara ke http://localhost/mailman/admin. Anda harusnya akan melihat tampilan interface administrator mailing list Mailman melalui Web browser.
 
Browse secara ke http://localhost/mailman/admin. Anda harusnya akan melihat tampilan interface administrator mailing list Mailman melalui Web browser.
  
  
 
+
==Upgrade Mailman 2.1.3==
 
 
 
 
==Upgrade Mailman 2.1.3
 
==
 
 
 
  
 
Ambil mailman versi terakhir dari http://www.list.org/download.html atau http://sourceforge.net/projects/mailman/.
 
Ambil mailman versi terakhir dari http://www.list.org/download.html atau http://sourceforge.net/projects/mailman/.
 
  
  
 
Setelah berhasil di download
 
Setelah berhasil di download
 
 
  
 
  # cp mailman-2.1.3.tgz /usr/local/src
 
  # cp mailman-2.1.3.tgz /usr/local/src
 
 
  # cd /usr/local/src
 
  # cd /usr/local/src
 
 
  # tar zxvf mailman-2.1.3.tgz
 
  # tar zxvf mailman-2.1.3.tgz
 
  
  
 
Lakukan
 
Lakukan
 
 
  
 
  # cd /usr/local/src/mailman-2.1.3
 
  # cd /usr/local/src/mailman-2.1.3
 
 
  
 
Baca semua file README.*, terutama README.POSTFIX dan INSTALL anda akan memperoleh gambaran cara terbaik untuk menginstalasi mailing list server menggunakan Mailman dan Postfix.
 
Baca semua file README.*, terutama README.POSTFIX dan INSTALL anda akan memperoleh gambaran cara terbaik untuk menginstalasi mailing list server menggunakan Mailman dan Postfix.
 
 
  
 
Siapkan system untuk Mailman
 
Siapkan system untuk Mailman
 
  
  
Line 209: Line 111:
  
 
  # adduser mailman -G nogroup
 
  # adduser mailman -G nogroup
 
 
  # groupadd mailman
 
  # groupadd mailman
 
 
  
 
Biasanya group mailman akan di buat secara automatis oleh adduser mailman. adduser di tambahkan switch -G nogroup agar user mailman dapat berinteraksi dengan baik ke postfix yang berjalan di bawah group nogroup.
 
Biasanya group mailman akan di buat secara automatis oleh adduser mailman. adduser di tambahkan switch -G nogroup agar user mailman dapat berinteraksi dengan baik ke postfix yang berjalan di bawah group nogroup.
 
  
  
Line 221: Line 119:
  
 
  # rm -rf /var/lib/mailman
 
  # rm -rf /var/lib/mailman
 
 
  # mkdir /var/lib/mailman
 
  # mkdir /var/lib/mailman
 
 
  # chown -R mailman.mailman /var/lib/mailman
 
  # chown -R mailman.mailman /var/lib/mailman
 
 
  # chmod -R 02775 /var/lib/mailman
 
  # chmod -R 02775 /var/lib/mailman
 
 
  
 
# rm /var/lib/mailman dan  # mkdir /var/lib/mailman jangan dilakukan jika anda ingin menyelamatan mailing list yang pernah dibuat sebelumnya.
 
# rm /var/lib/mailman dan  # mkdir /var/lib/mailman jangan dilakukan jika anda ingin menyelamatan mailing list yang pernah dibuat sebelumnya.
  
  
 
+
==Instalasi Mailman-2.1.3==
 
 
 
 
==Instalasi Mailman-2.1.3
 
==
 
 
 
  
 
Lakukan
 
Lakukan
  
 
  # cd /usr/local/src/mailman-2.1.3
 
  # cd /usr/local/src/mailman-2.1.3
 
 
  # ./configure -prefix=/var/lib/mailman --with-mail-gid=nogroup -with-cgi-gid=apache
 
  # ./configure -prefix=/var/lib/mailman --with-mail-gid=nogroup -with-cgi-gid=apache
 
 
  # make install
 
  # make install
 
  
  
 
Biasanya anda akan dapat masalah pada saat ./configure jika library python untuk development belum di instalasi, atau linux tidak di siapkan untuk melakukan compile software dan sebangsa itu.
 
Biasanya anda akan dapat masalah pada saat ./configure jika library python untuk development belum di instalasi, atau linux tidak di siapkan untuk melakukan compile software dan sebangsa itu.
 
 
  
 
Kadang-kadang -with-mail-gid akan memberikan masalah kalau Postfix di jalankan dengan group ID lain. Yang biasanya digunakan -with-mail-gid=nogroup atau -with-mail-gid=mailman.
 
Kadang-kadang -with-mail-gid akan memberikan masalah kalau Postfix di jalankan dengan group ID lain. Yang biasanya digunakan -with-mail-gid=nogroup atau -with-mail-gid=mailman.
  
  
 
+
==Cek Instalasi Mailman-2.1.3==
 
 
 
 
==Cek Instalasi Mailman-2.1.3
 
==
 
  
  
Line 267: Line 146:
  
 
  # cd /var/lib/mailman
 
  # cd /var/lib/mailman
 
 
  # bin/check_perms
 
  # bin/check_perms
 
  
  
Line 275: Line 152:
  
 
  # chmod -R 02775 messages
 
  # chmod -R 02775 messages
 
 
  # chmod -R 02775 templates
 
  # chmod -R 02775 templates
 
  
  
 
Yang juga sering ke salahan adalah group awal mailman 2.0.13 yang menggunakan group mail, sedang mailman 2.1.3 menggunakan mailman.
 
Yang juga sering ke salahan adalah group awal mailman 2.0.13 yang menggunakan group mail, sedang mailman 2.1.3 menggunakan mailman.
 
 
  
 
Agar perbaikan dapat dilakukan secara automatis, dapat pula dilakukan melalui
 
Agar perbaikan dapat dilakukan secara automatis, dapat pula dilakukan melalui
Line 289: Line 162:
  
  
 
+
==Setting Final Untuk Mailman==
 
 
 
 
==Setting Final Untuk Mailman
 
==
 
  
  
Line 299: Line 168:
  
 
  # bin/newlist mailman
 
  # bin/newlist mailman
 
  
  
Line 309: Line 177:
  
 
default konfigurasi sitelist.cfg tidak dapat menerima mail dari non-member, dan reply kepada si pengirim berita (poster) bukan ke mailing list. Hal ini dapat diubah dikemudian hari melalui interface web.
 
default konfigurasi sitelist.cfg tidak dapat menerima mail dari non-member, dan reply kepada si pengirim berita (poster) bukan ke mailing list. Hal ini dapat diubah dikemudian hari melalui interface web.
 
  
  
Line 315: Line 182:
  
 
  # cd /var/lib/mailman/cron
 
  # cd /var/lib/mailman/cron
 
 
  # crontab -u mailman crontab.in
 
  # crontab -u mailman crontab.in
 
  
  
Line 323: Line 188:
  
 
  # cd /var/lib/mailman
 
  # cd /var/lib/mailman
 
 
  # bin/mailmanctl start
 
  # bin/mailmanctl start
 
  
  
Line 331: Line 194:
  
 
  # cp scripts/mailman /etc/init.d/mailman
 
  # cp scripts/mailman /etc/init.d/mailman
 
 
  # chkconfig -add mailman
 
  # chkconfig -add mailman
 
  
  
Line 342: Line 203:
  
  
 
+
==Beberapa customisasi yang dapat dilakukan==
 
 
Beberapa customisasi yang dapat dilakukan
 
 
 
 
 
  
 
Tidak banyak yang perlu kita customisasi dari Default setting mailman. Saya biasanya hanya mengganti parameter
 
Tidak banyak yang perlu kita customisasi dari Default setting mailman. Saya biasanya hanya mengganti parameter
 
 
  
 
  MTA = 'Manual'
 
  MTA = 'Manual'
 
 
  
 
Menjadi
 
Menjadi
 
  
  
 
  MTA = 'Postfix'
 
  MTA = 'Postfix'
 
 
  
 
Di file /var/lib/mailman/Mailman/Default.py
 
Di file /var/lib/mailman/Mailman/Default.py
 
 
  
 
Yang juga perlu di customisasi adalah password untuk administrator mailman yang dibutuhkan pada saat membuatkan mailing list bagi yang meminta dibuatkan mailing list. Hal ini dilakukan melalui
 
Yang juga perlu di customisasi adalah password untuk administrator mailman yang dibutuhkan pada saat membuatkan mailing list bagi yang meminta dibuatkan mailing list. Hal ini dilakukan melalui
  
 
  # cd /var/lib/mailman
 
  # cd /var/lib/mailman
 
 
  # bin/mmsitepass
 
  # bin/mmsitepass
 
  
  
Line 379: Line 225:
  
  
 
+
==Beberapa Catatan Untuk Membuat & Membuang Mailing List==
Beberapa Catatan Untuk Membuat & Membuang Mailing List
 
 
 
 
 
  
 
Untuk Membuat Mailing list (sebagai contoh di groups.or.id).
 
Untuk Membuat Mailing list (sebagai contoh di groups.or.id).
  
 
  1. http://groups.or.id/mailman/create
 
  1. http://groups.or.id/mailman/create
 
 
  2. Name of list --> nama mailing list
 
  2. Name of list --> nama mailing list
 
 
  3. Initial list owner address --> e-mail list owner
 
  3. Initial list owner address --> e-mail list owner
 
 
  4. Auto-generate initial list password? --> Yes
 
  4. Auto-generate initial list password? --> Yes
 
 
  5. List creator's (Authentication) password --> password yang di set bin/mmsitepass
 
  5. List creator's (Authentication) password --> password yang di set bin/mmsitepass
 
 
  
 
ssh ke root shell
 
ssh ke root shell
  
 
  # service postfix restart
 
  # service postfix restart
 
 
  
 
Maaf tak  ada jalan lain yang lebih sederhana, postfix harus di restart untuk mengaktifkan alias secara automatis. Alternatif lain adalah memodifikasi source code.
 
Maaf tak  ada jalan lain yang lebih sederhana, postfix harus di restart untuk mengaktifkan alias secara automatis. Alternatif lain adalah memodifikasi source code.
 
  
  
Line 411: Line 245:
  
 
  # cd /var/lib/mailman
 
  # cd /var/lib/mailman
 
 
  # bin/rmlist -a nama-mailing-list
 
  # bin/rmlist -a nama-mailing-list
  
  
 
+
==Panduan Amat Sangat Singkat Bagi Pengguna MailingList Biasa==
 
 
 
 
==Panduan Amat Sangat Singkat Bagi Pengguna MailingList Biasa
 
==
 
 
 
  
 
Untuk menggunakan mailing list server mailman tidak berbeda jauh dengan yahoogoups.com. Hanya saja pembuatan mailing list harus dilakukan oleh administrator di mailman@nama-mailing-list-server. Hal ini dilakukan karena tidak ada mekanisme authentikasi bagi si pembuat mailing list, tidak seperti yahoogroups.com yang dapat membuat mailing list adalah mereka yang mempunyai account mail di yahoo.com.
 
Untuk menggunakan mailing list server mailman tidak berbeda jauh dengan yahoogoups.com. Hanya saja pembuatan mailing list harus dilakukan oleh administrator di mailman@nama-mailing-list-server. Hal ini dilakukan karena tidak ada mekanisme authentikasi bagi si pembuat mailing list, tidak seperti yahoogroups.com yang dapat membuat mailing list adalah mereka yang mempunyai account mail di yahoo.com.
 
 
  
 
Sebagai contoh untuk membuat mailing list di groups.or.id anda cukup mengirimkan mail ke mailman@groups.or.id untuk meminta dibuatkan mailing list. Pada saat mailing list dibuat, anda akan dapat konfirmasi via e-mail beserta password untuk administrator mailing list tersebut yang di generate secara random.
 
Sebagai contoh untuk membuat mailing list di groups.or.id anda cukup mengirimkan mail ke mailman@groups.or.id untuk meminta dibuatkan mailing list. Pada saat mailing list dibuat, anda akan dapat konfirmasi via e-mail beserta password untuk administrator mailing list tersebut yang di generate secara random.
 
 
  
 
Seluruh daftar mailing list di groups.or.id dapat dilihat di http://groups.or.id/mailman/listinfo. Pengguna biasa dapat subscribe melalui e-mail namamailinglist-subscribe@groups.or.id atau melalui web http://groups.or.id/mailman/listinfo/namamailinglist.
 
Seluruh daftar mailing list di groups.or.id dapat dilihat di http://groups.or.id/mailman/listinfo. Pengguna biasa dapat subscribe melalui e-mail namamailinglist-subscribe@groups.or.id atau melalui web http://groups.or.id/mailman/listinfo/namamailinglist.
 
 
  
 
Untuk administrator mailing list yang ingin mengadmini mailing list dapat dilakukan melalui http://groups.or.id/mailman/admin/namamailinglist
 
Untuk administrator mailing list yang ingin mengadmini mailing list dapat dilakukan melalui http://groups.or.id/mailman/admin/namamailinglist
  
 
masukan password administrator mailing list yang di peroleh melalui e-mail saat dibuatkan mailing list tersebut.
 
masukan password administrator mailing list yang di peroleh melalui e-mail saat dibuatkan mailing list tersebut.
 
 
  
 
Beberapa hal yang sering dilakukan oleh administrator mailing list melalui Web http://groups.or.id/mailman/admin/namamailinglist adalah,
 
Beberapa hal yang sering dilakukan oleh administrator mailing list melalui Web http://groups.or.id/mailman/admin/namamailinglist adalah,
  
 
* Passwords (utk ubah password administrator)
 
* Passwords (utk ubah password administrator)
 
 
* Membership Management --> Mass Subscription
 
* Membership Management --> Mass Subscription
 
 
* Privacy Options --> Subscription Rules --> advertised --> Yes
 
* Privacy Options --> Subscription Rules --> advertised --> Yes
 
 
  
 
Di samping itu, ada beberapa parameter yang akan membantu operasional mailing list server seperti,
 
Di samping itu, ada beberapa parameter yang akan membantu operasional mailing list server seperti,
  
 
* General Options --> Owner (utk ubah -owner)
 
* General Options --> Owner (utk ubah -owner)
 
 
* General Options --> Description (pemberitahuan di listinfo)
 
* General Options --> Description (pemberitahuan di listinfo)
 
 
* General Options --> first_strip_reply_to --> yes
 
* General Options --> first_strip_reply_to --> yes
 
 
* General Options --> reply_goes_to_list --> this list
 
* General Options --> reply_goes_to_list --> this list

Latest revision as of 14:49, 4 February 2008

Tulisan ini merupakan kumpulan pengalaman selama beberapa hari menginstalasi dan mengoperasikan mailing list server groups.or.id.

Mesin server-nya merupakan hasil saweran beberapa aktifis IT Indonesia mengumpulkan uang rata-rata Rp. 100-200.000 / orang. Koordinasi saweran dilakukan oleh Donny BU.

Server Groups.or.berlokasi di Colocation dan bandwidth sumbangan dari CBN. Memang bukan server yang besar sekali karena dia hanyalah kelas Pentium III, dengan /var sekitar 7Gbyte saja dan RAM 256 Mbyte.

Mailing list server tersebut telah dapat di akses melalui Web di http://groups.or.id/mailman/listinfo.

Mudah-mudahan dapat menampung beberapa mailing list yang besar-besar supaya mengurangi traffic internasional yahoogroups.com yang membuang devisa kita.

Persiapkan Komputer

Spesifikasi komputer tentunya sangat tergantung pada beban pekerjaan yang harus di handle. Harddisk dan directory /var harus besar karena tempat penyimpanan arsip mailing list dilakukan pada /var.

Pada kesempatan ini, kami menggunakan spesifikasi server

Pentium III
RAM 256Mbyte
Harddisk sekitar 14 Gbyte

Beberapa hal administratif lain yang perlu dilakukan jika kita menginginkan server tersebut dapat berfungsi secara baik di Internet adalah:

  • Mencari tempat meletakan server tersebut di Internet, sebaiknya di ISP lokal di kota anda. Atau di Indonesia Internet Exchange. Pada kesempatan ini kami meletakannya di CBN karena teman-teman di CBN bersedia menyumbangkan tempat colocation dan bandwidth Internasional-nya untuk traffic mailing list tersebut.
  • Minta alokasi IP address dari tempat colocation server.
  • Registrasikan domain ke IDNIC melalui web http://www.idnic.net.id. Mungkin yang paling mudah adalah menggunakan domain *.web.id.


Instalasi System Operasi

Di bulan puasa, Bona Simandjuntak dan Onno W. Purbo membutuhkan waktu sekitar dua (2) jam untuk menginstalasi server mailing list dari nol. Sambil nyambi memaksa Donny BU untuk belajar menginstalasi Linux.

Linux merupakan pilihan terbaik untuk server mailing list. Beberapa fasilitas yang wajib di install agar mailing list server dapat beroperasi dengan baik adalah:

  • Postfix, mail server.
  • Mailman, mailing list server.
  • Apache, web server, karena mailman menggunakan web untuk interaksi.
  • Python, bahasa pemrogramman yang digunakan Mailman.
  • Ssh, agar kita dapat login dari remote.
  • BIND. untuk mengoperasikan Domain Name System agar dapat memperkenalkan nama domain dari server yang kita operasikan.
  • Webmin, bagi mereka yang lebih suka mengadministrasi server dari jauh.
  • Sebaiknya di instalasi juga semua fasilitas yang dibutuhkan untuk development karena kita akan banyak mengcompile software untuk mengupdate berbagai fasilitas yang ada.

Bagi mereka yang agak paranoid tentunya dapat menginstalasi software firewall, seperti iptables dan shorewall, maupun Intrusion Detection System (IDS), seperti, snort dan prelude untuk menambah pertahanan server.

Pada Mandrake 9.0 maupun 9.1 semua software yang dibutuhkan terdapat dalam bentuk RPM. Instalasi software jadi amat sangat mudah sekali.

Kita perlu mengupgrade mailman yang digunakan karena mailman RPM bawaan Mandrake 9.1 adalah versi 2.0.13. Mailman yang terbaru saat tulisan ini dibuat adalah 2.1.3.

Sebaiknya kita tetap menginstalasi Mailman RPM bawaan Mandrake karena akan menjadi dasar untuk setup folder dan lain sebagainya bagi instalasi Mailman selanjutnya.


Test Awal Operasi Server

Selesai di instalasi server mailing list dapat langsung di test operasional-nya. Beberapa hal yang perlu di tuning sebelum test dilakukan adalah:

Edit /etc/postfix/main.cf dan isikan parameter,

  • myhostname = nama hostname anda.
  • inet_interfaces = all
  • owner_request_special = no
  • recipient_delimiter = +
  • unknown_local_recipient_reject_code = 500
  • alias_maps=hash:/etc/postfix/aliases,hash:/var/lib/mailman/data/aliases

Edit /etc/httpd/conf/httpd.conf (Mandrake 9.0) atau /etc/httpd/conf/httpd2.conf (Mandrake 9.1), tambahkan pada line paling bawah agar

  • Include conf/mailman.conf

Bagi mereka yang juga mengoperasikan DNS server untuk domain dari mailinglist server tersebut, sebaiknya di edit file

/var/named/nama-domain.hosts

isikan dengan benar informasi domain yang diregistrasikan ke IDNIC.

Restart semua server yang kita tuning, melalui perintah

# service postfix restart
# service httpd restart
# service named restart


Check routing menggunakan ping.

Browse secara ke http://localhost/mailman/admin. Anda harusnya akan melihat tampilan interface administrator mailing list Mailman melalui Web browser.


Upgrade Mailman 2.1.3

Ambil mailman versi terakhir dari http://www.list.org/download.html atau http://sourceforge.net/projects/mailman/.


Setelah berhasil di download

# cp mailman-2.1.3.tgz /usr/local/src
# cd /usr/local/src
# tar zxvf mailman-2.1.3.tgz


Lakukan

# cd /usr/local/src/mailman-2.1.3

Baca semua file README.*, terutama README.POSTFIX dan INSTALL anda akan memperoleh gambaran cara terbaik untuk menginstalasi mailing list server menggunakan Mailman dan Postfix.

Siapkan system untuk Mailman


  • Tambahkan user mailman dan group mailman
# adduser mailman -G nogroup
# groupadd mailman

Biasanya group mailman akan di buat secara automatis oleh adduser mailman. adduser di tambahkan switch -G nogroup agar user mailman dapat berinteraksi dengan baik ke postfix yang berjalan di bawah group nogroup.


  • jika anda sudah pernah menginstalasi mailman 2.0.13 dari RPM Mandrake. Lakukan
# rm -rf /var/lib/mailman
# mkdir /var/lib/mailman
# chown -R mailman.mailman /var/lib/mailman
# chmod -R 02775 /var/lib/mailman
  1. rm /var/lib/mailman dan # mkdir /var/lib/mailman jangan dilakukan jika anda ingin menyelamatan mailing list yang pernah dibuat sebelumnya.


Instalasi Mailman-2.1.3

Lakukan

# cd /usr/local/src/mailman-2.1.3
# ./configure -prefix=/var/lib/mailman --with-mail-gid=nogroup -with-cgi-gid=apache
# make install


Biasanya anda akan dapat masalah pada saat ./configure jika library python untuk development belum di instalasi, atau linux tidak di siapkan untuk melakukan compile software dan sebangsa itu.

Kadang-kadang -with-mail-gid akan memberikan masalah kalau Postfix di jalankan dengan group ID lain. Yang biasanya digunakan -with-mail-gid=nogroup atau -with-mail-gid=mailman.


Cek Instalasi Mailman-2.1.3

Lakukan

# cd /var/lib/mailman
# bin/check_perms


Biasakan akan keluar error mod harus 02775 untuk folder messages dan templates. Dapat diperbaiki melalui,

# chmod -R 02775 messages
# chmod -R 02775 templates


Yang juga sering ke salahan adalah group awal mailman 2.0.13 yang menggunakan group mail, sedang mailman 2.1.3 menggunakan mailman.

Agar perbaikan dapat dilakukan secara automatis, dapat pula dilakukan melalui

# bin/check_perms -f


Setting Final Untuk Mailman

  • Buat mailing list mailman untuk menerima komentar atau permohonan pembuatan mailinglist.
# bin/newlist mailman


  • Konfigurasi mailing list mailman menggunakan sitelist.cfg standar.
# bin/config_list -i data/sitelist.cfg mailman


default konfigurasi sitelist.cfg tidak dapat menerima mail dari non-member, dan reply kepada si pengirim berita (poster) bukan ke mailing list. Hal ini dapat diubah dikemudian hari melalui interface web.


  • Setup tabel cron
# cd /var/lib/mailman/cron
# crontab -u mailman crontab.in


  • Jalankan Mailman qrunner daemon
# cd /var/lib/mailman
# bin/mailmanctl start


  • Agar mailman berjalan setiap kali system di boot
# cp scripts/mailman /etc/init.d/mailman
# chkconfig -add mailman


Beberapa system menggunakan /etc/rc.d/init.d bukan /etc/init.d. Setelah chkconfig dilakukan, anda dapat merestart mailman melalui

# service mailman restart


Beberapa customisasi yang dapat dilakukan

Tidak banyak yang perlu kita customisasi dari Default setting mailman. Saya biasanya hanya mengganti parameter

MTA = 'Manual'

Menjadi


MTA = 'Postfix'

Di file /var/lib/mailman/Mailman/Default.py

Yang juga perlu di customisasi adalah password untuk administrator mailman yang dibutuhkan pada saat membuatkan mailing list bagi yang meminta dibuatkan mailing list. Hal ini dilakukan melalui

# cd /var/lib/mailman
# bin/mmsitepass


Selesai sudah semua konfigurasi mailman. Kita harusnya sudah dapat memberikan service mailinglist bagi pengguna di Internet.


Beberapa Catatan Untuk Membuat & Membuang Mailing List

Untuk Membuat Mailing list (sebagai contoh di groups.or.id).

1. http://groups.or.id/mailman/create
2. Name of list --> nama mailing list
3. Initial list owner address --> e-mail list owner
4. Auto-generate initial list password? --> Yes
5. List creator's (Authentication) password --> password yang di set bin/mmsitepass

ssh ke root shell

# service postfix restart

Maaf tak ada jalan lain yang lebih sederhana, postfix harus di restart untuk mengaktifkan alias secara automatis. Alternatif lain adalah memodifikasi source code.


Untuk membuang / meremove sebuah mailing list

# cd /var/lib/mailman
# bin/rmlist -a nama-mailing-list


Panduan Amat Sangat Singkat Bagi Pengguna MailingList Biasa

Untuk menggunakan mailing list server mailman tidak berbeda jauh dengan yahoogoups.com. Hanya saja pembuatan mailing list harus dilakukan oleh administrator di mailman@nama-mailing-list-server. Hal ini dilakukan karena tidak ada mekanisme authentikasi bagi si pembuat mailing list, tidak seperti yahoogroups.com yang dapat membuat mailing list adalah mereka yang mempunyai account mail di yahoo.com.

Sebagai contoh untuk membuat mailing list di groups.or.id anda cukup mengirimkan mail ke mailman@groups.or.id untuk meminta dibuatkan mailing list. Pada saat mailing list dibuat, anda akan dapat konfirmasi via e-mail beserta password untuk administrator mailing list tersebut yang di generate secara random.

Seluruh daftar mailing list di groups.or.id dapat dilihat di http://groups.or.id/mailman/listinfo. Pengguna biasa dapat subscribe melalui e-mail namamailinglist-subscribe@groups.or.id atau melalui web http://groups.or.id/mailman/listinfo/namamailinglist.

Untuk administrator mailing list yang ingin mengadmini mailing list dapat dilakukan melalui http://groups.or.id/mailman/admin/namamailinglist

masukan password administrator mailing list yang di peroleh melalui e-mail saat dibuatkan mailing list tersebut.

Beberapa hal yang sering dilakukan oleh administrator mailing list melalui Web http://groups.or.id/mailman/admin/namamailinglist adalah,

  • Passwords (utk ubah password administrator)
  • Membership Management --> Mass Subscription
  • Privacy Options --> Subscription Rules --> advertised --> Yes

Di samping itu, ada beberapa parameter yang akan membantu operasional mailing list server seperti,

  • General Options --> Owner (utk ubah -owner)
  • General Options --> Description (pemberitahuan di listinfo)
  • General Options --> first_strip_reply_to --> yes
  • General Options --> reply_goes_to_list --> this list