25 Aturan Penggunaan IPtables Firewall pada Linux yang harus kalian ketahui
25 Aturan Penggunaan IPTables Firewall
Mengelola lalu lintas jaringan merupakan salah satu pekerjaan
terberat yang harus berurusan dengan sistem Adminstrator. Si Admin itu
sendiri harus mengkonfigurasi Firewall dengan sedemikian rupa untuk
menjaga koneksi keluar masuk jaringan dengan mestinya dan sistem yang di
buat tidak rentan terhadapat serangan yang berada di dunia maya.
A. PENGERTIAN
Disinilah iptables berguna, Iptables adalah firewall Linux dalam
baris perintah yang memungkinkan administrator sistem untuk mengatur
lalu lintas keluar masuk melalui seperangkat aturan dalam tabel yang
dikonfigurasi.
Per penggunaan iptables, saat ini ada 3 jenis tabel :
1. Filter adalah table default, yang berisi dibangun dalam rantai untuk :
- INPUT : paket yang ditujukan untuk soket lokal
- FORWARD : paket yang disalurkan melalui sistem
- OUTPUT : paket lokal yang dihasilkan
2. NAT adalah tabel yang berkondultasi ketika sebuah paket mencoba membuat koneksi baru. Berikut ini perintah pendukungnya :
- PREROUTING : digunakan untuk mengubah koneksi yang masuk
koneksi ini akan di proses di dalam router, bisa proses pembelokan ke
proxy external, bisa filtering port, bisa apa aja deh, pokoknya ada
proses, nah prerouting itu menandai koneksi sebelum terjadi proses
tersebut.
- OUTPUT : digunakan untuk mengubah peket data yang dihasilkan.
- POSTROUTING : digunakan untuk perubahan paket yang keluar.
3. MANGLE adalah tabel yang digunakan untuk paket pengubah namun
beberapa sumber yang saya baca mangle itu seperti memberi tanda pada
suatu paket yang diproses selanjutnya jadi seperti penanda saja mangle
itu.
Sampai kernel 2.4 ini tabel ini memiliki 2 rantai namun sekarang bertambah menjadi 5 rantai tabel :
- PREROUTING
- OUTPUT
- INPUT
- POSTROUTING
- FORWARD
Pada postingan saya hari ini, sobat akan melihat beberapa
perintah yang berguna yang akan membantu anda mengelola firewall sobat
menggunakan iptabless.
B. LATAR BELAKANG
Kenapa sih menggunakan IP Tables ? karena sintak IP tables yang
sederhana namun hasil dari perintahnya jangan diragukan meskipun hanya 1
baris namun efeknya itu sangatlah fatal.
C. MAKSUD DAN TUJUAN
Tujuannya penggunaan IPTables itu yang dengan mudah
dikonfigurasi juga hasilnya yang memuaskan, untuk tujuannya ini saya
(Admin) akan memulai dengan perintah sederhana agar mudah dipahami dan
pergi yang lebih kompleks sampai akhir.
D. JANGKA DAN WAKTU KEGIATAN
Untuk memahami apa itu IPTables dan bentuk konfigurasinya cukup lumayan 1/2 hari untuk mencobanya juga.
E. ALAT DAN BAHAN
1. Laptop
2. Koneksi internet untuk memahami perintah-perintahnya
F. TAHAPAN PELAKSANAAN KEGIATAN
1. Start / Stop / Restart Firewall Iptables
Pertama, kita harus tau bagaimana mengelola layanan IPTables di distribusi Linux yang berbeda. Hal ini cukuplah mudah :
Pada Distribusi Linux Berbasis systemd
------------ On Cent/RHEL 7 and Fedora 22+ ------------
#systemctl start iptables
#systemctl stop iptables
#systemctl restart iptables
#systemctl start iptables
#systemctl stop iptables
#systemctl restart iptables
Pada Distribusi Linux Berbasis SysVinit
------------ On Cent/RHEL 6/5 and Fedora ------------
#/etc/init.d/iptables start
#/etc/init.d/iptables stop
#/etc/init.d/iptables restart
#/etc/init.d/iptables start
#/etc/init.d/iptables stop
#/etc/init.d/iptables restart
2. Periksa semua Aturan Firewall Iptables
Jika anda sudah mengkonfigurasi IPTables dan ingin memeriksa aturan yang ada, gunakan perintah perintah berikut untuk melihat :
#iptables -L -n -v
Ini merupakan contoh hasil dari ouput pada konfigurasi IPTables
---- Tampilan dari Tabel INPUT ----
|| Chain INPUT (policy ACCEPT 1129K packets, 415M bytes)
|| pkts bytes target prot opt in out source destination
|| 0 0 ACCEPT tcp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
|| 0 0 ACCEPT udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
|| 0 0 ACCEPT tcp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
|| 0 0 ACCEPT udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
|| pkts bytes target prot opt in out source destination
|| 0 0 ACCEPT tcp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:53
|| 0 0 ACCEPT udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:53
|| 0 0 ACCEPT tcp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:67
|| 0 0 ACCEPT udp -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
---- Tampilan dari Tabel FORWARD ----
|| Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
|| pkts bytes target prot opt in out source destination
|| 0 0 ACCEPT all -- * lxcbr0 0.0.0.0/0 0.0.0.0/0
|| 0 0 ACCEPT all -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0
|| pkts bytes target prot opt in out source destination
|| 0 0 ACCEPT all -- * lxcbr0 0.0.0.0/0 0.0.0.0/0
|| 0 0 ACCEPT all -- lxcbr0 * 0.0.0.0/0 0.0.0.0/0
---- Tampilan dari Tabel OUTPUT ----
|| Chain OUTPUT (policy ACCEPT 354K packets, 185M bytes)
|| pkts bytes target prot opt in out source destination
|| pkts bytes target prot opt in out source destination
Jika anda memilih untuk memeriksa konfigurasi anda untuk tabel tertentu, Anda dapat menggunakan perintah -t opsi diikuti oleh tabel yang anda ingin periksa. Misalnya, untuk memeriksa aturan dalam NAT tabel, anda dapat menggunakan perintah :
#iptables -t nat -L -v -n
3. Blokir khusus IP Address pada Firewall Iptables
Jika anda menemukan ada alamat IP yang mencurigakan atau alamat IP asing
di dalam IPTables ini anda bisa untuk memblokir alamat IP tersebut demi
keamanan sistem yang anda bangun dengan memasukkan perintah seperti
berikut :
#iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP
Dimana anda hanya perlu merubah "xxx.xxx.xxx.xxx" dengan alamat
IP yang ingin anda blokir. Berhati-hatilah ketika menjalankan perintah
ini karena nantinya malahan anda sendiri yang terblokir IPnya. Opsi atau
sintak -A merupakan setiap paket akan diterima oleh firewall dan akan diteruskan ke tujuan.
4. Membuka Blokir IP Address di Firewall Iptables
Jika anda telah memutuskan bahwa anda tidak lagi ingin memblokir Alamat
IP yang telah anda blokir tadi, anda dapat menghapus pengaturan
pemblokiran dengan perintah seperti berikut :
#iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP
Dimana opsi -D merupakan sintak untuk menghapus rantai aturan yang dipilih. D itu merupakan sintak dari perintah Delete anda harus menggunakan huruf D besar di karenakan jika anda menggunakan perintah d kecil artinya sintaknya sudah berbeda.
5. Memblokir Port khusus pada Firewall Iptables
Terlintas di pikiran kalian ingin memblokir port masuk agar sistem yang
anda bangun menjadi lebih aman, karena jika terdapat banyak port yang
terbuka nanti sistem anda akan menjadi bahan sasaran dari Hacker untuk
masuk pada sistem yang anda bangun. Di karenakan untuk memblokir situs
ini sangatlah penting.
Untuk memblokir koneksi keluar pada penggunaan port tertentu :
#iptables -A OUTPUT -p tcp --dport xxx -j DROP
Untuk mengijinkan koneksi keluar pada penggunaan port tertentu :
#iptables -A OUTPUT -p tcp --dport xxx -j ACCEPT
Dimana kedua contoh diatas anda perlu merubah "xxx" dengan
port yang ingin anda Blokir atau Ijinkan. Jika anda ingin merubah lali
lintas UTP anda tinggal merubahnya dengan UDP dalam aturan iptables diatas.
6. Mengizinkan Beberapa Port pada Iptables menggunakan Multiport
Biasanya kan anda mana mungkin sih menggunakan 1 port untuk digunakan
beramai-ramai ? Nah pada konfigurasi Iptables ini anda bisa mengizinkan
beberapa por sekaligus dengan menggunakan multiport. Dibawah ini
merupakan aturannya :
#iptables -A INPUT -p tcp -m multiport --dports 22,80,443 -j ACCEPT
#iptables -A OUTPUT -p tcp -m multiport --sports 22,80,443 -j ACCEPT
#iptables -A OUTPUT -p tcp -m multiport --sports 22,80,443 -j ACCEPT
7. Mengizinkan beberapa range network untuk mengakses Port tertentu di Iptables
Tidak mungkin lah jika kita harus konfigurasi 1 per 1 untuk memasukkan
Alamat IP yang di perbolehkan mengakses suatu port tertentu, pastinya
capek bukan ? Nah disini kita bisa memberikan range untuk nantinya
jaringan yang ada pada range tersebut bisa mengakses atau tidak pada
port yang di tentukan.
Katakanlah anda ingin mengizinkan port 22 yaitu ssh untuk jaringan
192.168.1.0/24. Anda hanya perlu melakukan perintah seperti berikut :
#iptables -A OUTPUT -p tcp -d 192.168.1.0/24 --dport 22 -j ACCEPT
Dimana anda bisa mengganti ACCEPT menjadi DROP jika anda ingin memblokir network tersebut untuk mengakses ssh pada port 22.
8. Memblokir situs pada Firewall Iptables
Pada kegiatan disini saya akan memblokir situs Sosial Media terkenal di
Dunia yaitu Facebook. Buat anda yang sebagai Admin ingin client-nya
tidak facebook'an mulu anda juga bisa menerapkan sistem ini pada
Iptables yang kalian pasang.
Catatan : Nanti anda akan di omelin karena hidup mereka hampa tanpa adanya facebook wkwkwk :v
Pertama temukan alamat IP yang digunakan oleh Facebook :
#host facebook.com
#whois "ip dari facebook.com" | grep CIDR
Kemudian anda dapat memblokir jaringan facebook dengan memasukkan perintah seperti berikut :
#iptables -A OUTPUT -p tcp -d 69.171.224.0/29 -j DROP
Perlu diingat bahwa alamat IP yang digunakan facebook dapat bervariasi di negara-negara di Dunia ini.
9. Pengaturan Port Forwarding di Iptables
Kadang-kadang anda memungkin ingin meneruskan lalu lintas satu layanan
untuk port lainnya. Anda dapat mengkonfigurasi dengan memasukkan
perintah :
#iptables -t nat -A PREROUTING -i eth0 -p tcp dport 25 j REDIRECT -to-port 2525
Perintah diatas meneruskan semua lalu lintas data yang masuk pada
jaringan interface eth0, dari port 25 menuju port 2525. Anda dapat
mengubah portnya sesuai apa yang anda inginkan atau butuhkan.
10. Memblokir network yang membanjiri port Web Server di Iptables.
Kadang-kadang banyak client yang mengirimkan banyak permintaan koneksi
pada port Web Server yaitu 80, client bisa membanjiri port tersebut dan
bisa membuat Web yang kita buat menjadi Error akibat permintaan Client
yang berlebihan atau biasa disebut flood. Untuk mencegah itu anda bisa
menggunakan perintah berikut :
#iptables -A INPUT -p tcp --dport 80 -m limit --limit 100/minute --limit-burst 200 -j ACCEPT
Perintah diatas membatasi koneksi masuk dari per-menit ke 100 dan menetapkan batas sampai 200. Anda bisa mengedit pembatasan dan pembatasan penuh/full *bingung jelasinnya
11. Memblokir permintaan PING di Iptables
Untuk administrator yang menginginkan sistemnya benar-benar aman
sampai-sampai client yang mengecek koneksi dengan perintah ping saja
bisa terblokir. Sementara ancaman terhadap ping itu tidak begitu besar,
tapi ada baiknya untuk mengetahui bagaimana memblokir permintaan
tersebut :
#iptables -A INPUT -p icmp -i eth0 -j DROP
12. Mengijinkan loopback mengakses loopback di Iptables
Loopback akses (akses dari 127.0.0.1) merupakan penting dan anda harus
selalu mengaktifkan loopbacknya dengan memasukkan perintah seperti
berikut :
#iptables -A INPUT -i lo -j ACCEPT
#iptables -A OUTPUT -o lo -j ACCEPT
#iptables -A OUTPUT -o lo -j ACCEPT
13. Menyimpan Log dari Penurunan Jaringan di Iptables
Jika kalian ingin log paket turun pada interface eth0, anda dapat menggunakan perintah berikut :
#iptables -A INPUT -i eth0 -j LOG --log-prefix "IPtables dropped packets:"
Anda dapat mengubah nilai setelah "--log-prefix" dengan
sesuatu pilihan anda. Pesan login /var/log/messages dan anda dapat
mencarinya dengan memasukkan perintah :
#grep "iptables menjatuhkan paket:" /var/log/messages
14. Memblokir Akses MAC Adress tertentu pada Iptables
Jika tadi kita memblokir IP Addresnya kan IP Address dapat
berubah ubah dalam jaringan agar kita terjauh dari ancaman HACKER
langsung saja kita masukkan mac addresnya agar terjauh dari gangguan
bahaya yang mengintai :D. Untuk langkahnya memblokir MACnya anda bisa melakukan langkah berikut :
#iptables -A INPUT -m mac --mac-source 00:00:00:00:00:00 -j DROP
Tentu saja disini kita perlu mengubah mac yang
"00:00:00:00:00:00" dengan MAC yang anda ingin blokir dalam Iptables.
Maka nanti pemilik MAC tersebut akan terblokir dari sistem kalian :D.
15. Membatasi Jumlah Sambungan yang terhubung per IP Address
Jika anda tidak ingin memiliki terlalu banyak koneksi yang bersamaan
didirikan dari alamat IP tunggal yang diberikan port yang anda dapat
menggunakan perintah dibawah ini :
#iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 3 -j REJECT
Perintah diatas memungkinkan tidak lebih dari 3 sambungan per klien. Tentu saja, anda dapat mengubah nomor port untuk mencocokannya layanan yang berbeda. Juga --connlimit-above harus diubah agar sesuai kebutuhan anda.
16. Mencari peraturan yang terdapat di Iptables
Buat kalian yang mudah lupa tentang peraturan yang telah anda
konfigurasi pada Iptables dan anda ingin mencari peraturan itu jika
sewaktu-waktu ingin merubahnya peraturannya dari settingan IPtables.
Cara mudah untuk mencarinya anda bisa menggunakan cara berikut :
#iptables -L $table -v -n | grep $string
Dalam contoh diatas, anda perlu mengubah $table dengan tabel yang sebenarnya dimana anda ingin mencarinya dan $string dengan string yang sebenarnya anda cari.
Contohnya :
#iptables -L INPUT -v -n | grep 192.168.0.100
#iptables -L $table -v -n | grep $string
Dalam contoh diatas, anda perlu mengubah $table dengan tabel yang sebenarnya dimana anda ingin mencarinya dan $string dengan string yang sebenarnya anda cari.
Contohnya :
#iptables -L INPUT -v -n | grep 192.168.0.100
17. Menetapkan atau Membuat chain baru di Iptables
Pada Iptables sendiri anda bisa membuat chain dengan sendiri seperti
INPUT, OUTPUT dan juga FORWARD. Dengan chain yang anda inginkan, untuk
pembuatan chain anda bisa memasukkan perintah :
#iptables -N custom-filter
Kemudian cek chain yang telah kalian buat dengan memasukkan perintah :
#iptables -L
#iptables -N custom-filter
Kemudian cek chain yang telah kalian buat dengan memasukkan perintah :
#iptables -L
Chain custom-filter (0 references)
target prot opt source destination
target prot opt source destination
18. Melihat Alur Peraturan di dalam Iptables
Untuk anda yang ingin melihat apa saja aturan yang telah anda
konfigurasi anda bisa memasukkan perintah berikut untuk mengeceknya :
#iptables -F
Dan jika anda ingin melihat dari tabel tertentu anda bisa memasukkan perintah :
#iptables -t nat -F
Anda dapat mengubah "nat" dengan tabel yang ingin anda lihat.
#iptables -F
Dan jika anda ingin melihat dari tabel tertentu anda bisa memasukkan perintah :
#iptables -t nat -F
Anda dapat mengubah "nat" dengan tabel yang ingin anda lihat.
19. Penyimpan Pengaturan Iptables pada File
Buat kalian administrator, anda harus sering memback-up data karena
daata anda bisa hilang kapan saja jika terjadi gangguan. Jika anda ingin
menyimpan aturan firewall anda, anda dapat menggunakan perintah iptables-save. Anda dapat menggunakan perintah berikut untuk menyimpan aturan dalam bentuk file :
#iptables-save > -/iptables.rules
Disini anda bebeas ingin menyimpan konfigurasinya letak dimana dan ingin diberi nama apa karena pemberian nama itu penting untuk membermudah nantinya untuk dicari.
#iptables-save > -/iptables.rules
Disini anda bebeas ingin menyimpan konfigurasinya letak dimana dan ingin diberi nama apa karena pemberian nama itu penting untuk membermudah nantinya untuk dicari.
20. Mengembalikan Pengaturan Iptables di File
Jika tadi anda kita menyimpan konfigurasi di File Iptables yang nggak
mungkin lah kalau cuma bisa menyimpan namun tidak bisa mengembalikan
file tersebut :D. Jika kalian ingin mengembalikan/restore file anda yang
telah di simpan tadi masukkan perintah iptables-restore. Untuk lebih jelasnya bisa masukkan perintah berikut :
#iptables-restore < -/iptables.rules
Sesuaikan dengan nama file iptables yang anda simpan tadi dan tempat penyimpanannya tadi dimana, pastinya berbeda dengan sintak di atas.
#iptables-restore < -/iptables.rules
Sesuaikan dengan nama file iptables yang anda simpan tadi dan tempat penyimpanannya tadi dimana, pastinya berbeda dengan sintak di atas.
21. Pengaturan Iptables untuh keperluan PCI
Beberapa administrator sistem mungkin diperlukan untuk mengkonfigurasi
server mereka untuk menjadi compliant PCI. Ada banyak persyaratan oleh
vendor kepatuhan PCI yang berbeda, tetapi ada beberapa yang umum.
Dalam banyak kasus yang terjadi, anda akan perlu memiliku lebih dari satu alamat IP. Anda akan perlu menerapkan aturan di bawah untuk alamat IP situs atau alamat IP Cadanganlah untuk lebih mudahnya. Perlu ketelitian dan anda harus hati-hati dalam penggunaan aturan ini, anda harus yakin untuk mengguanakan peraturan ini dengan cara menggunakan seperti berikut :
Jika Anda menggunakan cPanel atau panel kontrol yang sama, Anda mungkin perlu untuk memblokir port itu juga. Berikut adalah contoh sintak penggunaannya :
Catatan : Untuk memastikan Anda memenuhi persyaratan PCI vendor Anda, memeriksa laporan mereka dengan hati-hati dan menerapkan aturan yang diperlukan. Dalam beberapa kasus, Anda mungkin perlu untuk memblokir lalu lintas UDP pada port tertentu juga.
Dalam banyak kasus yang terjadi, anda akan perlu memiliku lebih dari satu alamat IP. Anda akan perlu menerapkan aturan di bawah untuk alamat IP situs atau alamat IP Cadanganlah untuk lebih mudahnya. Perlu ketelitian dan anda harus hati-hati dalam penggunaan aturan ini, anda harus yakin untuk mengguanakan peraturan ini dengan cara menggunakan seperti berikut :
#iptables -I INPUT -d SITE -p tcp -m multiport --dports 21,25,110,143,465,587,993,995 -j DROP
Jika Anda menggunakan cPanel atau panel kontrol yang sama, Anda mungkin perlu untuk memblokir port itu juga. Berikut adalah contoh sintak penggunaannya :
#iptables -I in_sg -d DEDI_IP -p tcp -m multiport --dports 2082,2083,2095,2096,2525,2086,2087 -j DROP
Catatan : Untuk memastikan Anda memenuhi persyaratan PCI vendor Anda, memeriksa laporan mereka dengan hati-hati dan menerapkan aturan yang diperlukan. Dalam beberapa kasus, Anda mungkin perlu untuk memblokir lalu lintas UDP pada port tertentu juga.
22. Mengijinkan Pembuatan dan Hubungan Koneksi
Sebagai lalu lintas jaringan yang terpisah pada masuk dan keluar, Anda
akan ingin memungkinkan didirikan dan terkait lalu lintas masuk. Untuk
koneksi masuk melakukannya dengan :
#iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Untuk koneksi yang keluar :
#iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
#iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Untuk koneksi yang keluar :
#iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
23. Membuang atau Menghentikan Paket yang valid di Iptables
Ini mungkin untuk memiliki beberapa paket jaringan ditandai sebagai
tidak valid. Beberapa orang mungkin lebih memilih untuk log paket
tersebut, tetapi yang lain lebih memilih untuk menghentikan paket
tersebut. Untuk menghentikan valid paket, Anda dapat menggunakan
perintah :
#iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
#iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
24. Memblokir Koneksi pada Interface Network di Iptables
Beberapa sistem mungkin memiliki lebih dari satu antarmuka atau
interface dalam jaringan. Anda dapat membatasi akses ke interface
jaringan atau koneksi blok dari alamat IP tertentu.
Sebagai contoh:
#iptables -A INPUT -i eth0 -s xxx.xxx.xxx.xxx -j DROP
Disini anda tinggal merubah "xxx.xxx.xxx.xxx" sesuai alamat IP yang ingin anda blokir koneksi. Dan pada interface eth0 bisa anda rubah sesuai interface mana yang ingin anda setting agar IP tersebut tidak bisa mengakses.
Sebagai contoh:
#iptables -A INPUT -i eth0 -s xxx.xxx.xxx.xxx -j DROP
Disini anda tinggal merubah "xxx.xxx.xxx.xxx" sesuai alamat IP yang ingin anda blokir koneksi. Dan pada interface eth0 bisa anda rubah sesuai interface mana yang ingin anda setting agar IP tersebut tidak bisa mengakses.
25. Menonaktifkan Email keluar melalui Iptables
Pada settingan Iptables ini anda juga bisa menonaktifkan bagian port
mana yang dimatikan jadi tidak sembarangan bisa keluar dari sistem anda.
Jika sistem Anda tidak harus mengirim email apapun, Anda dapat
memblokir port keluar pada port SMTP. Sebagai contoh Anda dapat
menggunakan ini :
#iptables -A OUTPUT -p tcp --dport 25,456,587 -j REJECT
G. KESIMPULAN
IPTABLES merupakan Firewall yang cukup kuat bahwa anda
dapat dengan mudah mendapatkan keuntungan dari IPTABLES. Sangat penting
untuk setiap sistem administrator untuk menguasai IPTABLES setidaknya
mengerti atau paham mengenai dasar-dasar IPTABLES. Jika ingin mengetahui
lebih rinci lagi tentang IPTABLES anda bisa ketikkan perintah berikut
pada terminal :
#man iptables
Source : Disini
Referensi : Disini
0 comments: