Cara Forward Port Menggunakan Iptables

4 Articles

aeromantic

jaggedly

Posted by (720) 479-4535 on

Apasih iptables itu ?
IPTABLES adalah aplikasi firewall yang dibuat oleh netfilter.org digunakan untuk memblok atau mengijinkan sebuah jaringan lain untuk mengakses jaringan kita. Iptables yang berjalan mulai dari linux kernel 2.4.x sampai sekarang, proyek tersebut sudah membuat aplikasi ipchains untuk kernel 2.2.x dan aplikasi ipfwadm untuk kernel 2.0.x. Sebenarnya banyak banget kegunaan iptables, tapi saat ini saya cuma share cara buat port forwarding. hehehe..

Cara membuat port forward :

# vi /etc/sysctl.conf
Ganti “net.ipv4.ip_forward = 0” angka 0 diganti jadi “1”, biar enable.
# vi /proc/sys/net/ipv4/ip_forward
Ganti juga dari “0” jadi “1”. Kemudian menjalankan perintah IP Forwarding sebagai berikut.
# iptables -t nat [-command] PREROUTING [-p protocol] –dport [port yang diinginkan] -d [IP publik] -j DNAT –to-destination [ip_tujuan:port tujuan]
Setelah anda melakukan port forwarding, jangan lupa untuk perintah MASQUERADE-nya.
# iptables -t nat -A POSTROUTING -o [ethernet lokal] -j MASQUERADE

Studi Kasus :
Ada 2 server, Server A dan Server B. Server A punya 2 eth, eth0 IP Publik dan eth1 IP Private, sedangkan server B cuma ada 1 eth doang yaitu IP Private. Misalnya anda membuat web server di Server B, tetapi ingin web server itu diakses oleh publik, padahal di eth Server B tidak ada IP Public. Caranya bisa dengan menggunakan Port Forward.
Server A
———–
eth0 = 123.456.78.9
eth1 = 10.10.10.10

Server B
————
eth0 = 10.10.10.11

Port http :80
Port forward : 8080
Jadi menurut studi kasus di atas, untuk port forward nya :

# iptables -t nat -A PREROUTING -p tcp –dport 8080 -d 123.456.78.9 -j DNAT –to-destination 10.10.10.11:80
# iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Setelah anda buka lewat browser /123.456.78.9:8080 maka web yang akan di buka adalah web dari Server 2.
Work Lika a charm!!

Selamat Mencoba?

2766342476

Failover load balancing dengan nginx

Posted by wildan on

Load Balancing merupakan suatu mekanisme yang digunakan untuk distribusi lalu lintas data yang masuk ke server. Algoritma Round Robin pada NginX Load Balancing, digunakan untuk mengirimkan pengguna ke salah satu IP yang dusah ditentukan. Jadi jika terjadi banyak request dari user, maka server tidak terbebani.

Edit file nginx.conf

user              nginx;
worker_processes  1;
events {
    worker_connections  256;
}

upstream backend {
        server  123.45.67.89   weight=20       max_fails=1     fail_timeout=15s;
        server  123.45.67.98   weight=10       max_fails=3     fail_timeout=30s;
        sever    123.45.67.88;
        server   123.45.67.99;
        }

Kemudian edit bagian /etc/nginx/conf.d/default.conf
server {
    listen       80 default_server;
    server_name  _;

location ~ ^/(.*)$ {
            proxy_pass  /backend;
        }
error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
         root   html;
    }
}

Untuk tes nya, anda buka /etc/hosts, tambahkan line berikut :
xx.xx.xx.xx(IP Load Balanced)      testloadbalancer.com

Kemudian, pada browser anda, buka testloadbalancer.com. Setelah itu coba matikan server 1 anda, dan akan mengarah ke server 2.

Semoga berhasil?

2608888476

5592901024

Posted by 8022818052 on

Ada beberapa cara agar website kita aman dari para panjahat cyber, salah satunya mengamankan web server kita dengan menggunakan fitur iptables.
Berikut contoh rule iptables yang bisa digunakan untuk web server kita :

*filter

#  Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT

#  Accepts all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#  Allows all outbound traffic
#  You can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT

# Allows HTTP and HTTPS connections from anywhere (the normal ports for websites)
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT

#  Allows SSH connections (only 4 attempts by an IP every 3 minutes, drop the rest)
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --set --name DEFAULT --rsource
-A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m recent --update --seconds 180 --hitcount 4 --name DEFAULT --rsource -j DROP
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT

# Allow ping
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT

# log iptables denied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7

# Reject all other inbound - default deny unless explicitly allowed policy
-A INPUT -j REJECT
-A FORWARD -j REJECT

COMMIT
Linux

Install Glances monitoring di Centos 7

Posted by wildan on 6052445957

glancesGlances adalah salah satu monitoring tools yang pake bahasa python buatan dari nicolargo.

Untuk cara install Glances sebenarnya sudah ada di websitenya, ini saya lampirkan ulang untuk cara install Glances kalo komputer kalian menggunakan GNU/Linux distributions

# curl -L /bit.ly/glances | /bin/bash

Kemudian berikut cari install Glances kalo pake pip

# pip install glances

Setelah Glances selesai diinstall, kalian bisa membuat agar jadi start up memanfaatkan systemd yang ada di Centos 7.

# adduser glances -s /sbin/nologin

Kemudian buat file berikut

# vi /etc/systemd/system/glances.service
[Unit]
Description=Glances Service

[Service]
Type=simple
User=iperf
ExecStart=/usr/bin/glances -w
Restart=on-abort

[Install]
WantedBy=multi-user.target

Save file yang sudah dibuat.

Jalankan service Glances

# systemctl start glances

Enable Startup

# systemctl enable glances

Setelah semua selesai dilakukan, tinggal menjalankan Glances melalui browser kalian. Hasilnya seperti berikut

540-545-4023Selamat mencoba 😀