Showing posts with label Linux. Show all posts
Showing posts with label Linux. Show all posts

Saturday, July 23, 2011

PF Gateway dan Proxy SQuid beda mesin

bsd-squidBeberapa hari ini bos meminta untuk dibuatkan proxy server, seleumnya sudah ada proxy server dan gateway dalam satu mesin. Namun, belakangan ini sering down. Sebagai alternative untuk mengurangi beban kerja  server, di usulkan gateway dan proxy di pindah ke mesin lain.

Karena sudah lama tidak main routing-an di network, cari2 akhirnya ketemu resep dari anggota forum FreeBSD.

Sebagai contoh penulis buatkan data server gateway dan proxy server ;

Gateway : 192.168.0.1
Proxy : 192.168.0.2


Caranya sebagai berikut;

Wednesday, July 13, 2011

how to replication postgresql 9.0 in FreeBSD

Install postgresql 9.0 on both server using port
#cd /usr/ports/database/postgresql90-server
#make install clean


Start service postgresql on both server
#/usr/local/etc/rc.d/postgresql start

Then configure both server;
Master (192.168.0.1)

Edit postgresql.conf
listen_address='*'
wal_level = hot_standby
max_wal_sender = 1
wal_keep_segments = 32
archive_mode = on
archive_command = 'cp -i %p /usr/local/pgsql/data/archives/%f'

Save and exit.

Wednesday, July 6, 2011

Query NOT di openLDAP

Masih di sekitar openLDAP, mau share cara untuk query NOT ( ! ) di openldap. Biasa saya filtering menggunakan base dan objectClass dan attribute tertentu.
Pada pengalaman penulis biasanya menggunakan double quote (""), namun selalu tampil sbb ;

[cyberthug@smtp ~/]$ ldapsearch -b "ou=people,dc=mycompany,dc=com" "(&(objectClass=*)(!(objectClass=gosaMailAccount)))"
bash: !: event not found


Untuk mengatasinya ganti double quote (") menggunakan single quote ( ' ) ;

[cyberthug@smtp ~/]$ldapsearch -b 'ou=people,dc=mycompany,dc=com' '(&(objectClass=*)(!(objectClass=gosaMailAccount)))'
# search result
search: 2
result: 0 Success


Done.

skip duplicate when modify in openLDAP

Dari kemarin2 disuruh bos untuk tambah attribute di user openLDAP, akhirnya kesampaian juga. Namun ada kendala dimn user lebih dari 500.

File modif untuk tambah attribute sudah di buat tinggal deploy, namun saat deploy ada kesalahan sintax dan harus deploy ulang. Saat deploy ulang error already exist dan stop.

Setelah baca manual dan cari di opa Google, ternyata ada trik untuk melewati/skip yg duplicate ato sudah pernah di deploy dengan option -c, sebagai contoh ;

ldapmodify -D "cn=root,dc=mycompany,dc=com" -w secret -c -f usermail-modif.ldif

dari perintah tersebut walaupun ada duplicate/error modifikasi tetap jalan seperti di bawah ini ;

modifying entry "uid=user1,ou=people,dc=mycompany,dc=com"
modifying entry "uid=user2,ou=people,dc=mycompany,dc=com"
modifying entry "uid=user3,ou=people,dc=mycompany,dc=com"
modifying entry "cn=admin,ou=people,dc=mycompany,dc=com"
ldap_modify: Object class violation (65)
additional info: object class 'gosaMailAccount' requires attribute 'mail'
modifying entry "uid=user5,ou=people,dc=mycompanyl,dc=com"
modifying entry "uid=user6,ou=people,dc=mycompany,dc=com"
modifying entry "uid=user7,ou=people,dc=mycompany,dc=com"


Semoga bermanfaat. Amin.

Tuesday, June 14, 2011

Sorting using openLDAP

Doing something pagi2 di kantor, tiba-tiba ada message masuk dari rekan kerja. Tanya, "Bro, gimana caranya tau last uidNumber di openLDAP ?"....
Pernah megang openLDAP tapi belum dalam di ldapsearch, langsung buru2 tanya opa GOOGLE. Stelah coba2 akhirnya bisa, do'i bilang "Learning by doing".
Berikut adalah commandnya ;

ldapsearch -D "cn=root,dc=mycompany,dc=com" -w secret -s sub -b "ou=people,dc=mycompany,dc=com" -S uidNumber "(objectClass=mycompanyPerson)" uidNumber

Saya tidak akan jelaskan detailnya untuk option atau parameter yang di tambahkan, untuk lebih lanjutnya silakan klik http://download.oracle.com/docs/cd/E19199-01/816-6400-10/lsearch.html#wp21683

Saturday, August 28, 2010

Solved : Error displaying connection information: No valid active connections found! in Lucid

Beberapa hari yang lalu network-manager tidak muncul/tampil di applet pada Ubuntu Lucid stelah update.
Untuk mengatasi error tersebut edit file nm-system-settings.conf di folder /etc/NetworkManager/. Ubah dengan editor kesukaan anda, penulis dalam hal ini menggunakan vi editor. Sebelum di ubah kita backup dulu filenya, dengan perintah ;
# sudo cp /etc/NetworkManager/nm-system-settings.conf /etc/NetworkManager/nm-system-settings.conf.default
Buka file tersebut ;
# sudo vi /etc/NetworkManager/nm-system-settings.conf

Isi file :
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false


Ubah menjadi :
[main]
plugins=keyfile
[ifupdown]
managed=true


Simpan dan keluar, lalu restart service network-manager dan network.

# sudo /etc/init.d/network-manager restart
# sudo /etc/init.d/networking restart


Selesai smoga bermanfaat.

Solved : Error displaying connection information: No valid active connections found! in Lucid

Beberapa hari yang lalu network-manager tidak muncul/tampil di applet pada Ubuntu Lucid stelah update.
Untuk mengatasi error tersebut edit file nm-system-settings.conf di folder /etc/NetworkManager/. Ubah dengan editor kesukaan anda, penulis dalam hal ini menggunakan vi editor. Sebelum di ubah kita backup dulu filenya, dengan perintah ;
# sudo cp /etc/NetworkManager/nm-system-settings.conf /etc/NetworkManager/nm-system-settings.conf.default
Buka file tersebut ;
# sudo vi /etc/NetworkManager/nm-system-settings.conf

Isi file :
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false


Ubah menjadi :
[main]
plugins=keyfile
[ifupdown]
managed=true


Simpan dan keluar, lalu restart service network-manager dan network.

# sudo /etc/init.d/network-manager restart
# sudo /etc/init.d/networking restart


Selesai smoga bermanfaat.

Thursday, August 12, 2010

Install JRE and JDK in Ubuntu Lucid

Untuk install JRE dan JDK di Ubuntu Lucid, sebelumnya kita harus set software source dulu dengan cara ;
Klik System --> Software Sources --> Other Software, kemudian centang di kotak :
1. http://archive.canonical.com/ubuntu lucid partner
2. http://archive.canonical.com/ubuntu lucid partner (Source Code)

Jika 2 alamat tersebut belum ada buat dengan cara :
A. Klik Add, lalu set seperti berikut ;
1. Untuk http://archive.canonical.com/ubuntu lucid partner
Type : Binary
URI : http://archive.canonical.com/ubuntu
Distribution : lucid
Component : partner
Lalu klik OK.
Selanjutnya buat untuk alamat yang ke dua, lakukan langkah A dan setting seperti berikut

2. Untuk http://archive.canonical.com/ubuntu lucid partner
Type : Source
URI : http://archive.canonical.com/ubuntu
Distribution : lucid
Component : partner
Klik OK, lalu klik Close dan terakhir click Reload untuk mereload sofware source yang telah di set.


Selanjutnya install JRE dan JDK dengan command sudo apt-get install ;
# sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk
Cek java untuk memastikan instalasi berhasil dengan command ;
# sudo java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)

Jika tampil Java Version "1.6.0_20", berarti instalasi berhasil.

Sekarang kita coba buat program Hello CyberThug.
# sudo vi HelloCyber.java
Masukkan script berikut ;
public class HelloCyber {
public static void main(String[] args) {
System.out.println("Hello, CyberThug!");
}
}


Simpan dan keluar, lalu compile dan jalankan programnya dengan perintah berikut ;
# sudo javac HelloCyber.java
# sudo java HelloCyber.java


Keluarnya ;
Hello, CyberThug!

Done, smoga bermanfaat.

Install JRE and JDK in Ubuntu Lucid

Untuk install JRE dan JDK di Ubuntu Lucid, sebelumnya kita harus set software source dulu dengan cara ;
Klik System --> Software Sources --> Other Software, kemudian centang di kotak :
1. http://archive.canonical.com/ubuntu lucid partner
2. http://archive.canonical.com/ubuntu lucid partner (Source Code)

Jika 2 alamat tersebut belum ada buat dengan cara :
A. Klik Add, lalu set seperti berikut ;
1. Untuk http://archive.canonical.com/ubuntu lucid partner
Type : Binary
URI : http://archive.canonical.com/ubuntu
Distribution : lucid
Component : partner
Lalu klik OK.
Selanjutnya buat untuk alamat yang ke dua, lakukan langkah A dan setting seperti berikut

2. Untuk http://archive.canonical.com/ubuntu lucid partner
Type : Source
URI : http://archive.canonical.com/ubuntu
Distribution : lucid
Component : partner
Klik OK, lalu klik Close dan terakhir click Reload untuk mereload sofware source yang telah di set.


Selanjutnya install JRE dan JDK dengan command sudo apt-get install ;
# sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk
Cek java untuk memastikan instalasi berhasil dengan command ;
# sudo java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)

Jika tampil Java Version "1.6.0_20", berarti instalasi berhasil.

Sekarang kita coba buat program Hello CyberThug.
# sudo vi HelloCyber.java
Masukkan script berikut ;
public class HelloCyber {
public static void main(String[] args) {
System.out.println("Hello, CyberThug!");
}
}


Simpan dan keluar, lalu compile dan jalankan programnya dengan perintah berikut ;
# sudo javac HelloCyber.java
# sudo java HelloCyber.java


Keluarnya ;
Hello, CyberThug!

Done, smoga bermanfaat.

Wednesday, July 14, 2010

Sudo without fullpath

This is little tricky to set sudo without fullpath, we can use alias to get it.
Open file .bashrc then add this line;
alias sudo='PATH=$PATH:/usr/kerberos/sbin:/usr/local/sbin:/usr/sbin:/sbin
/usr/bin/sudo'

or add this line
export PATH=$PATH:/usr/sbin:/sbin
Save and exit.
To check please logout then open console/terminal again.

Done, smoga bermanfaat

Sudo without fullpath

This is little tricky to set sudo without fullpath, we can use alias to get it.
Open file .bashrc then add this line;
alias sudo='PATH=$PATH:/usr/kerberos/sbin:/usr/local/sbin:/usr/sbin:/sbin
/usr/bin/sudo'

or add this line
export PATH=$PATH:/usr/sbin:/sbin
Save and exit.
To check please logout then open console/terminal again.

Done, smoga bermanfaat

Install Slax di hardisk Virtualbox

Sudah beberapa hari ini, kerjaan di kantor mulai membuatku ngantuk...kebiasaan ngoprek/research tidak tersalurkan.
Akhirnya dapat pelarian untuk membuat virtual OS Slax di virtual, sudah download iso Slax LiveCD dan installer-nya
Langsung aja berikut adalah langkah-langkahnya.
Pertama-tama boot dengan Slax LiveCD, lalu kita buat partisi swap dan root menggunakan konsole;
# cfdisk
Disk Drive: /dev/hda
Size: 8589934592 bytes, 8589 MB
Heads: 16 Sectors per Track: 63 Cylinders: 16644
Name    Flags   Part Type      FS Type        [Label]        Size (MB)
--------------------------------------------------------------------------
hda1            Primary        Linux            swap            511.97
hda2    Boot    Primary        Linux            ext3           8077.94
[Bootable]  [Delete] [Help][Maximize][Print] [Quit] [Type] [Units] [Write]
Toggle bootable flag of the current partition


Setelah partisi di buat, sekarang kita install Slax-nya ke hardisk dengan menggunakan installer yang sebelumnya kita download dengan perintah ;
# /usr/bin/kmdr-executor slax6-install.kmdr

Akan tampil windows Slax Live Installer, yg harus di perhatikan adalah;
- Source (SLAX CD) : --> biarkan dalam keadaan kosong/blank
- Install SLAX to : /mnt/hda2 --> partisi yg akan kita install slax (disini sudah saya mounting)
- Write MBR to : /dev/hda --> partisi untuk Boot

Klik tombol Next untuk melakukan installernya, akan terlihat pada progress bar prosess copy/instalasinya.

Setelah selesai progress bar akan tampil message "All done! click Close button", selanjutnya click tombol Close.

Restart dan booting dengan hardisk.

Done.

Install Slax di hardisk Virtualbox

Sudah beberapa hari ini, kerjaan di kantor mulai membuatku ngantuk...kebiasaan ngoprek/research tidak tersalurkan.
Akhirnya dapat pelarian untuk membuat virtual OS Slax di virtual, sudah download iso Slax LiveCD dan installer-nya
Langsung aja berikut adalah langkah-langkahnya.
Pertama-tama boot dengan Slax LiveCD, lalu kita buat partisi swap dan root menggunakan konsole;
# cfdisk
Disk Drive: /dev/hda
Size: 8589934592 bytes, 8589 MB
Heads: 16 Sectors per Track: 63 Cylinders: 16644
Name    Flags   Part Type      FS Type        [Label]        Size (MB)
--------------------------------------------------------------------------
hda1            Primary        Linux            swap            511.97
hda2    Boot    Primary        Linux            ext3           8077.94
[Bootable]  [Delete] [Help][Maximize][Print] [Quit] [Type] [Units] [Write]
Toggle bootable flag of the current partition


Setelah partisi di buat, sekarang kita install Slax-nya ke hardisk dengan menggunakan installer yang sebelumnya kita download dengan perintah ;
# /usr/bin/kmdr-executor slax6-install.kmdr

Akan tampil windows Slax Live Installer, yg harus di perhatikan adalah;
- Source (SLAX CD) : --> biarkan dalam keadaan kosong/blank
- Install SLAX to : /mnt/hda2 --> partisi yg akan kita install slax (disini sudah saya mounting)
- Write MBR to : /dev/hda --> partisi untuk Boot

Klik tombol Next untuk melakukan installernya, akan terlihat pada progress bar prosess copy/instalasinya.

Setelah selesai progress bar akan tampil message "All done! click Close button", selanjutnya click tombol Close.

Restart dan booting dengan hardisk.

Done.

Tuesday, June 29, 2010

Download package dengan Yum

Untuk melakukan download dengan yum, sebelumnya harus di install plugin yum-downloadonly.

Option untuk download yaitu ;

1.--downloadonly : untuk download rpm file
2.--downloaddir=/path/dir/ : untuk download rpm file dan ditempatkan pada folder tertentu.

Install plugin yum downloadonly dengan perintah ;
# yum install yum-downloadonly

Setelah kita install pluginnya, coba kita download package rpm ;
# yum update compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly

Secara default file akan di simpan pada folder /var/cache/yum/

Sekarang kita coba download package dan simpan di folder khusus, dalam contoh ini disimpan di folder /opt/ ;
# yum update compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly --downloaddir=/opt

Output :

yum install compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly --downloaddir=/opt
Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
* extras: mirror.averse.net
* updates: mirror.averse.net
* base: mirror.averse.net
* addons: mirror.averse.net
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package compat-libstdc++-33.x86_64 0:3.2.3-61 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================================
Package Arch Version Repository Size
=======================================================================================================
Installing:
compat-libstdc++-33 x86_64 3.2.3-61 base 227 k
Transaction Summary
=======================================================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 227 k
Downloading Packages:
compat-libstdc++-33-3.2.3-61.x86_64.rpm | 227 kB 00:24
exiting because --downloadonly specified


Lalu check file dengan perintah ls ;
# ls -l /opt/
-rwxr-xr-x 1 root root 237096 Nov 19 2007 compat-libstdc++-33-3.2.3-61.i386.rpm


Semoga bermanfaat.

Download package dengan Yum

Untuk melakukan download dengan yum, sebelumnya harus di install plugin yum-downloadonly.

Option untuk download yaitu ;

1.--downloadonly : untuk download rpm file
2.--downloaddir=/path/dir/ : untuk download rpm file dan ditempatkan pada folder tertentu.

Install plugin yum downloadonly dengan perintah ;
# yum install yum-downloadonly

Setelah kita install pluginnya, coba kita download package rpm ;
# yum update compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly

Secara default file akan di simpan pada folder /var/cache/yum/

Sekarang kita coba download package dan simpan di folder khusus, dalam contoh ini disimpan di folder /opt/ ;
# yum update compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly --downloaddir=/opt

Output :

yum install compat-libstdc++-33-3.2.3-61.x86_64 -y --downloadonly --downloaddir=/opt
Loaded plugins: downloadonly, fastestmirror
Loading mirror speeds from cached hostfile
* extras: mirror.averse.net
* updates: mirror.averse.net
* base: mirror.averse.net
* addons: mirror.averse.net
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package compat-libstdc++-33.x86_64 0:3.2.3-61 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================================================================
Package Arch Version Repository Size
=======================================================================================================
Installing:
compat-libstdc++-33 x86_64 3.2.3-61 base 227 k
Transaction Summary
=======================================================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 227 k
Downloading Packages:
compat-libstdc++-33-3.2.3-61.x86_64.rpm | 227 kB 00:24
exiting because --downloadonly specified


Lalu check file dengan perintah ls ;
# ls -l /opt/
-rwxr-xr-x 1 root root 237096 Nov 19 2007 compat-libstdc++-33-3.2.3-61.i386.rpm


Semoga bermanfaat.

Monday, June 21, 2010

WGET save to location/folder

wget adalah perintah untuk pengunduh lewat jaringan (network downloader) baik itu http, ftp atau https.
syntax wget :
# wget nama_url

File hasil unduhan akan berada di lokasi dimana perintah tersebut di jalankan, pertanyaannya adalah bagaimana jika file tersebut ingin di tempatkan di folder lain/khusus.
Ternyata cuma tambahin --directory-prefix=
Contohnya, download file test.txt dan simpan di folder /data ;

# wget --directory-prefix=/data http://www.test-download.com/test.txt

Smoga bermanfaat.

WGET save to location/folder

wget adalah perintah untuk pengunduh lewat jaringan (network downloader) baik itu http, ftp atau https.
syntax wget :
# wget nama_url

File hasil unduhan akan berada di lokasi dimana perintah tersebut di jalankan, pertanyaannya adalah bagaimana jika file tersebut ingin di tempatkan di folder lain/khusus.
Ternyata cuma tambahin --directory-prefix=
Contohnya, download file test.txt dan simpan di folder /data ;

# wget --directory-prefix=/data http://www.test-download.com/test.txt

Smoga bermanfaat.

Monday, June 14, 2010

Hiding PHP Error Message

Ada permintaan dari developer dari kantor, setiap error script php di hidden pada browser.
Hal baru, walaupun cuma kecil, namun effect-nya path di server bisa kelihatan jika error tersebut tampil.
Setelah cari2 di opa google nemu caranya, ternyata cuma set sedikit di file php.ini-nya saja.
Buka file-nya terserah pake editor yang dikuasai, di folder /etc/php.ini.
Cari bagian ;
display_error = On atau display_error = Off
dan ubah menjadi
display_error = 0
Lalu restart apache-nya ;
# service httpd restart atau
# /etc/init.d/httpd restart

Done.

Hiding PHP Error Message

Ada permintaan dari developer dari kantor, setiap error script php di hidden pada browser.
Hal baru, walaupun cuma kecil, namun effect-nya path di server bisa kelihatan jika error tersebut tampil.
Setelah cari2 di opa google nemu caranya, ternyata cuma set sedikit di file php.ini-nya saja.
Buka file-nya terserah pake editor yang dikuasai, di folder /etc/php.ini.
Cari bagian ;
display_error = On atau display_error = Off
dan ubah menjadi
display_error = 0
Lalu restart apache-nya ;
# service httpd restart atau
# /etc/init.d/httpd restart

Done.

Sunday, January 17, 2010

rsync tanpa password

Berdasarkan pengalaman di kantor, saat itu ada pekerjaan yang harus di selesaikan dimana ada backup database setiap hari dan harus di copy ke ftp server.

Metode yang copy/backup remote menggunakan rsync, kendala pertama setiap melakukan proses rsync harus memasukkan password pada server ftp.

Karena backup ini dilakukan setiap hari berikut adalah cara agar setiap copy ke ftp server tidak muncul prompt menanyakan password.

Sebagai contoh ;

1. DB Server : 192.168.0.1
2. FTP Server : 192.168.0.2

Pertama buat user dulu di ftp server(192.168.0.2), contoh test1;

# adduser test1

setelah itu beri password
# passwd test1
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully


Setelah itu agar dari server database setiap backup ke ftp server tidak meminta password kita buat public key untuk server database dan kita copy kedalam folder /home/test1.ssh/, berikut adalah langkahnya ;

Dari Server DB buat Public Key

#ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
90:c3:0e:c1:47:67:2b:23:f5:39:e7:1d:e6:4f:5f:b4 root@cyberthug
The key's randomart image is:
+--[ DSA 1024]----+
|   ...o o        |
|    .+.= o       |
|    o.B = . o   .|
|     + = + + . ..|
|      . S . o .E.|
|             o ..|
|              . .|
|                 |
|                 |
+-----------------+


Setelah public key di buat, copy file tersebut ke server FTP di folder /home/test1/.ssh
# scp /root/.ssh/id_rsa.pub 'test1@192.168.0.2:/home/test1/.ssh/autorized_keys'
test1 password :


Sekarang kita coba untuk backup/copy file menggunakan rsync.
# rsync -avh /var/backup/*.gz 'test1@192.168.0.2:/home/test1/'
building file list ... done
backup-20100113.sql.gz
sent 551.37K bytes  received 4.52K bytes  370.60K bytes/sec
total size is 632.14K  speedup is 1.14


Berhasil !! Sekarang sudah tidak harus memasukkan password lagi untuk backup file ke server ftp.