Rabu, 18 Januari 2017

Konfigurasi Server Linux Debian


            A.    Routing
Mengkonfigurasi IP Address server
harditkj:~# nano /etc/network/interfaces
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
   address 100.100.100.6
   netmask 255.255.255.0
   network 100.100.100.0
      broadcast 100.100.100.255
   gateway 100.100.100.1
   # dns-* options are implemented by the resolvconf package, if installed
      dns-nameservers 100.100.100.1
   dns-search harditkj.net
auto eth1
iface eth1 inet static
   address 192.168.6.1
   netmask 255.255.255.0
   network 192.168.6.0
   broadcast 192.168.6.255
Mengkonfigurasi NAT dari rc.local dengan menambahkan
iptables -t nat -A POSTROUTING -j MASQUERADE atau
iptables -A POSTROUTING -t nat -o eth0 -J MASQUERADE sebelum kata exit 0
harditkj:~# nano /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any   other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
iptables -t nat -A POSTROUTING -j MASQUERADE        --pilih salah satu--
iptables -A POSTROUTING -t nat -o eth0 -J MASQUERADE --pilih salah satu--
exit 0


#Tambahkan script di network option
#harditkj:~# nano /etc/network/option
#ip_forward = yes
#spoofprotect = yes
#syncookies = no
Menghilangkan tanda #
harditkj:~# nano /etc/sysctl.conf
#net.ipv4.ip_forward=1
Merestart konfigurasi yang telah di buat tadi.
harditkj:~# /etc/init.d/networking restart
Reconfiguring network interfaces...done.
               B.    DHCP
Masukkan DVD debian terlebih dahulu untuk penginstallan dhcp. Lalu masukan perintah yang tercetak tebal
harditkj:~# apt-get install dhcp3-server
harditkj:~# nano /etc/dhcp3/dhcpd.conf
# A slightly different configuration for an internal subnet.
subnet 192.168.6.0 netmask 255.255.255.224 {
range 192.168.6.2 192.168.6.24;
option domain-name-servers 4.4.4.4,192.168.6.1;
option domain-name "harditkj.net";
option routers 192.168.6.1;
option broadcast-address 192.168.6.254;
default-lease-time 600;
max-lease-time 7200;
harditkj:~# nano /etc/default/dhcp3-server
INTERFACES="eth1"
harditkj:~# /etc/init.d/dhcp3-server restart
                C.    DNS
Masukkan perintah yang tercetak tebal dan ikuti langkah-langkahnya.
harditkj:~# apt-get install bind9
harditkj:~# nano /etc/bind/named.conf
zone "localhost" {
   type master;
   file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
   type master;
   file "/etc/bind/db.127";
};
zone "harditkj.net" {
   type master;
   file "/etc/bind/db.harditkjnet.zone";
};
zone "6.168.192.in-addr.arpa" {
   type master;
   file "/etc/bind/db.harditkjnet.rev";
};
harditkj:~# cd /etc/bind
harditkj:/etc/bind# cp db.local db.harditkjnet.zone
harditkj:/etc/bind# cp db.127 db.harditkjnet.rev
harditkj:/etc/bind# cd
harditkj:~# nano /etc/bind/db.harditkjnet.zone
;
; BIND data file for local loopback interface
;
$TTL   604800
$ORIGIN harditkj.net.
@      IN     SOA    ns.harditkj.net. admin.harditkj.net. (
                            2        ; Serial
                       604800        ; Refresh
                        86400        ; Retry
                      2419200        ; Expire
                    604800 )      ; Negative Cache TTL
;
@       IN    NS     ns.harditkj.net.
@      IN     MX     10 mail.harditkj.net.
ns      IN    A      192.168.6.1
server  IN    CNAME   ns
www    IN     CNAME   ns
mail   IN     CNAME   ns
ftp    IN     CNAME   ns
proxy   IN    CNAME   ns
secure  IN    CNAME   ns
@      IN     AAAA   ::1
harditkj:~# nano /etc/bind/db.harditkjnet.rev
;
; BIND reverse data file for local loopback interface
;
$TTL   604800
@      IN     SOA    ns.harditkj.net. admin.harditkj.net. (
                            1        ; Serial
                       604800        ; Refresh
                        86400        ; Retry
                      2419200        ; Expire
                    604800 )      ; Negative Cache TTL
;
@       IN    NS     ns.harditkj.net.
1      IN     PTR    192.168.6.1.
harditkj:~# /etc/init.d/bind9 restart
harditkj:~# nano /etc/resolv.conf
search harditkj.net
nameserver 192.168.6.1
nameserver 127.0.0.1
harditkj:~# nslookup
> set type=any
> harditkj.net
Server:       192.168.6.1
Address:      192.168.6.1#53
harditkj.net has AAAA address ::1
harditkj.net
   origin = ns.harditkj.net
   mail addr = admin.harditkj.net
   serial = 2
   refresh = 604800
   retry = 86400
   expire = 2419200
   minimum = 604800
harditkj.net nameserver = ns.harditkj.net.
harditkj.net mail exchanger = 10 mail.harditkj.net.
> exit
               D.    HTTP (Web Server)
harditkj:~# apt-get install apache2 mysql-server mysql-client php5 php5-mysql
harditkj:~# /etc/init.d/mysql restart
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
harditkj:~# mysql -u root -p
Enter Password :
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 28
Server version: 5.0.51a-24+lenny1 (Debian)
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> use mysql;
Database changed
mysql> INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv) VALUES ('localhost','harditkj',PASSWORD('qwerty'),'Y','Y','Y','Y','Y','Y');
mysql> flush privileges;
mysql> exit;
harditkj:~# nano /etc/php5/apache2/php.ini
#extension=msql.so
extension=mysql.so
harditkj:~# cd /etc/apache2/sites-available
harditkj:/etc/apache2/sites-available# cp default harditkjnet
harditkj:/etc/apache2/sites-available# cd
harditkj:~# nano /etc/apache2/sites-available/harditkjnet
<VirtualHost *:80>
NameVirtualHost 192.168.6.1:80
   ServerAdmin webmaster@harditkj.net
   ServerName www.harditkj.net
   DocumentRoot /var/www/harditkjnet
   <Directory />
   CustomLog /var/log/apache2/access.log combined
   ServerSignature On
