Monthly Archives: September 2011

Shell script to print Sysctl.conf


Script ini baiknya digunakan untuk membackup configurasi default sebelum melakukan perubahan  beberapa parameter di /etc/sysctrl.conf. Sehingga apabila terjadi hal yang tidak sesuai dengan yang di harapkan dapat di restore ke default value.

#!/bin/bash

#create moses@intelix.co.id
echo “Default value /etc/sysctrl.conf”
echo “====================================================”
#grep -v “^#” /etc/sysctrl.conf | sed -e ‘/^$/d’
cat /etc/sysctl.conf | sed ‘/ *#/d; /^ *$/d’
echo “”
i=0
DIR_TCP_KERNEL=”/proc/sys/net/ipv4/ /proc/sys/kernel/ /proc/sys/net/core/ /proc/sys/fs/ /proc/sys/vm/”
for kernel in $DIR_TCP_KERNEL;
do
i=`expr $i + 1`
echo “”
echo “Directory  = “$kernel
echo “====================================================”
for tcp in `ls -l $kernel | awk ‘{print $9}’`;
do
if [ -f $kernel$tcp ]; then
case $i in
1)
path_file=”net.ipv4.$tcp = ”
;;
2)
path_file=”kernel.$tcp = ”
;;
3)
path_file=”net.core.$tcp = ”
;;
4)
path_file=”fs.$tcp = ”
;;
5)
path_file=”vm.$tcp = ”
;;
esac
file_value=`cat $kernel$tcp`
printf ‘%s %s\n’ “$path_file” “$file_value”
fi
done
done

Cara menjalankannnya:

sh /dir/filename.sh > kernel.txt
Thx

Advertisements

Ringkasan DRBD


vim /etc/drbd.conf

global {
dialog-refresh 1;
usage-count yes;
minor-count 5;
}
common {
syncer {
rate 10M;
}
}
resource r0 {
protocol C;
disk {
on-io-error detach;
}
syncer {
rate 10M;
al-extents 257;
}
on echo {
device /dev/drbd0;
address 192.168.1.235:7788;
meta-disk internal;
disk /dev/sdb;
}
on fanta {
device /dev/drbd0;
address 192.168.1.236:7788;
meta-disk internal;
disk /dev/sdb;
}
}

fanta:/etc/ha.d # vim haresources
echo IPaddr::192.168.1.243/24/eth0 drbddisk::r0 Filesystem::/dev/drbd0::/srv::ext3 apache2

fanta:/etc/ha.d # vim ha.cf

keepalive 2
warntime 5
deadtime 15
initdead 90
udpport 694
auto_failback on
bcast eth0
logfile /var/log/ha-log
node echo fanta

fanta:/etc/ha.d # vim authkeys
auth 2
2 crc

fanta:/etc/ha.d # chmod 600 ha.cf

vim /etc/hosts
127.0.0.2 fanta.example.com fanta
192.168.1.236 fanta.example.com fanta

fanta:/etc/ha.d # /etc/init.d/heartbeat (start on server fanta and echo)

fanta:/etc/ha.d # drbdadm create-md r0

fanta:/etc/ha.d # /etc/init.d/drbd status

golf IPaddr::192.168.1.244/24/eth0 drbddisk::r0 Filesystem::/dev/drbd0::/srv::ext3 apache2 smb mysql

mv /var/lib/mysql /srv/
ln -sf /srv/mysql /var/lib/mysql

TUNING MYSQL FOR MASSIVE INSERT


$link = mysql_connect(‘localhost’, ‘root’, ‘moses’);
if (!$link) {
die(‘Not connected : ‘ . mysql_error());
}
$db_selected = mysql_select_db(‘tester’, $link);
if (!$db_selected) {
die (‘Can\’t use foo : ‘ . mysql_error());
}
// myisam
//default conf
//BULK_INSERT_BUFFER_SIZE=8388608
//MYISAM_SORT_BUFFER_SIZE=8388608
//KEY_BUFFER_SIZE=8384512

mysql_query(“truncate table load1”,$link);
mysql_query(“SET SESSION BULK_INSERT_BUFFER_SIZE=256217728”,$link); // 256M
mysql_query(“SET SESSION MYISAM_SORT_BUFFER_SIZE=256217728”,$link); // 256M
mysql_query(“SET GLOBAL CONCURRENT_INSERT=2”,$link);
mysql_query(“SET GLOBAL KEY_BUFFER_SIZE=256217728”,$link); // 256M
mysql_query(“alter table load1 disable keys”,$link);
mysql_query(“LOAD DATA INFILE ‘/home/moses/loaddata.csv’ IGNORE INTO TABLE load1 FIELDS TERMINATED BY ‘,'”);
mysql_query(“alter table load1 enable keys”,$link);
mysql_close($link);

//default conf
//innodb_flush_log_at_trx_commit=1
//innodb_flush_method=
//innodb_doublewrite=ON
//innodb_additional_mem_pool_size=1048576 (1M)
//innodb_buffer_pool_size=8388608 (8M)
//innodb_log_file_size=5242880 (5M)

//innodb
mysql_query(“truncate table load1”,$link);
mysql_query(“SET SESSION innodb_flush_log_at_trx_commit=2”,$link);
mysql_query(“SET SESSION innodb_flush_method=O_DIRECT “,$link);
mysql_query(“SET SESSION innodb_doublewrite=0”,$link); // default ON
mysql_query(“SET SESSION innodb_additional_mem_pool_size=26214400”,$link); // => 25M
mysql_query(“SET SESSION innodb_buffer_pool_size=1073741824”,$link); // => 1G
mysql_query(“SET SESSION innodb_log_file_size=268435456”,$link); // => 256M
mysql_query(“LOAD DATA INFILE ‘/home/moses/loaddata.csv’ IGNORE INTO TABLE load1 FIELDS TERMINATED BY ‘,'”,$link);
mysql_close($link);

Pertimbangkan juga dengan menggunakan pada innodb
UNIQUE_CHECKS=0;
FOREIGN_KEY_CHECKS=0

OPENVZ on Centos 5.5 Final


Berikut adalah langkah-langkahnya:

[root@ecentrixfinal yum.repos.d]# pwd
/etc/yum.repos.d
[root@ecentrixfinal yum.repos.d]# vim openvz.repo

Tambahakan
[openvz-kernel-rhel5]
name=OpenVZ RHEL5-based kernel
#baseurl=http://download.openvz.org/kernel/branches/rhel5-2.6.18/current/
mirrorlist=http://download.openvz.org/kernel/mirrors-rhel5-2.6.18
enabled=1
gpgcheck=1
gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ

[root@ecentrixfinal yum.repos.d]# yum clean all
[root@ecentrixfinal yum.repos.d]# yum install vzkernel vzquota vzctl

Check apakash sudah terinstall or not
[root@ecentrixfinal yum.repos.d]# rpm -aq | grep vzkernel
ovzkernel-2.6.18-274.el5.028stab093.2
[root@ecentrixfinal yum.repos.d]# rpm -aq | grep vzquota
vzquota-3.0.12-1
[root@ecentrixfinal yum.repos.d]# rpm -aq | grep vzctl
vzctl-lib-3.0.28.3-1
vzctl-3.0.28.3-1

Check apakah di menu.list sudah terinstall kernel baru
[root@ecentrixfinal yum.repos.d]# cat /boot/grub/menu.lst

[root@ecentrixfinal yum.repos.d]# cat /boot/grub/menu.lst
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
# initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title OpenVZ (2.6.18-274.el5.028stab093.2)
root (hd0,0)
kernel /vmlinuz-2.6.18-274.el5.028stab093.2 ro root=/dev/VolGroup00/LogVol00 rhgb quiet selinux=0
initrd /initrd-2.6.18-274.el5.028stab093.2.img
title CentOS (2.6.18-194.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.18-194.el5.img
[root@ecentrixfinal yum.repos.d]#

Default ke kernel 1 (OPENVZ)

[root@ecentrixfinal yum.repos.d]# vim /etc/vz/vz.conf

NEIGHBOUR_DEVS=all

Change systctl.conf
Sesuikan, jika belum ada tambahkan sendiri
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.default.forwarding = 1
net.ipv4.ip_forward = 1
save (wq!)
[root@ecentrixfinal openvz]# sysctl -p
reboot

check versi kernel harusnya yang di load sudah kernel OPENVZ
[root@ecentrixfinal ~]# uname -a
Linux ecentrixfinal 2.6.18-274.el5.028stab093.2 #1 SMP Tue Aug 23 17:13:34 MSD 2011 i686 i686 i386 GNU/Linux

Install Guest Baru dengan menguplaod template yang ingin di install
upload ke dir via scp or winscp
ex: ubuntu-10.04-minimal_10.04_i386.tar.gz

[root@ecentrixfinal openvz]# ls -l
total 85604
-rw-r–r– 1 root root 87107384 May 5 2010 ubuntu-10.04-minimal_10.04_i386.tar.gz
-rw-r–r– 1 root root 165401 Jun 16 23:56 vzctl-3.0.28.3-1.i386.rpm
-rw-r–r– 1 root root 190511 Jun 16 23:56 vzctl-lib-3.0.28.3-1.i386.rpm
-rw-r–r– 1 root root 83539 Nov 11 2008 vzquota-3.0.12-1.i386.rpm

[root@ecentrixfinal openvz]# vzctl create 100 –ipadd 192.168.137.201 –ostemplate ubuntu-10.04-minimal_10.04_i386 –hostname ubuntuminimal –onboot yes –save

Start guest ubuntu

[root@ecentrixfinal openvz]# vzctl start 100
Starting container …
Container is mounted
Adding IP address(es): 192.168.137.201
Setting CPU units: 1000
Set hostname: ubuntu-minimal
File resolv.conf was modified
Container start in progress…

Masuk ke Guest
[root@ecentrixfinal openvz]# vzctl enter 100
entered into CT 100
root@ubuntu-minimal:/#

Install paket dari host pada Guest
[root@ecentrixfinal openvz]# vzctl exec 100 apt-get install rcconf
Reading package lists…
Building dependency tree…
Reading state information…
The following extra packages will be installed:
libfribidi0 libgdbm3 libnewt0.52 libpopt0 make perl perl-modules whiptail
Suggested packages:
make-doc perl-doc libterm-readline-gnu-perl libterm-readline-perl-perl
The following NEW packages will be installed:
libfribidi0 libgdbm3 libnewt0.52 libpopt0 make perl perl-modules rcconf
whiptail
0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
Need to get 7579kB of archives.
After this operation, 32.9MB of additional disk space will be used.
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ lucid/main libfribidi0 0.19.2-1 [41.7kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ lucid/main libgdbm3 1.8.3-9 [45.2kB]

Stop Guest
[root@ecentrixfinal openvz]# vzctl stop 100
Stopping container …
Container was stopped
Container is unmounted
[root@ecentrixfinal openvz]#

Command line explore sendiri dengan menggunakan command vzctrl –help
vzcalc vzcpucheck vzdqcheck vzdqload vzifup-post vzmemcheck vznetaddbr vzpid vzsplit
vzcfgvalidate vzctl vzdqdump vzeventd vzlist vzmigrate vznetcfg vzquota vzubc

Finish

Thanks

Ringkasan Virtualisasi


Ringkasan Virtualisasi
https://www.socallinuxexpo.org/scalemedia/scale/simple_cfp/20100227-184429/Jamie_Cameron.pdf

http://achmad.glclearningcenter.com/2008/11/23/tanya-tentang-virtualization-dunk/

Apakah perbedaan Full Virtualisasi dengan ParaVirtualisasi?

Para Virtualisasi = Virtualisasi di level Kernel OS, jadi tidak melakukan emulasi hardware, mulainya dari kernel. Kernel merupakan modal utama untuk melakukan load OS.

Keuntungannya:
Tidak banyak overhead,cepat, cocok untuk production dan security (Guest seolah2 di chroot)

Kerugian:
Kernel di HOST akan selalu sama dengan kernel si GUEST.

Apa itu hypervisor:
Itu merupakan software untuk membuat virtualisasi,software inilah yang membuat Guest OS. Contoh Vmware,Xen,Virtualbox,citrix,dll.

Apa saja jenis dari Hypervisor:
– Native / Baremetal ( Promox, citrix versi baremetalnyasi Xen, VMWare)
– Hosted Supervisor

KVM = Full Virtualisasi
OpenVZ = ParaVirtualisasi
Xen mendukung full virtualisasi dan Para Virtualisasi

1. Apasih syarat utama hardware untuk menjalankan virtualisasi?
Jawab:
CPU harus mendukung VT atau AMD-V extension?
2. Bagaimana cara mengetahuinya?
Jawab:
Check dari BIOS atau via command line di console dengan command
“cat /proc/cpuinfo” | grep svm atau | grep PAE
Grep flags /proc/cpuinfo
hasil:
svm (AMD)
vmx (Intel)
3. Apasih yang dimaksud Full Virtualisasi VS Para Virtualisasi?
Jawab:

4. Apa aja jenis Virtualisasi itu?
Jawab:
Xen,KVM,OpenVZ, Vserver
KVM = Full Virtualisasi (Host dan Guest harus sama OS yang sejenis)
XEN = Bisa Full & Para Virtual (Host dan Guest bisa beda OS), perlu dilakukan custome kernel. Lebih cepat dan hemat resource tetapi jumlah host lebih terbatas.
OPenVZ = Hanya untuk Linux dan menggunakan kernel dari Hostnya ( Ini lebih sedikit overhead yang digunakan dan melakukan isolasi semacam chroot)
Bisa mengunakan sharing memory, Guest dan host harus sama walau beda distro.

Vserver=Hanya untuk linux, dan menggunakan kernel Host ( Overhead rendah)
Jadi intinya KVM dan Xend menggunakan kernel Guestnya sedangkan OpenVZ dan Vserver menggunakan kernel Host-nya.

5. Apa kerugian jika menggunakan kernel yang berbeda dari Hostnya?
Jawab:
Overhead CPU dan RAM ada dari masing-masing kernel si Guest.
Tidak ada kemunkinan menggunakan RAM & disk sharing antar virtual filesystem.
Akses ke Vitrual Filesystem lebih sulit.

6. Jadi mana yang harus saya pilih?
Jawab:
Apakah kamu mempertimbangan masalah isolasi dan pengurangan overhead?
Pertimaban partisioning,testing,build environtment – share kernel.

7. APasih Keungulan menggunakan share kernel?
Jawab:
Mendukung pembatasan RAM, CPU, disk dan network bandwidth.
Biasanya membutuhkan kernel patch dan re-compile untuk di install.
Tidak disupport kebanyakan vendor.

8. KVM annoyance?
Jawab:
Tidak support paravirtualisasi dan membutuhkan CPU yang mendukung VT atau AMD-V.
KVM instance menggunakan proses QEMU secara terpisah.
Tidak kelihatan cara untuk membatasi CPU resource untuk masing-masing guest (Virtual systemnya)
Perubahan RAM & Disk (Penambahan & Pengurangan) membutuhkan reboot server.
Harus brige network.
Tidak support Live Migration.

9. Xen annoyance?
Penambahan RAM or Disk butuh reboot server.
Perlu custom kernel seperti PAE.
Live migration membutuhkan share storage.
Distribusi Redhat dan yang lainnya tidak jelas.

10. Jadi mana yang terbaik?
Jawab: Xen dan untuk share kernel pilihlah openVZ.

11. Apakah semua jenis teknologi virtualisasi didukung oleh semua OS?
Jawab:
Redhat,Centos,Ubuntu, Debian, Suse sudah ada yang lain kurang tau.

INSTALL FAX MODULE + ASTERISK OR REMOVE ASTERISK ON SLES 11 SP 1 / CENTOS 5.5, 5.3


Berikut adalah library yang harus di install jika ingin mengirim fax via asterisk

yum -y install libtiff libtiff-devel ghostscript enscript ImageMagick

yum -y install gd gd-devel jasper jasper-devel libjpeg libjpeg-devel libexif libmng

yum install autoconf automake gcc-c++ git libjpeg-devel libtool make ncurses-devel bison bison-devel

Urutan penginstalan yang benar (menurut hasil testigannku beberapa kali di site client)
tiff
spandsp
cmake
agt-ast-addons

Jika tidak berurutan maka akan terjadi error sbb
require libtiff libtiff-devel dan ketika di cari paket2ya tak kunjung ketemu juga:)

 ###########INSTALL FAX##################

cd /home/ecentrix/installer/fax-module/

mail:/home/ecentrix/fax-module # ls -l
total 8384
-rw-r–r– 1 root root 68144 Jun 19 2009 agx-ast-addons-1.4.17.5.tar.bz2
-rw-r–r– 1 root root 5436543 Nov 4 2010 cmake-2.8.3.tar.gz
-rw-r–r– 1 root root 1709515 Aug 25 2010 spandsp-0.0.4pre16.tgz.gz
-rw-r–r– 1 root root 1336295 Mar 30 2007 tiff-3.8.2.tar.gz

tar -zxvf spandsp-0.0.4pre16.tgz.gz -C /usr/src
tar -zxvf cmake-2.8.3.tar.gz -C /usr/src/
tar -xjvf agx-ast-addons-1.4.17.5.tar.bz2 -C /usr/src
tar -zxvf tiff-3.8.2.tar.gz -d /usr/src/

cd /usr/src/tiff-3.8.2/
./configure –prefix=/usr
make
make install

cd /usr/src/cmake-2.8.3/
./configure –prefix=/usr
gmake
make install

cd /usr/src/spandsp-0.0.4/
./configure –prefix=/usr
make
make install

cd /usr/src/agx-ast-addons/
./build.sh

hasil

[root@locserver209 ~]# asterisk -r
Asterisk 1.4.35, Copyright (C) 1999 – 2010 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type ‘core show warranty’ for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type ‘core show license’ for details.
=========================================================================
Connected to Asterisk 1.4.35 currently running on locserver209 (pid = 4696)
Verbosity is at least 3
locserver209*CLI> show modules like fax
Module Description Use Count
app_rxfax.so Trivial FAX Receive Application 0
app_nv_faxdetect.so Newman’s fax detection application 0
app_txfax.so Trivial FAX Transmit Application 0
3 modules loaded
The ‘show modules like’ command is deprecated and will be removed in a future release. Please use ‘module show like’ instead.
locserver209*CLI> show modules like fax
Module Description Use Count
app_rxfax.so Trivial FAX Receive Application 0
app_nv_faxdetect.so Newman’s fax detection application 0
app_txfax.so Trivial FAX Transmit Application 0
3 modules loaded

==================================================================================
Bagaimana cara remove sebelum melakukan upgrade ke yang terbaru?

Pastikan membackup semua file2 penting seperti /etct/asterisk , /var/lib/sound dsb

Pastikan service asterisk sudah off (mati)

killall -9 safe_asterisk
killall -9 asterisk
cd /usr/src/asterisk-1.4.23
make uninstall
make uninstall-all
Sesudah ok, maka install asterisk terbaru anda.
cd /usr/src/asterisk-terbaru
./configure –prefix=/usr
make
make install
make sample
make config
restart asterisk
Jika menggunakan tentunya ada dahdi dan wanpipe, cara remove asterisk agak sedikit berbeda, cara sbb:
Non-Aktifkan module dahdi
lsmod | grep dahdi | awk ‘{print $4}’
wctc4xxp
wctdm24xxp,wcte12xp
xpp,dahdi_transcode,wcb4xxp,wctdm,wcfxo,wctdm24xxp,wcte11xp,wct1xxp,wcte12xp,dahdi_voicebus,wct4xxp
wctdm24xxp,dahdi
modprobe -r wctc4xxp
modrobe  -r wctdm24xxp
modprobe -r wcte12xp
dst
Lakukan instalasi asterisk terbaru sama seperti diatas

Menghapus Mail Queue Yang Membandel (Solved) && Memproteksi Distribution List Dari Domain Yang Tidak Diinginkan (Solved)


Beberapa hari lalu terjadi insiden kecil di kantor saya, tiba – tiba saja ada email yang ‘kurang menyenangkan’ yang datang dari domain luar, tepatnya dari salah satu account gmail. Hal ini tentu saja membuat gerah pihak manajemen… menurut mereka harusnya Millis (lebih tepatnya yang saya gunakan disini adalah Distribution List, fasilitas dari mail server Zimbra Collaboration Suite) hanya digunakan untuk kebutuhan internal, jadi harus steril dari user diluar perusahaan / diluar domain perusahaan. Ujung – ujungnya tantangan baru nih… , setelah googling kesana – sini, browsing ke zimbra, nanya – nanya ke millis…so akhirnya semua dapat teratasi dengan baik.Pada kesempatan ini saya mencoba menuliskan ulang langkah – langkahnya, mudah – mudahan saja tulisan ini dapat menjadi ‘rekam peristiwa’ yang dapat berguna nantinya, in case saya lupa misalnya, lebih – lebih kalau dapat berguna buat teman – teman yang mengalami kejadian yang sama.
Catatan :

1. Langkah – langkah ini adalah langkah merubah postfix,

dengan membuat rule baru, untuk menentukan domain mana yang boleh

mengirim, atau tidak ke dalam distribution list.

2. Dalam hal ini

nantinya akan terbentuk beberapa file baru dan beberapa manipulasi

konfigurasi postfix. Sangat saya sarankan untuk melakukan backup

sebelum melakukan eksekusi.

3. Langkah – langkah ini sudah teruji

dalam mail server saya, namun mungkin saja tidak dapat dilakukan dimail

server yang lain, atau butuh penyesuaian. Maka ada baiknya sebelum

melakukannya, anda pelajari dulu langkah – langkah yang saya tulis ini

secara menyeluruh.

4. Resiko apapun yang timbul dikarenakan

perubahan konfigurasi pada mail server anda, sepenuhnya menjadi

tanggung jawab anda dan bukan tanggung jawab saya selaku penulis.

Create a ‘permitted senders’ list (as user zimbra) – This is your list of domains and/or users who can email your protected email addresses:

vi /opt/zimbra/postfix/conf/permitted_senders
[paste in contents below editing as required]

localhost OK
mydomain.com OK
zimbra.mydomain.com OK
okuser@externaldom.com OK
Create a ‘protected recipients’ list (as user zimbra) – This is your list of email addresses that may only receive email from ‘permitted senders’

vi /opt/zimbra/postfix/conf/protected_recipients
[paste in contents below editing as required]

test-dist-list@mydomain.com
permitted_senders_list
protected-user@mydomain.com
permitted_senders_list
Create a simple bash script to create postfix DB files (as user zimbra):

vi /opt/zimbra/postfix/conf/update_protected_recipients
[paste in contents below editing as required]

#!/bin/bash
echo “rebuild permitted_senders…”
postmap /opt/zimbra/postfix/conf/permitted_senders
echo “rebuild protected_recipients…”
postmap /opt/zimbra/postfix/conf/protected_recipients
Make new script executable, then run it

chmod 755 /opt/zimbra/postfix/conf/update_protected_recipients
/opt/zimbra/postfix/conf/update_protected_recipients
You should now see permitted_senders.db and protected_recipients.db in the directory

Add necessary settings to /opt/zimbra/postfix/conf/main.cf

vi /opt/zimbra/postfix/conf/main.cf
[add these items to the file – note permitted_senders_list must match value in protected_recipients]

permitted_senders_list = check_sender_access hash:/opt/zimbra/postfix/conf/permitted_senders, reject
smtpd_restriction_classes = permitted_senders_list
**Note this change to the main.cf won’t survive upgrades. Be sure to save a copy of your main.cf file**
Now add your new restriction to the top of postfix_recipient_restrictions.cf

vi /opt/zimbra/conf/postfix_recipient_restrictions.cf
[paste this into the first line of the file, above any other settings]

check_recipient_access hash:/opt/zimbra/postfix/conf/protected_recipients
Reload postfix to activate settings:

postfix reload
Note 3 from talk: files ownership should be set to root:postfix before reloading postfix. This avoids annoying warning messages in logfile.

SAATNYA UNTUK MELAKUKAN TESTING :

Test your settings via telnet:

Enter command:

telnet zimbra.mydomain.com 25
You will see:

Trying 192.168.1.1…
Connected to zimbra.mydomain.com.
Escape character is ‘^]’.
220 zimbra.mydomain.com ESMTP Postfix
Enter command:

HELO test.com
You will see:

250 zimbra.mydomain.com
Enter command:

MAIL FROM: jdoe@test.com
You will see:

250 Ok
Enter command:

RCPT TO: test-dist-list@mydomain.com

You will see:

554 : Recipient address rejected: Access denied
QUIT
221 Bye
Connection closed by foreign host.
That’s it. If you need to protect new distribution lists or emails, or add new senders, just edit and re-run the update script, then reload postfix.
Sumber berita : http://wiki.zimbra.com/index.php?title=RestrictPostfixRecipients

Menghapus Mail Queue Yang Membandel (Solved)
Siang ini tiba – tiba server email dikantor saya ngedrop, user yang jumlahnya sudah mencapai 1600an tidak dapat mendownload email, baik melalui mail client maupun webmail. Setelah coba diselidiki ternyata banyak email yang queue yang bersumber dari 1 account email. Email queue tersebut dapat dilihat dengan command :

# /opt/zimbra/postfix/sbin/mailq

Gak lama keluar rentetan mail queue yang jumlahnya sampai 4150 email dan terus bertambah. Dalam daftar yang keluar tersebut terlihat ada 1 account yang mengirim ke seluruh member distribution list yang ada diserver zimbra, dengan kata lain membroadcast email + attachment yang lumayan besar ke seluruh account yang ada. Normalnya saya akan menggunakan command postsuper : Read more »

Siang ini tiba – tiba server email dikantor saya ngedrop, user yang jumlahnya sudah mencapai 1600an tidak dapat mendownload email, baik melalui mail client maupun webmail. Setelah coba diselidiki ternyata banyak email yang queue yang bersumber dari 1 account email. Email queue tersebut dapat dilihat dengan command :

# /opt/zimbra/postfix/sbin/mailq

Gak lama keluar rentetan mail queue yang jumlahnya sampai 4150 email dan terus bertambah. Dalam daftar yang keluar tersebut terlihat ada 1 account yang mengirim ke seluruh member distribution list yang ada diserver zimbra, dengan kata lain membroadcast email + attachment yang lumayan besar ke seluruh account yang ada. Normalnya saya akan menggunakan command postsuper :

# /opt/zimbra/postfix/sbin/postsuper -d ALL
untuk menghapus seluruh email yang queue. Tapi command postsuper diatas akan menghapus seluruh email yang sedang antri (queue), sementara yang saya butuhkan hanya menghapus mail queue yang bersumber dari 1 account saja.

Setelah lari ke Wiki zimbra, maka permasalahan tersebut dapat diselesaikan dengan mudah, cukup dengan 2 command sebagai berikut :

1. Melihat daftar ID mail yang akan kita delete (asumsi akun email : bandel@email.com)

mailq | tail +2 | grep -v ‘^ *(‘ | awk ‘BEGIN { RS = “” } { if ($8 ==

“bandel@amail.com” && $9 == “”) print $1 } ‘ | tr -d ‘*!’
2. Kemudian untuk delete semua mail dari bandel@email.com, cukup tambahkan command postsuper -d diakhir command yang pertama tadi

mailq | tail +2 | grep -v ‘^ *(‘ | awk ‘BEGIN { RS = “” } { if ($8 ==

“bandel@email.com” && $9 == “”) print $1 } ‘ | tr -d ‘*!’ | postsuper -d –
3. Taraaaaa…. 4150 email yang queue tadi tinggal 100an email, itupun karena Over Quota, jadi biarin aja dulu… hehe.

Catatan : Command panjang diatas ditulis dalam satu command. Untuk lebih lengkapnya dapat melihat di link ini.

http://nanks306.wordpress.com/2009/06/09/memproteksi-distribution-list-dari-domain-yang-tidak-diinginkan/
http://nanks306.wordpress.com/2010/07/05/menghapus-mail-queue-yang-membandel-solved/#more-272

shisdew

Listens until think alike

moses.spaceku@yahoo.com / voip ipbx

Hosted PBX, IP-PBX SOHO/ CALL CENTER, VOICE GATEWAY, VOICE CARD, COST EFECTIVE SOLUTIONS (LCR), GSM/CDMA GATEWAY

%d bloggers like this: