Rabu, 30 Juni 2010

Membuat DNS Server, Web Server dan Database Server Menggunakan Linux Fedora 8

DNS Server dan LAMP menggunakan Linux Fedora sebenarnya pernah saya tuliskan pada artikel saya yang terdahulu, tentang DNS Server Linux, Web Server Linux. Dengan tujuan membantu rekan-rekan yang baru saja beralih ke Linux dan kebetulan menggunakan Linux Fedora 8, ada baiknya saya menuliskan artikel ini. Panduan ini untuk kasus sebagai berikut:
  1. Membuat DNS server untuk domain linuxer.local
  2. Membuat DNS server virtual untuk domain fxekobudi.local, sarolangun.local
  3. Membuat Web server untuk domain linuxer.local, fxekobudi.local, dan sarolangun.local
  4. Membuat Database server menggunakan MySQL yang akan digunakan oleh aplikasi open source (WordPress, Joomla, dan Drupal) pembangun situs lokal pada domain yang telah saya sebutkan di atas.

Sebelum mulai melangkah ke konfigurasi DNS dan LAMP (Linux-Apache-PHP-MySQL), berikut ini adalah konfigurasi pada Laptop yang saya gunakan:

IP Loopback: 127.0.0.1
IP Address NIC: 192.168.0.44
Netmask: 255.255.255.192 (/26)

Paket BIND: bind-9.5.0-18.a7, bind-libs-9.5.0-18.a7, bind-utils-9.5.0-18.a7, bind-chroot-9.5.0-18.a7
Paket APACHE: httpd-2.2.6-3, httpd-tools-2.2.6-3, system-config-httpd-1.4.4-1, httpd-manual-2.2.6-3
Paket MySQL: mysql-libs-5.0.45-4.fc8, mysql-5.0.45-4.fc8, mysql-server-5.0.45-4.fc8
Paket PHP: php-common-5.2.4-3, php-5.2.4-3, php-gd-5.2.4-3, php-cli-5.2.4-3, php-mysql-5.2.4-3

Semua paket sudah disertakan dalam DVD Installer Fedora 8, jadi jika belum terinstal, silahkan instal dengan menggunakan media DVD atau bisa juga menggunakan repository Fedora 8. Untuk mengecek apakah sudah terinstal atau belum, gunakan command: $ rpm -qa | grep [nama-paket]

1. DNS SERVER
Instal paket:
# yum install bind bind-libs bind-utils bind-chroot

Tidak seperti pada fedora 7, Anda dapat menemukan named.conf setelah instalasi bind. Sehingga hanya perlu mengedit konfigurasinya saja.

# vim /var/named/chroot/etc/named.conf

options {
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory “/var/named”;
dump-file “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stats.txt”;
memstatistics-file “/var/named/data/named_mem_stats.txt”;
allow-query { localhost; };
recursion yes;
};

logging {
channel default_debug {
file “data/named.run”;
severity dynamic;
};
};

zone “.” IN {
type hint;
file “named.ca”;
};

include “/etc/named.rfc1912.zones”;

// ————-
// Resolve DNS
// ————-
zone “linuxer.local” IN {
type master;
file “./zone/linuxer.local.zone”;
allow-update { key “rndckey”; };
allow-transfer { 192.168.0/26; };
};

// ————-
// Reverse DNS
// ————-
zone “0.168.192.in-addr.arpa” IN {
type master;
file “./zone/0.168.192.in-addr.arpa.zone”;
allow-update { key “rndckey”; };
allow-transfer { 192.168.0/26; };
};

include “/etc/named.primary.conf”;

Isi file /var/named/chroot/var/named/zone/linuxer.local.zone:

$ttl 38400
@ IN SOA ns.linuxer.local. root.linuxer.local (
1196006770
10800
3600
604800
38400 )
IN NS fxekobudi.linuxer.local.
IN MX 20 mail.linuxer.local.
fxekobudi IN A 192.168.0.44
www IN CNAME fxekobudi
ftp IN CNAME fxekobudi