=====TAMBAHAN UNTUK WEBMAIL=====
<VirtualHost*:80>
   ServerAdmin webmaster@harditkj.net
      ServerName mail.harditkj.net
   DocumentRoot /usr/share/squirrelmail
</VirtualHost>
harditkj:~# mkdir -p /var/www/harditkjnet
harditkj:~# mkdir -p /usr/lib/cgi-bin
harditkj:~# a2ensite harditkjnet
harditkj:~# a2dissite default
harditkj:~# /etc/init.d/apache2 restart
harditkj:~# nano /var/www/harditkjnet/info.php
<? phpinfo () ?>
harditkj:~# nano /var/www/harditkjnet/index.html
<html>
<head>
<title> HARDI TKJ</title>
</head>
<body>
   "This My Page http://www.harditkj.net/"
</body>
</html>
                E.    MAIL
harditkj:~# apt-get install postfix
harditkj:~# nano /etc/postfix/main.cf
myhostname = mail.harditkj.net
mydomain = harditkj.net                     <== tambahan
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $mydomain, localhost
home_mailbox = Maildir/                    <==tambahan
relayhost =
mynetworks = 127.0.0.0/8 192.168.6.0/29                 
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocol = all                      <==tambahan
harditkj:~# /etc/init.d/postfix restart
Stopping Postfix Mail Transport Agent: postfix.
Starting Postfix Mail Transport Agent: postfix.
harditkj:~# apt-get install courier-imap
harditkj:~# /etc/init.d/courier-imap restart
harditkj:~# apt-get install courier-pop
harditkj:~# /etc/init.d/courier-pop restart
                F.    Web MAIL (Squirrelmail)
harditkj:~# apt-get install squirrelmail
harditkj:~# nano /etc/apache2/apache2.conf
# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/
Include /etc/squirrelmail/apache.conf      <==tambhan
ServerName 192.168.6.1                          <== tambahan
harditkj:~# nano /etc/squirrelmail/apache.conf
Alias /webmail /usr/share/squirrelmail          <== diedit
harditkj:~# /usr/sbin/squirrelmail-configure
tekan 2
tekan 1
harditkj.net (Enter)
tekan A
tekan 4
harditkj.net (Enter)
tekan 8
courier (Enter)
tekan B
tekan 4
harditkj.net
tekan S
tekan Q
==membuat folder Maildir otomasi ketika create user==
harditkj:~# cd /etc/skel
harditkj:/etc/skel# maildirmake Maildir
harditkj:~# useradd admin -s /bin/false -m
harditkj:~# passwd admin
Enter new UNIX password: admin
Retype new UNIX password: admin
passwd: password updated successfully
               G.    Proxy
Debian : # apt-get install squid
Debian : # pico /etc/squid/squid.conf
1)    Tekan CTRL+W  à lalu ketikkan acl all  -- tambah dikata acl all src all dengan kata ::
Acl  lan src all
acl lan src 192.169.19.0/24               ( IP yang ke Klien )
acl blog dstdomain www.facebook.com
2)    Lalu tekan lagi CTRL+W à lalu ketik insert
Cari :: #http_access allow localnet
         http_access allow localhost
