Penyelesaian UKK – TKJ (Paket 1) Linux



#apt-get install apache2 php5 php5-mysql mysql-server phpmyadmin bind9 squid3 proftpd-basic iptables-persistent

Didalam ini sudah termasuk

  1. webserver (apache)
  2. dns server (bind)
  3. database server (saya menggunakan maria-db support mysqli)
  4. php server (php5)
  5. configurasi GUI database server (phpmyadmin)
  6. proxy server (squid3)
  7. ftp server(proftpd)
  8. firewall (iptables)

Sesuai soal paket 1..

Konfigurasi /etc/network/interfaces

# nano /etc/network/interfaces

Syarat membangun router, minimal mempunyai 2 interface ethernet
ethernet 0 > interface yang terhubung ke internet
ethernet 1 > interface yang terhubung ke jaringan lokal

 

#interface yang tehubung ke internet

auto eth0
iface eth0 inet dhcp

#interface yang tehubung ke jaringan lokal
auto eth1
iface eth1 inet static
address 192.168.100.1
netmask 255.255.255.128

#ip virtual untuk eth1:0 > proxy server
auto eth1:0
iface eth1:0 inet static
address 192.168.55.1
netmask 255.255.255.0

 

Di asumsikan ip address yang diberikan ISP adalah ip address dynamic.
Kemudian kita harus mengaktifkan agar debian menjadi mode router..
Konfigurasi debian agar menjadi mode router

# nano /etc/sysctl.conf
net.ipv4.ip_forward=1

Akan tetapi, client ip address ether2 yang beralamat 192.168.100.0/25 tidak dapat mengakses ke internet. Sebagaimana kita tahu, bahwa untuk berkomunikasi ke internet kita harus melakukan konfigurasi nat (network address translation).

Konfigurasi NAT agar client dapat mengakses internet

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Kemudian kita simpan agar hilang ketika mesin di restart

#iptables-save > /etc/iptables/rules.v4

Note : dapat disepekati
http://sekolah.sch.id     : 192.168.100.1
http://smkbisa.com        : 192.168.55.1

 

Konfigurasi /etc/bind/named.conf.local

zone “sekolah.sch.id” {
type master;
file “/etc/bind/db.sekolah”; };

zone “smkbisa.com” {
type master;
file “/etc/bind/db.smkbisa”; };

zone “100.168.192.in-addr.arpa” {
type master;
file “/etc/bind/db.192”; };

Salin file db.local menjadi sekolah

#cp /etc/bind/db.local /etc/bind/db.sekolah

 

Salin file db.local menjadi smkbisa

#cp /etc/bind/db.local /etc/bind/db.smkbisa

 

Salin file db.127 menjadi 192

#cp /etc/bind/db.127 /etc/bind/db.192

 

Konfigurasi /etc/bind/db.sekolah

# nano /etc/bind/db.sekolah

 

;
; BIND data file for local loopback interface
;
$TTL  604800
@  IN  SOA  sekolah.sch.id. root.sekolah.sch.id. (
            2    ; Serial
       604800    ; Refresh
        86400    ; Retry
      2419200    ; Expire
       604800 )  ; Negative Cache TTL
;

@  IN  NS  sekolah.sch.id.
@  IN  A  192.168.100.1
ftp  IN  A  192.168.100.1
www  IN  A  192.168.100.1

 

Konfigurasi /etc/bind/db.smkbisa

# nano /etc/bind/db.smkbisa

 

;
; BIND data file for local loopback interface
;
$TTL  604800
@  IN  SOA  smkbisa.com. root.smkbisa.com. (
            2    ; Serial
       604800    ; Refresh
        86400    ; Retry
      2419200    ; Expire
       604800 )  ; Negative Cache TTL
;

@  IN  NS  smkbisa.com.
@  IN  A  192.168.55.1
www  IN  A  192.168.55.1

 

Konfigurasi /etc/bind/db.192

# nano /etc/bind/db.192

 

;
; BIND reverse data file for local loopback interface
;

$TTL  604800
@  IN  SOA  sekolah.sch.id. root.sekolah.sch.id. (
            1    ; Serial
       604800    ; Refresh
        86400    ; Retry
      2419200    ; Expire
       604800 )  ; Negative Cache TTL
;
@    IN  NS   sekolah.sch.id.
@    IN  NS   smkbisa.com.
1    IN  PTR  sekolah.sch.id.
1    IN  PTR  smkbisa.com.

 

Konfigurasi /etc/bind/named.conf.options

# nano /etc/bind/named.conf.options

 

options {
directory “/var/cache/bind”;
forwarders {
192.168.1.1
202.134.1.10;
202.134.0.55;
};
#dnssec-validation auto; //bawaan nya auto
dnssec-validation no; //

auth-nxdomain no;    # conform to RFC1035
listen-on-v6 { any; };
};

 

Konfigurasi NAT memaksa agar semua paket yang berasal dari interface eth1 dengan port 53 (layanan domain) akan di belokan paksa ke dns server (bind)

#iptables -t nat -A PREROUTING -i eth1 -p udp –dport 53 -j REDIRECT –to-port 53

 

Kemudian kita simpan agar tidak hilang ketika mesin di restart

#iptables-save > /etc/iptables/rules.v4

 

Pastikan tidak ada kesalahan configurasi bind9

#named-checkconf –z

 

# /etc/init.d/bind restart

 

Konfigurasi /etc/resolv.conf

nameserver 192.168.100.1
nameserver 192.168.55.2
nameserver 202.134.1.10
nameserver 202.134.0.155

Sampai langkah ini,
pastikan nslookup sekolah.sch.id  > berhasil

# nslookup sekolah.sch.id

pastikan nslookup smkbisa.com    > berhasil

# nslookup smkbisa.com

Kita buat 2 folder berbeda untuk dua domain yaitu sekolah dan smkbisa

#mkdir /var/www/sekolah
#mkdir /var/www/smkbisa

 

Kita salin file 000-default.conf menjadi sekolah.conf dan smkbisa.conf

#cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/sekolah.conf
#cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/smkbisa.conf

 

Kita Konfigurasi sekolah /etc/apache2/sites-available/sekolah.conf

# nano /etc/apache2/sites-available/sekolah.conf

 

<VirtualHost *:80>
  ServerAdmin admin@sekolah.sch.id
  ServerName sekolah.sch.id
  ServerAlias http://www.sekolah.sch.id
  DocumentRoot /var/www/sekolah

<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

 

Kita configurasi smkbisa /etc/apache2/sites-available/smkbisa.conf

# nano /etc/apache2/sites-available/smkbisa.conf

 

<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  ServerName smkbisa.com
  ServerAlias http://www.smkbisa.com
  DocumentRoot /var/www/smkbisa
  <Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

 

Selanjutnya aktifkan konfigurasi web sekolah.conf dan smkbisa.conf

#a2ensite sekolah.conf
#a2ensite smkbisa.conf

Jangan lupa melakukan nonaktif konfigurasi default web

# a2dissite 000-default.conf

Selanjutnya lakukan installasi wordpress dan content management system.

  • sekolah.sch.id   = wordpress
  • smkbisa.com      = cms balitbang

Lakukan restart layanan apache dengan perintah berikut :

# service apache2 restart

 

Lakukan upload file cms dengan layanan ftp, menggunakan aplikasi ftp-client seperti : winscp atau filezilla, secara default file konfigurasi tersimpan pada direktori home user copy kedua file tersebut dengan perintah berikut :

# cp /home/user/wordpress.zip /var/www/sekolah
# cp /home/user/cmsbalitbang.zip /var/www/smkbisa

 

Untuk melakukan ekstrak kedua file diatas yang berekstensi zip, kita memerlukan sebuah paket yang bernama zip, lakukan installasi dengan perintah berikut :

# apt-get install zip

 

Selanjutnya lakukan ekstrak dengan perintah berikut :

# unzip /var/www/sekolah/wordpress.zip
# unzip /var/www/smkbisa/cmsbalitbang.zip

Pindahkan file dari direktori wordpress ke direktori web

# cp –R  /var/www/sekolah/wordpress/* /var/www/sekolah/
# cp –R  /var/www/smkbisa/cmsbalitbang/* /var/www/smkbisa

 

Lakukan perubahan akses permission terhadap file hasil ekstrak tersebut

# chmod 777 –R /var/www/sekolah
# chmod 777 –R /var/www/smkbisa

 

Lakukan pembuatan database untuk web sekolah dan smkbisa dengan perintah berikut :

# mysql –u root –p
mysql> create database sekolah;
mysql> create database smkbisa;

 

 

INSTALASI DAN KONFIGURASI PROXY SERVER
Install proxy server

#apt-get install squid3

Konfigurasi NAT memaksa agar semua paket yang berasal dari interface eth1 dengan port 80 akan di belokan paksa ke squid

#iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 3128
#iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 443 -j REDIRECT –to-port 3128

 

Kita bisa lihat hasil iptables yang berada di NAT beserta counter packet nya

#iptables -t nat –vL

Chain PREROUTING (policy ACCEPT 359 packets, 28153 bytes)
 pkts bytes target     prot opt in     out     source               destination
  158  8136 REDIRECT   tcp  —  eth1   any     anywhere             anywhere             tcp dpt:http redir ports 3128
Chain INPUT (policy ACCEPT 429 packets, 26928 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 549 packets, 39656 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 48 packets, 2840 bytes)
 pkts bytes target     prot opt in     out     source               destination
  589 46177 MASQUERADE  all  —  any    eth0    anywhere             anywhere

 

Kemudian kita simpan agar tidak hilang ketika mesin di restart

#iptables-save > /etc/iptables/rules.v4

 

Konfigurasi /etc/squid3/squid.conf

# nano /etc/squid3/squid.conf

Rule blok situs, letakan paling atas

acl bloksitus url_regex –i “/etc/squid3/urlblok.txt”
acl blokdomain dstdomain “/etc/squid3/blokdomain.txt”
http_access deny bloksitus
http_access deny blokdomain

visible_hostname sekolah.sch.id
acl client src 10.0.0.0/8
acl client src 172.16.0.0/12
acl client src 192.168.0.0/16
acl client src 192.168.100.0/25
http_access allow client
http_port 3128 transparent

 

Carilah baris http_access deny all, dengan perintah (Ctrl + W) dan berikan tanda hash / tagar (#)

 

Kita buat daftar situs yang ingin di blokir

#nano /etc/squid3/urlblok.txt

pokemongo.com

 

# nano /etc/squid3/blokdomain.txt
http://www.pokemongo.com
http://pokemongo.com

 

Kita bangun kembali stuktur folder baru sesuai tipe directory

#squid3 –z

 

Kita cek jika ada configurasi squid3 yang salah

#squid3 -k parse

 

Kita restart squid3

# /etc/init.d/squid3 restart 


KONFIGURASI FTP SERVER

 

Installasi layanan FTP Server

# apt-get install proftpd

 

Konfigurasi /etc/proftpd/proftpd.conf

# nano /etc/proftpd/proftpd.conf

 

<Anonymous /home/anonymous>
User ftp
Group nogroup
UserAlias anonymous ftp
DirFakeUser  on ftp
DirFakeGroup  on ftp
RequireValidShell  off
MaxClients  10
DisplayLogin  welcom.msg
DisplayChdir  .message
</Anonymous>

 

Pastikan nama /etc/hostname komputer anda harus sama dengan nama yang ada di /etc/hosts

root@server-ukk:~# cat /etc/hostname
server-ukk

 

root@server-ukk:~# cat /etc/hosts
127.0.0.1       localhost
192.168.100.1    server-ukk

Kita restart proftpd

# /etc/init.d/proftpd restart

Catatan : pastikan proftpd benar2 running

Jika sudah selesai, untuk menguji di browser mozila/google chrome

ftp://sekolah.sch.id

 

Sudah di ujicoba pada  > Debian Server versi 8.7.1 (i386)

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s