Isi file /var/named/chroot/var/named/zone/0.168.192.in-addr.arpa.zone:

$ttl 38400
@ IN SOA ns.linuxer.local. root.linuxer.local (
1196006769
10800
3600
604800
38400 )
IN NS fxekobudi.linuxer.local.
44 IN PTR fxekobudi.linuxer.local.

Konfigurasi untuk file /var/named/chroot/etc/named.primary.conf:
# vim /var/named/chroot/etc/named.primary.conf

// —————————-
// Virtual Domain fxekobudi.local
// —————————-
zone “fxekobudi.local” IN {
type master;
file “./zone/fxekobudi.local.zone”;
allow-update { key “rndckey”; };
allow-transfer { 192.168.0/26; };
};

// —————————-
// Virtual Domain sarolangun.local
// —————————-
zone “sarolangun.local” IN {
type master;
file “./zone/sarolangun.local.zone”;
allow-update { key “rndckey”; };
allow-transfer { 192.168.0/26; };
};

Isi file /var/named/chroot/var/named/zone/fxekobudi.local.zone:

$ttl 38400
@ IN SOA ns.linuxer.local. root.linuxer.local (
1196006770
10800
3600
604800
38400 )
IN NS fxekobudi.fxekobudi.local.
IN MX 20 mail.fxekobudi.local.
fxekobudi IN A 192.168.0.44
www IN CNAME fxekobudi
ftp IN CNAME fxekobudi

Isi file /var/named/chroot/var/named/zone/sarolangun.local.zone:

$ttl 38400
@ IN SOA ns.linuxer.local. root.linuxer.local (
1196006770
10800
3600
604800
38400 )
IN NS fxekobudi.sarolangun.local.
IN MX 20 mail.sarolangun.local.
fxekobudi IN A 192.168.0.44
www IN CNAME fxekobudi
ftp IN CNAME fxekobudi

Konfigurasi untuk file /etc/resolv.conf:

search linuxer.local
search fxekobudi.local
search sarolangun.local
nameserver 127.0.0.1
nameserver 192.168.0.44

Tes konfigurasi DNS server:

$ dig linuxer.local
$ nslookup www.linuxer.local

Jalankan daemon DNS server untuk runlevel yang diinginkan:

# /sbin/chkconfig –levels 235 named on

2. WEB SERVER
Instal paket:

# yum install httpd

Edit file konfigurasi apache:

# vim /etc/httpd/conf/httpd.conf

Berikut beberapa konfigurasi yang perlu Anda lakukan:

### Section 1: Global Environment
User apache
Group apache

### Section 2: ‘Main’ server configuration
DocumentRoot “/var/www/html”

DirectoryIndex index.html index.html.var index.php

### Section 3: Virtual Hosts
# Konfigurasi virtual host
Include ./conf/vhosts.conf

Buat file virtual host:
# vim /etc/httpd/conf/vhosts.conf

NameVirtualHost 192.168.0.44:80


ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html
ServerName linuxer.local
ServerAlias www.linuxer.local
ErrorLog logs/error_log
CustomLog logs/access_log combined


ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html/fxekobudi
ServerName fxekobudi.local
ServerAlias www.fxekobudi.local
ErrorLog logs/fxekobudi.local-error_log
CustomLog logs/fxekobudi.local-access_log combined


ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html/sarolangun
ServerName sarolangun.local
ServerAlias www.sarolangun.local
ErrorLog logs/sarolangun.local-error_log
CustomLog logs/sarolangun.local-access_log combined

Jalankan daemon web server untuk runlevel yang diinginkan:

# /sbin/chkconfig –levels 235 httpd on

3. DATABASE SERVER
Instal paket:

# yum install mysql-libs mysql mysql-server

Jalankan daemon mysql server untuk runlevel yang diinginkan:

# /sbin/chkconfig –levels 235 mysqld on

Gunakan phpMyAdmin untuk mempermudah administrasi. Baca artikel saya tentang instalasi phpMyAdmin.
Buat user selain root untuk mengakses database, gunakan interface phpMyAdmin saja.

4. PHP
Instal paket:

# yum install php-common php php-gd php-mysql

Untuk edit file php.ini, gunakan command berikut:

vim /etc/php.ini

Pada bagian
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Rubah pada baris 356:

display_errors = On

Pada baris 619, tambahkan extension=gd.so agar script php dapat memanggil modul gd yang akan digunakan untuk Joomla:

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
extension=gd.so

proxy server

Sebelumnya, pastikan proses internet gateway (routing)sudah berjalan dalam komputer ini.
eth0 digunakan untuk ip internet
eth1, ip LAN

1. Instalasi
Pertama-tama install terlebih dahulu squid melalui synaptic atau melalui command prompt dengan cara :
# apt-get install squid
Setelah selesai maka Squid langsung dapat di konfigurasikan dengan cara :
# vi /etc/squid/squid.conf
Tetapi sebelum di edit terlebih dahulu backup dulu file aslinya agar kalau rusak bisa dikembalikan ke default :
# cp /etc/squid/squid.conf /etc/squid/squid.conf.bak


2. Konfigurasi Squid
Selanjutnya konfigurasi script Squid :
# vim /etc/squid/squid.conf
Akan muncul file konfigurasi squid yang sangat panjang, berikut langkah-langkah yang harus diperhatikan….
a. HTTP Port : Merupakan port yang digunakan untuk menjalankan Squid
# http_port 3128
http_port 192.168.10.1:8080
#log dan error
access_log /var/log/squid/access.log squid
error_directory /usr/share/squid/errors
logfile_rotate 7

b. Visible Host Name : Agar jika terjadi error Squid dapat menemukan hostname yang valid
visible_hostname localhost
localhost bisa diganti menjadi ip (e.g 192.168.10.254) atau domain seperti proxykoe.com
c. Cache Manager : Untuk mendefinisikan email address dari Cache Manager Squid
cache_mgr admin@domain.com
d. Direktori Cache Squid : Mendefinisikan letak direktori squid beserta besarannya.
Angka 500 menunjukkan ukuran direktori dalam MB
Angka 16 menunjukkan jumlah sub direktori tingkat 1
Angka 256 menunjukkan jumlah subdirektori tingkat 2 dari subdirektori tingkat 1
Jumlah diatas makin besar makin baik
cache_dir ufs /var/spool/squid 500 16 256
e. Filtering : Ini merupakan bagian terpenting dari Squid, dengan ini kita bisa mngatur rule-rule, dari mulai siapa saja yang bisa mengakses internet sampai website apa yang diizinkan untuk di akses.

Access List (acl) : Siapa saja yang dapat mengakses Internet
acl all src all
acl manager proto cache_object
acl localnet src 192.168.10.1/255.255.255.0
#############################################################
### BANDWIDTH MANAJEMEN
##############################################################
acl admin src "/etc/squid/admin
acl situs url_regex "/etc/squid/situs"
acl download urlpath_regex "/etc/squid/download"
#################################################################
acl denied_domains dstdomain "/etc/squid/denied_domains.acl"

http_access allow manager localhost
http_access deny manager
# Only allow purge requests from localhost
http_access allow purge localhost
http_access deny purge
http_access allow localhost
http_access allow admin
http_access deny workhours denied_domains
http_access allow localnet
http_access deny all
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access allow CONNECT !SSL_ports

#delay pools 0, untuk bandwidth management
delay_pools 3
delay_class 1 1
delay_class 2 1
delay_class 3 1
#unlimitted access untuk admin
delay_parameters 1 -1/-1
delay_access 1 allow admin
delay_access 1 deny all
#pembatasan kecepatan akses untuk “situs” dimana kecepatan maksimum hanya 2kbps jika #besarnya situs lebih dari 64kB
delay_parameters 2 2000/64000
delay_access 2 allow situs
delay_access 2 deny all
#pembatasan kecepatan akses untuk “download” dimana kecepatan maksimum hanya 1kbps jika #besarnya download lebih dari 32kB
delay_parameters 3 1000/32000
delay_access 3 allow download
delay_access 3 deny all

keluar dari squid.conf dan menyimpan yang sudah dirubah dengan perintah
:wq


bagaimana dan apa saja yang membatasi akses sudah kita nyatakan perintahnya dan Access List,
acl admin src "/etc/squid/admin
maka yang pertama kita lakukan adalah membuat dan menuliskan apa saja yang dalam “admin”, dengan cara:
vim /etc/squid/admin

192.168.10.26
192.168.10.5
192.168.10.4
192.168.10.100
192.168.10.102
192.168.10.157
192.168.10.249
192.168.10.250
192.168.10.15
192.168.10.14

Keluar dan simpan, dengan perintah, :wq
Maka IP-IP di atas, adalah IP yang mendapat hak penuh sebagai admin.

acl situs url_regex "/etc/squid/situs"
-- vim /etc/squid/situs
gudangupload
easyshare
savefile
megaupload
share
boxing
tube
movie
facebook

Keluar dan simpan, dengan perintah, :wq

acl download urlpath_regex "/etc/squid/download", diedit dengan perintah:
vim /etc/squid/download, dan dituliskan
./doc$
./exe$
./pdf$
./xls$
./docx$
./mpeg$
./tar.gz$
./tar.bz2$
./mp3$
./jpg$
./jpeg$


Keluar dan simpan, dengan perintah, :wq

IP Forwarding, agar transparent proxy dapat diterapkan, maka kita harus mengaktifkan Ip Forwarding dengan memberikan nilai 1 pada file “/proc/sys/net/ipv4/ip_forward” dengan cara :

# echo 1 > /proc/sys/net/ipv4/ip_forward

Tetapi perintah tersebut harus kita jalankan auto startup, agar jika komputer squid mati kita tidak perlu repot2 menjalankan perintah tersebut secara terus menerus.
Berikutnya kita harus menjalankan ip_tables agar client dapat meredirect port squid server kita dengan perintah :

# iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 8800

Kemudian restart proxy dengan perintah :
# /etc/init.d/squid restart

Senin, 03 Mei 2010

Langkah compile kernel di ubuntu

langkah - langkah update kernel ;
- sebelum melakukan konfigurasi dibawah ini, update dahulu ubuntu nya :
$sudo apt-get update

- setelah diupdate lakukan konfigurasi dibawah ini :
1. pertama kali anda siapkan dulu paket-paket yang dibutuhkan
$ apt-get install kernel-package libncurses5-dev build-essential fakeroot

2. download paketnya Ubuntu dari kernel.org
kemudian extract source kernel (file extract nya disimpan di home aja biar mudah)
$ tar -jxf linux-2.6.16.13.tar.bz2

$ cd linux-2.6.16-13
3. gunakan konfigurasi itu pada kernel yang baru. Sebagai contoh anda mau menggunakan
konfigurasi dari kernel yang ada di /boot/config-2.6.31-14-386. Tinggal copy saja:
$ cp /boot/config-2.6.31-14-14-386 ./.config
4. Setelah itu jalankan perintah berikut untuk menyesuaikan konfigurasi yang lama dengan
konfigurasi yang baru, karna di kernel baru biasanya ada tambahan modul-modul baru.
$ make oldconfig

setelah itu akan ditanya modul-modul yang baru, untuk amannya sih tekan enter

5. Setelah itu lakukan konfigurasi dibawah ini
$ make menuconfig

6. kemudian compile kernel yang baru dengan perintah berikut:
$ fakeroot make-kpkg –initrd –bzimage kernel_image

7. setelah berhasil meng-compile kernel anda sendiri. Sekarang tinggal install :
$sudo dpkg -i kernel-image-2.6.15_10.00.Custom_i386.deb
(kalau error lihat di synaptic package manager, search kernel-image jika sudah ada berarti
kernel-image sudah terinstall)

8. selesai, restart ubuntu nya.

Senin, 19 April 2010

Add user/organization unit/group pada windows 2003 server

1. untuk membuat organizational unit.
-all program -> active directory users and computers -> klik kanan pada alamat domain
misal "yuda.com" -> new -> organizational unit


-menambahkan group dalam organizational unit. klik kanan pada OU yang dibuat -> new -> group

group scope pilih yang "global" n group type pilih"security"
2. menambahkan user dalam domain server kita.
-sama dengan langkah awal saat buat OU tapi kita klik kana -> new -> users

selesai sudah. met mencoba.

Setting client pada domain controler

1. Selanjutnya yang perlu diseting adalah di computer client, buka control panel -> system -> pilih tab computer name -> change

-Nah disinilah kita masukan DNS kita yang di windows 2003 server, misal yuda.com, klik OK
dan abaikan comment OK saja

2. selesai, computer client telah masuk dan dapat menalankan administrator di windows
server
.

Installasi Active Directory di windows 2003 server

1. ketikkan di run command "dcpromo", ok


- kemudian akan muncul tampilan wizzard dari windows 2003 server, ikuti aja step2 nya.


2. Pilih next ajah tar muncul Domain Controler Type wizard, pilih aja yang pertama artinya
bikin domain baru dan di system kita belum ada sama sekali. Next


3. Kita akan masuk ke create new domain wizard, kita pilih tab "domain in a new forest" next.


4. masuk ke wizard selanjutnya misal : yuda.com


5. pada tampilan "DNS registration diagnostics" maka pilih tab yang tengah. Artinya menyetting DNS server kita


6. isi password administrator account yang kita buat (password campuran dari angka,huruf, n karakter)

- next aja.


7. Nah pas ini kita masukan aja cd iso bootable dari windows server 2003, atau kita bisa skip perintah dia atas, tunggu sampai ada tampilan di bawah ini :




8. selesai n finish.

Kamis, 08 April 2010

Telnet di windows7

Gimana sich setting telnet di windows7 n' gunainnya ?
disini nich langkahnya :

1. setting dahulu TCP/IPv4 LAN atau wireless nya


2. masuk control panel pilih program and features


3. pilih turn windows features on or off


4. pilih telnet client dan telnet server, kemudian diaktifkan


5. jika sudah, masuk ke cmd dan ketikkan "telnet ip address target"


6. muncul tampilan dibawah ini, kemudian ketikkan "n"


7. setelah masuk, ketikkan login (username target) dan password nya


8. berhasil masuk ke user target


9. ketikkan "dir" untuk melihat isi directory dari user epueu


10. ulangi dengan ketikkan "d:" untuk masuk ke directory d user epueu


ok selesai . . . selamat mencoba!!!!!

Langkah-langkah remote dekstop connection di windows7

Langkah - langkah dalam melakukan remote dekstop lewat RDC :
1. setting terlebih dahulu TCP/IPv4 LAN/wireless


2. setting firewall, masuk control panel dan pilih windows firewall

turn of firewall

3. kemudian pilih "allow a program or feature through windows firewall"

centang pada remote dekstop dan hlangi centang pada remote assistance

4. kemudian, masuk control panel dan pilih system dan klik remote setting

centang pada remote assistance

5. ping ip target lewat cmd

jika reply berarti tersambung ke pc/laptop target


6. setting remote dekstop connection


- muncul tampilan dibawah ini

masukan nama computer (computer) dan username computer target (user name)

- klik connect



7. muncul tampilan "lepi-remote dekstop connection"

isi password sesuai dengan yang digunakan target saat log in ke windows


8. hasil remote dekstop yang berhasil masuk ke windows target