Ganti dan tambahkan menjadi seperti dibawah ini ::
acl blokdomain dstdomain www.facebook.com       (tidak diperlukan)
#http _access allow our_networks
http_access allow localhost
http_access deny blog
http_access allow lan  
# and finally deny all other access to this proxy
http_access deny blokdomain                     (tidak diperlukan)
http_access deny all
3)    Lalu tekan lagi CTRL+W à lalu ketik visible -- tambahkan : visible hostname www. smkn9solo.sch.id seperti dibawah ini ::
#default
#none
visible_hostname www.smkn9solo.sch.id                            
4)    Lalu tekan lagi CTRL+W à lalu ketik http port 3128 --Tambahkan kata transparent Seperti dibawah ini ::
http_port 3128 transparent
5)    Lalu tekan lagi CTRL+W à lalu ketik cache_mgr    -- Dihilangkan    # kemudian isikan alamat e-mail (guelo@yahoo.com)
6)    Lalu tekan lagi CTRL+W à lalu ketik cache_mem    -- Dihilangkan    # kemudian ganti 8 MB menjadi 16 ato 32 MB
7)    Tambahkan ip tables di “pico /etc/rc.local
Debian : # pico /etc/rc.local
iptables -t nat -A POSTROUTING -o eth0 -j MAQUERADE  -- pilih salah satu --
iptables -t nat -A POSTROUTING -j MASQUERADE                        -- pilih salah satu --
iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 80 -j REDIRECT --to-ports 3128   
8)  Lalu tekan lagi CTRL+W à lalu ketik cache_dir ufs -- Dihilangkan # di cache_dir ufs /cache 1600 4 256

Option pada cache_dir menentukan sistem penyimpanan seperti apa yang akan digunakan (ufs), nama direktori tempat penyimpanan cache (/cache), ukuran
disk dalam megabytes yang digunakan oleh direktori tempat penyimpanan cache (1600 Mbytes), jumlah subdirektori pertama yang akan dibuat di bawah /cache (4),
dan jumlah subdirektori kedua yang akan diciptakan di bawah subdirektori pertama tadi (256).
Nilai2 pada option cache_dir tadi harus disesuaikan dengan sistem yang anda miliki, biasanya yang harus disesuaikan hanyalah tempat penyimpanan cache, ukuran disk,
dan jumlah subdirektori yang akan dibuat. Mengenai angka2 tersebut, dapat kita peroleh dari rumus yang telah disediakan oleh Mas Devshed untuk optimasi sbb:
1. Gunakan 80% atau kurang dari setiap kapasitas cache direktori yang telah kita siapkan. Jika kita mengeset ukuran cache_dir kita melebihi nilai ini,
maka kita akan dapat melihat penurunan performansi squid.
2. Untuk menentukan jumlah subdirektori pertama yang akan dibuat, dapat menggunakan rumus ini:
x=Ukuran cache dir dalam KB (misal 6GB=~6,000,000KB) y=Average object size (gunakan saja 13KB)
z= Jumlah subdirektori pertama = (((x / y) / 256) / 256) * 2 = # direktori
Sebagai contoh, misal saya menggunakan 6 GB dari untuk /cache (setelah disisihkan 80% nya), maka:
6,000,000 / 13 = 461538.5 / 256 = 1802.9 / 256 = 7 * 2 = 14
maka baris cache_dir akan menjadi seperti ini: cache_dir ufs 6000 14 256
9)    Lalu tekan lagi CTRL+W à lalu ketik cache_log -- Dihilangkan # di Hilangkan tanda pagar pada cache_log dan cache_store_log ini digunakan untuk mengaktifkan cache proxy kita, dan juga berfungsi untuk melihat situs-situs apa yang dikunjungi client.
10)  maximum_object_size 1024 KB
11)  minimum_object_size 4 KB
12) tail -f /var/log/squid/access.log  ==> melihat client membuka situs apa saja.
          H.    Membatasi Bandwith
   # DELAYPOOL PARAMETERS
   #---------------------
   # ACCESS CONTROLL DELAY POOL
   acl limit1 src 200.200.10.3-200.200.10.60
   acl full1 src 200.200.10.61-200.200.10.65
   acl limit2 src 200.200.10.66-200.200.10.99
   acl full2 src 200.200.10.100-200.200.10.120
   acl limit3 src 200.200.10.121-200.200.10.254
   # JUMLAH POOL
   delay_pools 2
   # RULE POOL PERTAMA
   delay_class 1 1
   delay_parameters 1 -1/-1
   delay_access 1 allow akses1
   delay_access 1 allow akses2
   delay_access 1 allow akses3
   delay_access 1 deny all
   # RULE POOL KEDUA
   delay_class 2 1
   delay_parameters 2 30000/3000000
   delay_access 2 allow layouter
   delay_access 2 allow dhcp
   delay_access 2 deny all
   delay_initial_bucket_level 50

0 komentar:

Posting Komentar