13 Pertanyaan Wawancara di Linux iptables Firewall


Nishita Agarwal, yang sering menjadi Pengunjung Tecmint berbagi pengalamannya (Tanya Jawab) dengan kami mengenai wawancara kerja yang baru saja dia berikan di sebuah perusahaan hosting swasta di Pune , India. Dia ditanyai banyak pertanyaan tentang berbagai topik namun dia ahli dalam iptables dan dia ingin berbagi pertanyaan tersebut dan jawaban mereka (yang dia berikan) terkait dengan iptables kepada orang lain yang mungkin akan melakukannya. memberikan wawancara dalam waktu dekat.

Semua pertanyaan dan Jawabannya ditulis ulang berdasarkan ingatan Nishita Agarwal.

"Halo teman teman! Nama saya Nishita Agarwal. Saya telah Mengejar Gelar Sarjana Teknologi. Bidang Spesialisasi saya adalah UNIX dan Varian UNIX (BSD, Linux) membuat saya terpesona sejak saya mendengarnya. Saya memiliki pengalaman lebih dari 1 tahun di bidang penyimpanan. Saya sedang mencari perubahan pekerjaan yang berakhir dengan perusahaan hosting di Pune, India. ”

Berikut adalah kumpulan dari apa yang ditanyakan kepada saya saat Wawancara. Saya hanya mendokumentasikan pertanyaan-pertanyaan itu dan jawabannya yang terkait dengan iptables berdasarkan ingatan saya. Semoga ini bisa membantu Anda dalam memecahkan Wawancara Anda.

1. Pernahkah Anda mendengar tentang iptables dan firewall di Linux? Adakah yang tahu apa itu dan untuk apa digunakan?

Jawaban : Saya telah menggunakan iptables cukup lama dan saya mengetahui baik iptables maupun firewall. Iptables adalah program aplikasi yang sebagian besar ditulis dalam Bahasa Pemrograman C dan dirilis di bawah Lisensi Publik Umum GNU. Ditulis untuk sudut pandang Administrasi Sistem, rilis stabil terbaru jika iptables 1.4.21.iptables dapat dianggap sebagai firewall untuk sistem operasi mirip UNIX yang dapat disebut sebagai iptables/netfilter, lebih akurat. Administrator berinteraksi dengan iptables melalui alat front end konsol/GUI untuk menambahkan dan mendefinisikan aturan firewall ke dalam tabel yang telah ditentukan sebelumnya. Netfilter adalah modul yang dibangun di dalam kernel yang melakukan tugas pemfilteran.

Firewalld adalah implementasi terbaru dari aturan pemfilteran di RHEL/CentOS 7 (mungkin diterapkan di distribusi lain yang mungkin tidak saya sadari). Itu telah menggantikan antarmuka iptables dan terhubung ke netfilter.

2. Sudahkah Anda menggunakan alat front end berbasis GUI untuk iptables atau Linux Command Line?

Jawaban : Meskipun saya telah menggunakan alat front end berbasis GUI untuk iptables seperti Shorewall dalam konjugasi Webmin di GUI dan akses langsung ke iptables melalui konsol.Dan saya harus akui bahwa akses langsung ke iptables melalui konsol Linux memberi pengguna kekuatan luar biasa dalam bentuk tingkat fleksibilitas yang lebih tinggi dan pemahaman yang lebih baik tentang apa yang terjadi di latar belakang, atau bahkan hal lain. GUI untuk administrator pemula sedangkan konsol untuk berpengalaman.

3. Apa perbedaan mendasar antara iptables dan firewalld?

Jawaban : iptables dan firewalld memiliki tujuan yang sama (Pemfilteran Paket) namun dengan pendekatan yang berbeda. iptables menghapus seluruh aturan yang ditetapkan setiap kali perubahan dilakukan, tidak seperti firewalld. Biasanya lokasi konfigurasi iptables terletak di '/etc/sysconfig/iptables' sedangkan konfigurasi firewalld terletak di '/etc/firewalld/', yang merupakan kumpulan file XML .Mengonfigurasi firewalld berbasis XML lebih mudah dibandingkan dengan konfigurasi iptables, namun tugas yang sama dapat dicapai dengan menggunakan aplikasi pemfilteran paket, yaitu iptables dan firewalld. Firewalld menjalankan iptables bersama dengan antarmuka baris perintahnya sendiri dan file konfigurasi yang berbasis XML dan disebutkan di atas.

4. Apakah Anda akan mengganti iptables dengan firewalld di semua server Anda, jika diberi kesempatan?

Jawaban : Saya familiar dengan iptables dan berfungsi dan jika tidak ada yang memerlukan aspek dinamis firewalld, sepertinya tidak ada alasan untuk memigrasikan semua konfigurasi saya dari iptables ke firewalld.Dalam sebagian besar kasus, sejauh ini saya belum pernah melihat iptables menimbulkan masalah. Juga aturan umum Teknologi Informasi mengatakan “mengapa diperbaiki jika tidak rusak”. Namun ini adalah pemikiran pribadi saya dan saya tidak akan keberatan menerapkan firewalld jika Organisasi akan mengganti iptables dengan firewalld.

5. Anda tampak percaya diri dengan iptables dan poin plusnya adalah kami menggunakan iptables di server kami.

Tabel apa yang digunakan di iptables? Berikan penjelasan singkat tentang tabel yang digunakan di iptables dan rantai yang didukungnya.

Jawaban : Terima kasih atas pengakuannya. Pindah ke bagian pertanyaan, Ada empat tabel yang digunakan di iptables, yaitu:

  1. Tabel Nat
  2. Meja Mangle
  3. Tabel Filter
  4. Tabel Mentah

Tabel Nat : Tabel Nat terutama digunakan untuk Terjemahan Alamat Jaringan. Paket yang disamarkan mendapatkan alamat IP-nya diubah sesuai aturan dalam tabel. Paket dalam aliran melintasi Tabel Nat hanya sekali. yaitu, jika sebuah paket dari sekumpulan Paket disamarkan, paket-paket lainnya dalam aliran tidak akan melintasi tabel ini lagi. Disarankan untuk tidak memfilter dalam tabel ini. Rantai yang didukung oleh Tabel NAT adalah Rantai PREROUTING, Rantai POSTROUTING, dan Rantai OUTPUT.

Mangle Table : Seperti namanya, tabel ini berfungsi untuk mengatur paket-paket. Ini digunakan untuk perubahan paket khusus. Ini dapat digunakan untuk mengubah konten berbagai paket dan headernya. Meja Mangle tidak bisa digunakan untuk Masquerading. Rantai yang didukung adalah Rantai PREROUTING, Rantai OUTPUT, Rantai Maju, Rantai INPUT, Rantai POSTROUTING.

Tabel Filter : Tabel Filter adalah tabel default yang digunakan di iptables. Ini digunakan untuk memfilter Paket. Jika tidak ada aturan yang ditentukan, Tabel Filter diambil sebagai tabel default dan pemfilteran dilakukan berdasarkan tabel ini. Rantai yang Didukung adalah Rantai INPUT, Rantai OUTPUT, Rantai MAJU.

Tabel Mentah : Tabel mentah berfungsi ketika kita ingin mengonfigurasi paket yang dikecualikan sebelumnya. Ini mendukung Rantai PREROUTING dan Rantai OUTPUT.

6. Apa nilai target (yang dapat ditentukan dalam target) di iptables dan apa fungsinya, singkat saja!

Jawaban : Berikut adalah nilai target yang dapat kita tentukan dalam target di iptables:

    1. TERIMA : Menerima Paket
    2. ANTRIAN : Paket Paas ke ruang pengguna (tempat tinggal aplikasi dan driver)
    3. DROP : Jatuhkan Paket
    4. RETURN : Mengembalikan Kontrol ke rantai panggilan dan berhenti mengeksekusi rangkaian aturan berikutnya untuk Paket saat ini dalam rantai.
7. Mari beralih ke aspek teknis iptables, yang saya maksud dengan teknis adalah praktis.

Bagaimana Anda memeriksa rpm iptables yang diperlukan untuk menginstal iptables di CentOS?.

Jawaban : iptables rpm sudah termasuk dalam instalasi standar CentOS dan kita tidak perlu menginstalnya secara terpisah. Kita dapat memeriksa rpm sebagai:

rpm -qa iptables

iptables-1.4.21-13.el7.x86_64

Jika Anda perlu menginstalnya, Anda dapat melakukan yang terbaik untuk mendapatkannya.

yum install iptables-services
8. Bagaimana cara memeriksa dan memastikan apakah layanan iptables berjalan?

Jawaban : Untuk memeriksa status iptables, Anda dapat menjalankan perintah berikut di terminal.

service iptables status			[On CentOS 6/5]
systemctl status iptables			[On CentOS 7]

Jika tidak berjalan, perintah di bawah ini dapat dijalankan.

---------------- On CentOS 6/5 ---------------- 
chkconfig --level 35 iptables on
service iptables start

---------------- On CentOS 7 ---------------- 
systemctl enable iptables 
systemctl start iptables 

Kami juga dapat memeriksa apakah modul iptables dimuat atau tidak, seperti:

lsmod | grep ip_tables
9. Bagaimana Anda meninjau Aturan saat ini yang ditentukan di iptables?

Jawaban : Aturan saat ini di iptables dapat ditinjau secara sederhana seperti:

iptables -L

Contoh Keluaran

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
10. Bagaimana Anda menghapus semua aturan iptables atau rantai tertentu?

Jawaban : Untuk menghapus rantai iptables tertentu, Anda dapat menggunakan perintah berikut.

 
iptables --flush OUTPUT

Untuk menghapus semua aturan iptables.

iptables --flush
11. Tambahkan aturan di iptables untuk menerima paket dari Alamat IP tepercaya (misalnya 192.168.0.7)

Jawaban : Skenario di atas dapat dicapai hanya dengan menjalankan perintah di bawah ini.

iptables -A INPUT -s 192.168.0.7 -j ACCEPT 

Kami dapat menyertakan garis miring atau subnet mask standar dalam sumbernya sebagai:

iptables -A INPUT -s 192.168.0.7/24 -j ACCEPT 
iptables -A INPUT -s 192.168.0.7/255.255.255.0 -j ACCEPT
12. Bagaimana cara menambahkan aturan pada layanan ACCEPT, REJECT, DENY dan DROP ssh di iptables.

Jawaban : Berharap ssh berjalan pada port 22, yang juga merupakan port default untuk ssh, kita dapat menambahkan aturan ke iptables sebagai:

Untuk MENERIMA paket tcp untuk layanan ssh (port 22).

iptables -A INPUT -s -p tcp --dport 22 -j ACCEPT 

Untuk MENOLAK paket tcp untuk layanan ssh (port 22).

iptables -A INPUT -s -p tcp --dport 22 -j REJECT

Untuk DENY paket tcp untuk layanan ssh (port 22).

 
iptables -A INPUT -s -p tcp --dport 22 -j DENY

Untuk DROP paket tcp untuk layanan ssh (port 22).

 
iptables -A INPUT -s -p tcp --dport 22 -j DROP
13. Izinkan saya memberi Anda sebuah skenario. Katakanlah ada mesin yang alamat ip lokalnya adalah 192.168.0.6. Anda perlu memblokir koneksi pada port 21, 22, 23, dan 80 ke mesin Anda. Apa yang akan kamu lakukan?

Jawaban : Yang perlu saya gunakan hanyalah opsi 'multiport' dengan iptables diikuti dengan nomor port yang akan diblokir dan skenario di atas dapat dicapai dalam sekali jalan .

iptables -A INPUT -s 192.168.0.6 -p tcp -m multiport --dport 21,22,23,80 -j DROP

Aturan tertulis dapat diperiksa menggunakan perintah di bawah ini.

iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
DROP       tcp  --  192.168.0.6          anywhere             multiport dports ssh,telnet,http,webcache

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Pewawancara : Hanya itu yang ingin saya tanyakan. Anda adalah karyawan berharga yang tidak ingin kami lewatkan. Saya akan merekomendasikan nama Anda ke HR. Jika Anda memiliki pertanyaan, Anda dapat bertanya kepada saya.

Sebagai seorang kandidat, saya tidak ingin menghentikan pembicaraan sehingga terus bertanya tentang proyek yang akan saya tangani jika terpilih dan lowongan apa saja yang ada di perusahaan tersebut. Belum lagi putaran HR tidak sulit untuk dipecahkan dan saya mendapat kesempatan.

Saya juga ingin mengucapkan terima kasih kepada Avishek dan Ravi (yang merupakan teman saya sejak lama) karena telah meluangkan waktu untuk mendokumentasikan wawancara saya.

Teman-teman! Jika Anda pernah melakukan wawancara seperti itu dan ingin berbagi pengalaman wawancara Anda kepada jutaan pembaca Tecmint di seluruh dunia? lalu kirimkan pertanyaan dan jawaban Anda ke [email  atau Anda dapat mengirimkan pengalaman wawancara Anda menggunakan formulir berikut.

Terima kasih! Tetap Terhubung. Juga beri tahu saya jika saya bisa menjawab pertanyaan dengan lebih benar daripada yang saya lakukan.