Mengapa saya harus firewall server?

104

TOLONG DICATAT: Saya tidak tertarik menjadikan ini perang api! Saya mengerti bahwa banyak orang memiliki keyakinan yang kuat tentang hal ini, tidak sedikit karena mereka telah berupaya keras untuk solusi firewall mereka, dan juga karena mereka telah diindoktrinasi untuk mempercayai kebutuhan mereka.

Namun, saya mencari jawaban dari orang-orang yang ahli dalam keamanan. Saya percaya bahwa ini adalah pertanyaan penting, dan jawabannya akan menguntungkan lebih dari saya dan perusahaan tempat saya bekerja. Saya telah menjalankan jaringan server kami selama beberapa tahun tanpa kompromi, tanpa firewall sama sekali. Tidak satu pun dari kompromi keamanan yang kami miliki dapat dicegah dengan firewall.

Saya kira saya telah bekerja di sini terlalu lama, karena ketika saya mengatakan "server", saya selalu berarti "layanan yang ditawarkan kepada publik", bukan "database penagihan internal rahasia". Dengan demikian, setiap aturan yang kita akan miliki di setiap firewall harus mengizinkan akses ke seluruh Internet. Selain itu, server akses publik kami semuanya berada dalam pusat data khusus yang terpisah dari kantor kami.

Orang lain mengajukan pertanyaan serupa, dan jawaban saya dipilih menjadi angka negatif. Ini membuat saya percaya bahwa orang yang memberikan suaranya tidak benar-benar memahami jawaban saya, atau saya tidak cukup memahami keamanan untuk melakukan apa yang saya lakukan saat ini.

Ini adalah pendekatan saya terhadap keamanan server:

  1. Ikuti panduan keamanan sistem operasi saya sebelum menghubungkan server saya ke Internet.

  2. Gunakan pembungkus TCP untuk membatasi akses ke SSH (dan layanan manajemen lainnya) ke sejumlah kecil alamat IP.

  3. Pantau status server ini dengan Munin . Dan memperbaiki masalah keamanan mengerikan yang melekat pada Munin-node dalam konfigurasi default-nya.

  4. Nmap server baru saya (juga sebelum menghubungkan server saya ke Internet). Jika saya firewall server ini, ini harus menjadi set port yang tepat koneksi masuk harus dibatasi.

  5. Instal server di ruang server dan berikan alamat IP publik.

  6. Amankan sistem dengan menggunakan fitur pembaruan keamanan sistem operasi saya.

Filosofi saya (dan dasar dari pertanyaan) adalah bahwa keamanan berbasis host yang kuat menghilangkan perlunya firewall. Filosofi keamanan keseluruhan mengatakan bahwa keamanan berbasis host yang kuat masih diperlukan bahkan jika Anda memiliki firewall (lihat pedoman keamanan ). Alasan untuk ini adalah bahwa firewall yang meneruskan layanan publik ke server memungkinkan penyerang sama seperti tidak ada firewall sama sekali. Ini adalah layanan itu sendiri yang rentan, dan karena menawarkan layanan itu ke seluruh Internet adalah persyaratan operasinya, membatasi akses ke itu bukan intinya.

Jika ada yang port yang tersedia pada server yang tidak perlu diakses oleh seluruh Internet, maka software yang perlu ditutup pada langkah 1, dan telah diverifikasi oleh langkah 4. Jika penyerang berhasil membobol server melalui perangkat lunak rentan dan membuka port sendiri, penyerang dapat (dan melakukan) dengan mudah mengalahkan firewall apa pun dengan membuat koneksi keluar pada port acak sebagai gantinya. Tujuan keamanan bukan untuk membela diri setelah serangan yang berhasil - itu sudah terbukti tidak mungkin - itu untuk menjaga penyerang di tempat pertama.

Disarankan bahwa ada pertimbangan keamanan lain selain port terbuka - tetapi bagi saya itu terdengar seperti mempertahankan iman seseorang. Setiap kerentanan sistem operasi / tumpukan TCP harus sama-sama rentan terlepas dari apakah firewall ada atau tidak - berdasarkan fakta bahwa port sedang diteruskan langsung ke sistem operasi / tumpukan TCP tersebut. Demikian juga, menjalankan firewall Anda di server itu sendiri sebagai lawan memilikinya di router (atau lebih buruk, di kedua tempat) tampaknya menambah lapisan kompleksitas yang tidak perlu. Saya memahami filosofi "keamanan datang berlapis-lapis", tetapi ada titik di mana itu seperti membangun atap dengan menumpuk X jumlah lapisan kayu lapis di atas satu sama lain dan kemudian mengebor lubang melalui mereka semua. Lapisan kayu lapis lain tidak akan menghentikan kebocoran melalui lubang itu.

Sejujurnya, satu-satunya cara saya melihat firewall digunakan untuk server adalah jika ia memiliki aturan dinamis yang mencegah semua koneksi ke semua server dari penyerang yang dikenal - seperti RBL untuk spam (yang kebetulan, cukup banyak seperti yang dilakukan server email kami) . Sayangnya, saya tidak dapat menemukan firewall yang melakukan itu. Hal terbaik berikutnya adalah server IDS, tetapi itu mengasumsikan bahwa penyerang tidak menyerang server Anda yang sebenarnya terlebih dahulu, dan bahwa penyerang repot-repot untuk menyelidiki seluruh jaringan Anda sebelum menyerang. Selain itu, ini telah diketahui menghasilkan sejumlah besar positif palsu.

Ernie
sumber
2
Jadi SEMUA lalu lintas yang melewati antara server Anda dienkripsi?
GregD
5
Suka. Aturan firewall lokal hampir selalu hanya voodoo.
unixtippse
2
Apakah Anda memiliki desktop / karyawan di jaringan Anda juga? Apa yang kamu lakukan dengan mereka?
Brandon
8
Pertanyaan ini akan cocok untuk security.stackexchange.com
Olivier Lalonde
2
@routeNpingme: Sepertinya saya tidak memasukkan tidbit itu di posting asli saya. Semua server kami harus terbuka untuk umum, dan tinggal di pusat data khusus. Jika kantor Anda adalah pusat data Anda, saya kira perlu memiliki firewall antara jaringan server Anda dan jaringan kantor Anda. Dalam hal ini, saya berbicara tentang jaringan server - mengapa firewall sesuatu yang memiliki akses publik lengkap?
Ernie

Jawaban:

54

Keuntungan firewall:

  1. Anda dapat memfilter lalu lintas keluar.
  2. Firewall Lapisan 7 (IPS) dapat melindungi dari kerentanan aplikasi yang diketahui.
  3. Anda dapat memblokir rentang alamat IP dan / atau port tertentu secara terpusat daripada mencoba memastikan bahwa tidak ada layanan yang mendengarkan port itu pada setiap mesin individual atau menolak akses menggunakan TCP Wrappers .
  4. Firewall dapat membantu jika Anda harus berurusan dengan pengguna / administrator yang kurang memperhatikan keamanan karena mereka akan memberikan pertahanan lini kedua. Tanpa mereka kita harus benar-benar yakin bahwa host aman, yang membutuhkan pemahaman keamanan yang baik dari semua administrator.
  5. Log firewall akan menyediakan log pusat dan membantu mendeteksi pemindaian vertikal. Log firewall dapat membantu dalam menentukan apakah beberapa pengguna / klien mencoba untuk terhubung ke port yang sama dari semua server Anda secara berkala. Untuk melakukan ini tanpa firewall orang harus menggabungkan log dari berbagai server / host untuk mendapatkan tampilan terpusat.
  6. Firewall juga dilengkapi dengan modul anti-spam / anti-virus yang juga menambah perlindungan.
  7. Keamanan independen OS. Berdasarkan OS host, teknik / metode yang berbeda diperlukan untuk membuat host aman. Misalnya, Pembungkus TCP mungkin tidak tersedia di mesin Windows.

Di atas semua ini jika Anda tidak memiliki firewall dan sistem terganggu maka bagaimana Anda mendeteksinya? Mencoba menjalankan beberapa perintah 'ps', 'netstat', dll. Pada sistem lokal tidak dapat dipercaya karena binari-binari itu dapat diganti. 'nmap' dari sistem jarak jauh tidak dijamin perlindungan karena penyerang dapat memastikan bahwa root-kit menerima koneksi hanya dari alamat IP sumber yang dipilih pada waktu yang dipilih.

Firewall perangkat keras membantu dalam skenario seperti itu karena sangat sulit untuk mengubah OS firewall / file dibandingkan dengan host OS / file.

Kerugian firewall:

  1. Orang-orang merasa bahwa firewall akan menjaga keamanan dan tidak memperbarui sistem secara teratur dan menghentikan layanan yang tidak diinginkan.
  2. Harga mereka. Terkadang biaya lisensi tahunan harus dibayar. Terutama jika firewall memiliki modul anti-virus dan anti-spam.
  3. Tambahan satu titik kegagalan. Jika semua lalu lintas melewati firewall dan firewall gagal maka jaringan akan berhenti. Kita dapat memiliki firewall yang redundan, tetapi kemudian poin sebelumnya tentang biaya semakin diperkuat.
  4. Pelacakan stateful tidak memberikan nilai pada sistem yang dihadapi publik yang menerima semua koneksi masuk.
  5. Firewall stateful adalah hambatan besar selama serangan DDoS dan sering menjadi hal pertama yang gagal, karena mereka berusaha untuk mempertahankan status dan memeriksa semua koneksi yang masuk.
  6. Firewall tidak dapat melihat di dalam lalu lintas terenkripsi. Karena semua lalu lintas harus dienkripsi ujung ke ujung, sebagian besar firewall menambahkan sedikit nilai di depan server publik. Beberapa firewall generasi selanjutnya dapat diberikan kunci pribadi untuk mengakhiri TLS dan melihat di dalam lalu lintas, namun ini meningkatkan kerentanan firewall terhadap DDoS bahkan lebih, dan memecah model keamanan TLS ujung-ke-ujung.
  7. Sistem operasi dan aplikasi ditambal terhadap kerentanan jauh lebih cepat daripada firewall. Vendor firewall sering kali duduk pada masalah yang diketahui selama bertahun - tahun tanpa menambal, dan menambal gugus firewall biasanya memerlukan waktu henti untuk banyak layanan dan koneksi keluar.
  8. Firewall jauh dari sempurna, dan banyak yang terkenal buggy. Firewall hanyalah perangkat lunak yang berjalan pada beberapa bentuk sistem operasi, mungkin dengan ASIC atau FPGA tambahan selain CPU (biasanya lambat). Firewall memiliki bug, tetapi mereka tampaknya menyediakan beberapa alat untuk mengatasinya. Oleh karena itu firewall menambah kerumitan dan sumber tambahan kesalahan yang sulit didiagnosis pada tumpukan aplikasi.
Saurabh Barjatiya
sumber
6
Above all this if you do not have firewall and system is compromised then how would you detect it?Deteksi intrusi bukan pekerjaan firewall. Pekerjaan itu lebih baik ditangani oleh HIDS (sistem deteksi intrusi berbasis host), yang independen terhadap firewall.
Steven Senin
6
Server Syslog menghilangkan kebutuhan untuk item 5. Jika ada, yang terbaik adalah mengirim log firewall Anda ke server syslog, jika seorang penyerang mengatur kompromi firewall dan menghapus log-nya. Kemudian penyerang harus berkompromi dengan dua sistem hanya untuk menghapus log, dan mereka mungkin tidak siap untuk itu (terutama dengan serangan otomatis). Demikian juga, jika semua sistem Anda memiliki logging terpusat, Anda mendapatkan detail yang lebih baik tentang serangan itu daripada yang diberikan oleh firewall log.
Ernie
2
Maksud saya adalah karena HIDS berada pada host yang tidak dapat kita percayai hasilnya. Misalnya, bahkan jika kita menggunakan 'tripwire' yang aman secara kriptografi sebagai IDS berbasis host, penyerang selalu dapat mengganti semua binari tripwire (twadmin, tripwire, twprint, dll.) Dengan versi yang disusupi yang tidak akan pernah melaporkan gangguan. Bahkan jika kita mencoba menyalin pustaka / binari dari sistem lain, mungkin ada proses yang berjalan yang memantau binari-binari yang disusupi ini dan kembali menggantinya dengan versi yang rusak jika diganti atau diperbarui. Firewall menjadi independen dari host, dapat dipercaya dalam skenario seperti itu.
Saurabh Barjatiya
2
Jawaban ini diterima lebih populer karena memberikan alasan yang lebih baik dan lebih komprehensif untuk menggunakan firewall. Dan tidak, dalam hal ini.
Ernie
Firewall inspeksi paket stateful TIDAK milik di depan server. Mereka adalah tanggung jawab besar dalam serangan DDoS, dan biasanya hal pertama yang gagal diserang.
rmalayter
33

TCP Wrappers dapat dikatakan sebagai implementasi firewall berbasis host; Anda memfilter lalu lintas jaringan.

Untuk titik pada penyerang membuat koneksi keluar pada port yang sewenang-wenang, firewall akan menyediakan sarana untuk mengendalikan lalu lintas keluar juga; firewall yang dikonfigurasi dengan benar mengelola masuk dan keluar dengan cara yang sesuai dengan risiko yang terkait dengan sistem.

Pada titik tentang bagaimana kerentanan TCP tidak dimitigasi oleh firewall, Anda tidak terbiasa dengan cara kerja firewall. Cisco memiliki sejumlah besar aturan yang tersedia untuk diunduh yang mengidentifikasi paket yang dibangun dengan cara yang akan menyebabkan masalah sistem operasi tertentu. Jika Anda mengambil Snort dan mulai menjalankannya dengan aturan yang tepat, Anda juga akan diberitahu tentang hal ini. Dan tentu saja, iptables Linux dapat menyaring paket berbahaya.

Pada dasarnya, firewall adalah perlindungan proaktif. Semakin jauh Anda menjauh dari menjadi proaktif, kemungkinan besar Anda akan menemukan diri Anda dalam situasi di mana Anda bereaksi terhadap masalah daripada mencegah masalah. Memusatkan perlindungan Anda di perbatasan, seperti halnya firewall khusus, membuat segalanya lebih mudah untuk dikelola karena Anda memiliki titik tersedak pusat daripada menduplikasi aturan di mana-mana.

Tetapi tidak ada satu hal pun yang merupakan solusi akhir. Solusi keamanan yang baik umumnya adalah multi-layer, di mana Anda memiliki firewall di perbatasan, pembungkus TCP di perangkat, dan mungkin beberapa aturan tentang router internal juga. Anda biasanya harus melindungi jaringan dari Internet, dan melindungi node dari satu sama lain. Pendekatan multi-lapisan ini tidak seperti membuat lubang melalui beberapa lembar kayu lapis, ini lebih seperti memasang sepasang pintu sehingga seorang penyusup memiliki dua kunci untuk dipecah, bukan hanya satu; ini disebut jebakan manusia dalam keamanan fisik, dan sebagian besar setiap bangunan memiliki jebakan karena suatu alasan. :)

dannysauer
sumber
6
Juga jika mereka menyelinap di dalam gedung dan membuka pintu bagian dalam untuk teman mereka di luar, mereka kemudian harus juga membuka dan membuka pintu luar. (Yaitu tanpa firewall eksternal, seseorang yang masuk ke server Anda dapat membukanya, sedangkan firewall eksternal masih akan memblokir port terbuka dari luar)
Ricket
@Ricket: Mungkin mereka bisa, tetapi penyerang modern tidak peduli dengan hal-hal seperti ini. Situs Anda harus menjadi perhatian khusus bagi penyerang untuk melakukan apa pun selain menambahkan server Anda ke peternakan zombie.
Ernie
1
@ Ernie - tidak, itu hanya perlu ada untuk secara otomatis diperiksa ruang kosong untuk Warez, database pelanggan, info keuangan, kata sandi, dan ditambahkan ke botnet - tetapi bahkan itu bisa cukup buruk - beberapa admin akan dengan senang hati melubangi IP Anda jika sepertinya Anda menjadi tuan rumah zombie.
Rory Alsop
TCP Wrappers could be arguably called a host-based firewall implementation+1 untuk jawaban yang bagus.
sjas
15

(Anda mungkin ingin membaca " Hidup tanpa Firewall ")

Sekarang: Bagaimana dengan memiliki sistem warisan yang tidak ada tambalan diterbitkan lagi? Bagaimana dengan tidak dapat menerapkan tambalan ke mesin-N pada saat Anda perlu melakukannya, sementara pada saat yang sama Anda dapat menerapkannya dalam lebih sedikit node dalam jaringan (firewall)?

Tidak ada gunanya memperdebatkan keberadaan atau kebutuhan firewall. Yang benar-benar penting adalah Anda harus menerapkan kebijakan keamanan. Untuk melakukannya, Anda akan menggunakan alat apa pun yang akan mengimplementasikannya dan membantu Anda mengelola, memperluas, dan mengembangkannya. Jika firewall diperlukan untuk melakukannya, itu tidak masalah. Jika mereka tidak dibutuhkan, itu juga baik. Yang benar-benar penting adalah memiliki implementasi kebijakan keamanan Anda yang berfungsi dan dapat diverifikasi.

adamo
sumber
1
Heh. Saya telah menjalankan jaringan server kami selama 8 tahun terakhir tanpa firewall. Saya bisa saja menulis "Hidup tanpa firewall", tetapi dia melakukan pekerjaan yang lebih baik dan menjalankan jaringan yang jauh lebih besar daripada saya.
Ernie
2
@ Ernie - Saya kira Anda bisa saja beruntung. Bagaimana Anda tahu Anda belum dikompromikan? Hasil penyelidikan forensik pada banyak klien saya telah menemukan kompromi, kadang-kadang dating kembali berbulan-bulan, sementara penyerang menemukan informasi pribadi dan keuangan, detail klien, kekayaan intelektual, rencana bisnis dll. Seperti kata Sean - dapatkan audit keamanan yang tepat dilakukan.
Rory Alsop
1
Sebenarnya, terlepas dari kenyataan bahwa jaringan server kami secara fisik terpisah dari jaringan kantor kami (dan dengan demikian, tidak ada data yang benar-benar sensitif dapat diperoleh darinya, bahkan dengan akses root pada setiap server), saya telah dapat menemukan setiap kompromi yang kami lakukan Sudah sejak saya mulai di sini. Saya bisa melanjutkan tentang pertunjukan horor yang ada ketika saya mulai, tetapi saya tidak memiliki cukup ruang. :) Cukuplah untuk mengatakan bahwa sebagian besar serangan tidak halus, dan yang halus juga dapat ditemukan. Oh ya, dan pemisahan hak pengguna adalah teman Anda.
Ernie
9

Sebagian besar penjelasan Anda tampaknya menyangkal perlunya firewall, tapi saya tidak melihat tipuan untuk memilikinya, selain sedikit waktu untuk mengaturnya.

Beberapa hal merupakan "keharusan" dalam arti kata yang ketat. Keamanan lebih tentang mengatur semua blokade yang Anda bisa. Semakin banyak pekerjaan yang diperlukan untuk masuk ke server Anda berarti semakin kecil peluang serangan yang berhasil. Anda ingin membuatnya lebih berfungsi untuk masuk ke mesin Anda daripada di tempat lain. Menambahkan firewall membuat lebih banyak pekerjaan.

Saya pikir penggunaan utama adalah redundansi dalam keamanan. Kelebihan lain dari firewall adalah Anda dapat dengan mudah menghentikan upaya untuk terhubung ke port apa saja daripada menanggapi permintaan yang ditolak - ini akan membuat pemetaan sedikit lebih merepotkan bagi penyerang.

Yang paling penting bagi saya pada catatan praktis dari pertanyaan Anda adalah Anda dapat mengunci SSH, ICMP, dan layanan internal lainnya ke subnet lokal serta batas tingkat koneksi masuk untuk membantu meringankan serangan DOS.

"Titik keamanan bukan untuk membela diri setelah serangan yang berhasil - itu sudah terbukti tidak mungkin - itu untuk menjaga penyerang di tempat pertama."

Saya tidak setuju. Membatasi kerusakan bisa sama pentingnya. (di bawah ini ideal mengapa kata sandi hash? Atau menempel perangkat lunak database Anda pada server yang berbeda dari aplikasi web Anda?) Saya pikir pepatah lama "Jangan masukkan semua telur Anda dalam satu keranjang" berlaku di sini.

Joshua Enfield
sumber
1
Nah, Anda benar, saya tidak menaruh kontra di sana. Cons: peningkatan kompleksitas jaringan, satu titik kegagalan, antarmuka jaringan tunggal di mana bandwidth mengalami bottlenecked. Demikian juga, kesalahan administratif yang dibuat pada satu firewall dapat membunuh seluruh jaringan Anda. Dan para dewa melarang Anda mengunci diri dari itu sementara itu adalah 20 menit perjalanan ke ruang server.
Ernie
1
Ini mungkin murni retoris, tetapi ketika Anda mengatakan "Keamanan lebih tentang menyiapkan semua blokade yang Anda bisa", saya lebih suka mendengar "Keamanan lebih lanjut tentang memblokir segala sesuatu secara default, dan dengan hati-hati membuka batas minimum yang ketat untuk beroperasi".
MatthieuP
+1 Rencana keamanan komprehensif mencakup pencegahan, deteksi, dan respons.
Jim OHalloran
8

Should I firewall my server?Pertanyaan bagus. Tampaknya ada sedikit gunanya menampar firewall di atas tumpukan jaringan yang sudah menolak upaya koneksi untuk semua kecuali segelintir port yang terbuka secara sah. Jika ada kerentanan dalam OS yang memungkinkan paket perusak berbahaya untuk mengganggu / mengeksploitasi host, apakah firewall yang berjalan pada host yang sama mencegah eksploitasi? Yah, mungkin ...

Dan itu mungkin alasan terkuat untuk menjalankan firewall di setiap host: Firewall mungkin mencegah kerentanan tumpukan jaringan agar tidak dieksploitasi. Apakah itu alasan yang cukup kuat? Saya tidak tahu, tapi saya kira orang bisa mengatakan, "Tidak ada yang dipecat karena memasang firewall."

Alasan lain untuk menjalankan firewall pada server adalah untuk memisahkan dua masalah yang sangat terkait:

  1. Dari mana, dan ke port apa, saya menerima koneksi?
  2. Layanan mana yang berjalan dan mendengarkan koneksi?

Tanpa firewall, rangkaian layanan yang berjalan (bersama dengan konfigurasi untuk tcpwrappers dan semacamnya) sepenuhnya menentukan set port yang akan dibuka server, dan dari siapa koneksi akan diterima. Firewall berbasis host memberi admin fleksibilitas tambahan untuk menginstal dan menguji layanan baru dengan cara yang terkontrol sebelum membuatnya lebih banyak tersedia. Jika fleksibilitas seperti itu tidak diperlukan, maka ada sedikit alasan untuk menginstal firewall di server.

Pada catatan akhir, ada satu item yang tidak disebutkan dalam daftar periksa keamanan Anda yang selalu saya tambahkan, dan itu adalah sistem deteksi intrusi berbasis-host (HIDS), seperti AIDE atau samhain . HIDS yang baik membuatnya sangat sulit bagi penyusup untuk melakukan perubahan yang tidak diinginkan pada sistem dan tetap tidak terdeteksi. Saya percaya semua server harus menjalankan semacam HIDS.

Steven Monday
sumber
1
+1 untuk menyebutkan sistem HIDS.
Sam Halicke
3
HIDS hebat - Jika Anda ingin mengatur dan melupakannya. Dan tidak pernah menambah atau menghapus akun. Kalau tidak, sebagian besar log HIDS akan menjadi daftar panjang dari apa yang Anda lakukan hari ini, dan dengan cepat akan diabaikan setiap saat.
Ernie
Tidak ada rasa sakit, tidak ada keuntungan, seperti kata mereka. Pada server dengan banyak perubahan, dimungkinkan untuk menyaring kebisingan yang diharapkan, membuat Anda berkonsentrasi pada hal yang tidak terduga.
Steven Senin
6

Firewall adalah alat. Itu tidak membuat hal-hal aman dalam dan dari dirinya sendiri, tetapi dapat membuat kontribusi sebagai lapisan dalam jaringan yang aman. Itu tidak berarti Anda memerlukannya, dan saya benar-benar khawatir tentang orang-orang yang secara membabi buta mengatakan "Saya harus mendapatkan firewall" tanpa memahami mengapa mereka berpikir seperti itu dan yang tidak memahami kekuatan dan kelemahan firewall.

Ada banyak alat yang bisa kita katakan tidak perlu ... Apakah mungkin menjalankan komputer Windows tanpa Antivirus? Ya itu ... tapi itu adalah lapisan asuransi yang bagus untuk memilikinya.

Saya akan mengatakan hal yang sama tentang firewall - apa pun yang dapat Anda katakan tentang mereka, mereka adalah tingkat asuransi yang bagus. Mereka bukan pengganti untuk menambal, untuk mengunci mesin, untuk menonaktifkan layanan yang tidak Anda gunakan, untuk penebangan, dll ... tetapi mereka bisa menjadi suplemen yang bermanfaat.

Saya juga menyarankan bahwa persamaan berubah agak tergantung pada apakah Anda berbicara tentang menempatkan firewall di depan sekelompok server yang cenderung hati-hati, seperti yang tampaknya, atau LAN khas dengan campuran workstation dan server , beberapa di antaranya mungkin menjalankan beberapa hal yang sangat berbulu terlepas dari upaya dan keinginan terbaik dari tim TI.

Satu hal lagi yang perlu dipertimbangkan adalah manfaat dari menciptakan target yang jelas keras. Keamanan yang terlihat, apakah itu lampu terang, kunci berat, dan kotak alarm yang jelas pada bangunan; atau firewall yang jelas pada rentang alamat IP bisnis dapat mencegah penyusup biasa - mereka akan mencari mangsa yang lebih mudah. Ini tidak akan menghalangi penyusup yang tahu Anda memiliki informasi yang mereka inginkan dan bertekad untuk mendapatkannya, tetapi mencegah penyusup biasa masih bermanfaat - terutama jika Anda tahu bahwa setiap penyusup yang penyelidikannya bertahan melewati pencegah perlu ditanggapi dengan serius. .

Rob Moir
sumber
1
Jadi alasan saya mengatakan "server" bukan "jaringan kantor"? :) Dalam kasus kami khususnya, pusat data dan kantor adalah dua entitas yang terpisah secara fisik.
Ernie
Saya mengerti itu Ernie, tapi itu poin yang perlu digarisbawahi ... jadi saya lakukan.
Rob Moir
5

Semua pertanyaan bagus. TETAPI - Saya sangat terkejut KINERJA tidak dibawa ke meja.

Untuk ujung depan Web yang sangat (tergantung CPU), firewall lokal benar-benar menurunkan kinerja, titik. Coba tes beban dan lihat. Saya melihat ini berkali-kali. Mematikan firewall meningkatkan kinerja (permintaan per detik) hingga 70% atau lebih.

Pertukaran ini harus dipertimbangkan.

Ariel
sumber
2
Itu sangat tergantung pada aturan firewall yang ada. Aturan firewall dijalankan secara berurutan pada setiap paket, jadi Anda tidak ingin memiliki ratusan aturan yang harus dilihat. Musim dingin yang lalu ketika kami mengelola situs yang memiliki iklan di superbowl, aturan firewall itu tidak masalah, misalnya. Tetapi saya setuju bahwa Anda perlu memahami dampak kinerja dari aturan firewall.
Sean Reifschneider
4

Firewall adalah perlindungan tambahan. Tiga skenario tertentu yang dilindunginya adalah serangan tumpukan jaringan (mis. Server OS Anda memiliki kerentanan terhadap paket yang dibuat khusus yang tidak pernah mencapai level port), intrusi yang berhasil membuat koneksi ke "telepon rumah" (atau mengirim spam, atau apa pun) ), atau intrusi yang berhasil membuka port server atau, kurang terdeteksi, perhatikan urutan port knocking sebelum membuka port. Memang, dua yang terakhir harus dilakukan dengan mengurangi kerusakan intrusi daripada mencegahnya, tetapi itu tidak berarti itu tidak berguna. Ingatlah bahwa keamanan bukanlah proposisi semua atau tidak sama sekali; seseorang mengambil pendekatan berlapis, sabuk dan suspender, untuk mencapai tingkat keamanan yang cukup untuk kebutuhan Anda.

Greg
sumber
+1 Benar, pertahanan dalam adalah kuncinya.
Jim OHalloran
2
Saya gagal melihat bagaimana saya dapat memiliki harapan memblokir lalu lintas keluar untuk efek apa pun, terutama ketika pelanggan kami mengharapkan banyak server kami untuk mengirim email ke host acak di internet (seperti halnya dengan spam). "Menelepon ke rumah" hanyalah masalah menghubungkan ke beberapa host acak lainnya di internet - dan saya ragu bahwa memblokir semua koneksi keluar kecuali beberapa akan membantu apa saja - yaitu, jika Anda ingin melakukan apa pun di internet. Dan memblokir hanya beberapa pelabuhan seperti mendirikan gardu tol di tengah padang pasir.
Ernie
3

Saya bukan ahli keamanan dengan cara apa pun, tetapi kedengarannya seolah-olah Anda firewall. Sepertinya Anda telah mengambil beberapa fungsi inti dari firewall dan menjadikannya bagian dari kebijakan dan prosedur Anda. Tidak, Anda tidak perlu firewall jika Anda ingin melakukan pekerjaan yang sama seperti firewall sendiri. Sedangkan untuk diri saya sendiri, saya lebih suka melakukan yang terbaik yang dapat saya lakukan untuk menjaga keamanan, tetapi memiliki firewall yang melihat dari belakang, tetapi pada suatu saat ketika Anda dapat melakukan semua yang dilakukan firewall, itu mulai menjadi tidak relevan.

SteelToad
sumber
3

Firewall tentu tidak diperlukan untuk pengaturan yang lebih kecil. Jika Anda memiliki satu atau dua server, firewall perangkat lunak dapat dipelihara. Dengan itu, kami tidak lari tanpa firewall khusus, dan ada beberapa alasan mengapa saya mempertahankan filosofi ini:

Pemisahan Peran

Server adalah untuk aplikasi. Firewall untuk inspeksi paket, penyaringan, dan kebijakan. Server web harus khawatir tentang melayani halaman web, dan hanya itu. Memasukkan kedua peran dalam satu perangkat sama seperti meminta akuntan Anda untuk juga menjadi penjaga keamanan Anda.

Perangkat lunak adalah target yang bergerak

Perangkat lunak pada host selalu berubah. Aplikasi dapat membuat pengecualian firewall sendiri. OS diperbarui dan ditambal. Server adalah area "admin" dengan lalu lintas tinggi, dan kebijakan firewall / kebijakan keamanan Anda seringkali jauh lebih penting bagi keamanan daripada konfigurasi aplikasi Anda. Dalam lingkungan Windows, misalkan seseorang membuat kesalahan di beberapa level Kebijakan Grup dan mematikan Windows Firewall pada PC desktop, dan tidak menyadari bahwa itu akan diterapkan ke server. Anda terbuka lebar dalam hitungan klik.

Hanya berbicara tentang pembaruan, pembaruan firmware firewall biasanya keluar sekali atau dua kali setahun, sementara pembaruan OS dan layanan adalah aliran konstan.

Layanan / kebijakan / aturan yang dapat digunakan kembali, pengelolaan

Jika saya mengatur layanan / kebijakan yang disebut "Web Server" sekali (katakanlah TCP 80 dan TCP 443), dan menerapkannya ke "grup server web" di tingkat firewall, itu jauh lebih efisien (beberapa perubahan konfigurasi) dan secara eksponensial lebih rentan terhadap kesalahan manusia daripada menyiapkan layanan firewall pada 10 kotak, dan membuka 2 port x 10 kali. Ketika kebijakan itu perlu diubah, itu adalah 1 perubahan vs. 10.

Saya masih dapat mengelola firewall selama serangan, atau setelah kompromi

Katakanlah server aplikasi firewall + berbasis host saya diserang dan CPU mati. Untuk bahkan mulai mencari tahu apa yang terjadi, saya berada di belas kasihan beban saya menjadi kurang dari penyerang untuk masuk dan melihatnya.

Pengalaman yang sebenarnya - Saya pernah mengacaukan aturan firewall (meninggalkan port ke ANY bukannya yang spesifik, dan server memiliki layanan yang rentan), dan penyerang sebenarnya memiliki sesi Remote Desktop langsung ke kotak. Setiap kali saya mulai mendapatkan sesi, penyerang akan mematikan / memutuskan sesi saya. Jika bukan karena bisa mematikan serangan itu dari perangkat firewall independen, itu bisa menjadi jauh lebih buruk.

Pemantauan Independen

Log in di unit firewall khusus biasanya jauh lebih unggul daripada firewall perangkat lunak berbasis host. Beberapa cukup baik sehingga Anda bahkan tidak memerlukan perangkat lunak pemantauan SNMP / NetFlow eksternal untuk mendapatkan gambaran yang akurat.

Konservasi IPv4

Tidak ada alasan untuk memiliki dua alamat IP jika satu untuk web dan satu untuk email. Simpan layanan di kotak yang terpisah, dan rutekan port dengan tepat melalui perangkat yang dirancang untuk melakukan itu.

Brandon
sumber
2

Blockquote Baiklah, Anda benar, saya tidak menaruh kontra di sana. Cons: peningkatan kompleksitas jaringan, satu titik kegagalan, antarmuka jaringan tunggal di mana bandwidth mengalami bottlenecked. Demikian juga, kesalahan administratif yang dibuat pada satu firewall dapat membunuh seluruh jaringan Anda. Dan para dewa melarang Anda mengunci diri dari itu sementara itu adalah 20 menit perjalanan ke ruang server.

Pertama, menambahkan paling banyak satu hop tambahan yang dialihkan melalui jaringan Anda tidak rumit. Kedua, tidak ada solusi firewall yang diterapkan dengan satu titik kegagalan sama sekali tidak berguna. Sama seperti Anda mengelompokkan server atau layanan penting Anda dan menggunakan NIC terikat, Anda menerapkan firewall yang sangat tersedia. Tidak melakukan itu, atau tidak mengenali dan mengetahui bahwa Anda akan melakukannya adalah pandangan yang sangat pendek. Cukup dengan menyatakan bahwa ada satu antarmuka tidak secara otomatis membuat sesuatu menjadi hambatan. Pernyataan itu menunjukkan bahwa Anda tidak tahu bagaimana merencanakan dan memasang firewall dengan benar untuk menangani lalu lintas yang akan mengalir melalui jaringan Anda. Anda benar dalam mengatakan bahwa kesalahan dalam kebijakan dapat menyebabkan kerusakan pada seluruh jaringan Anda, tetapi saya berpendapat bahwa mempertahankan kebijakan individual pada semua server Anda jauh lebih banyak kesalahan yang cenderung terjadi di satu tempat.

Adapun argumen bahwa Anda mengikuti patch keamanan dan ikuti panduan keamanan; itu argumen yang goyah di terbaik. Biasanya tambalan keamanan tidak tersedia sampai setelah kerentanan ditemukan. Itu berarti bahwa sepanjang waktu Anda menjalankan server yang dapat dialamatkan secara publik, mereka rentan hingga ditambal. Seperti yang telah ditunjukkan orang lain, sistem IPS dapat membantu mencegah kompromi dari kerentanan semacam itu.

Jika Anda berpikir sistem Anda seaman mungkin, itu keyakinan yang baik untuk dimiliki. Namun, saya sarankan Anda melakukan audit keamanan profesional di jaringan Anda. Itu mungkin hanya membuka mata Anda.

Sean
sumber
It may just open your eyes.Memberi +1 karena akan menjadi paku terakhir di peti mati.
sjas
2

Secara umum, keamanan adalah hal bawang, seperti yang telah disebutkan. Ada alasan mengapa firewall ada, dan bukan hanya lemming lainnya yang bodoh.

Jawaban ini datang, karena mencari 'fail2ban' di halaman ini tidak memberi saya hasil apa pun. Jadi, jika saya menggandakan konten lain, ikutilah. Dan permisi, jika saya sedikit mengoceh, saya memberikan pengalaman sederhana karena ini mungkin berguna bagi orang lain. :)

Pertimbangan jaringan, lokal vs. eksternal

Ini agak spesifik untuk Linux dan berkonsentrasi pada firewall berbasis host, yang biasanya merupakan kasus penggunaan. Firewall eksternal berjalan seiring dengan struktur jaringan yang tepat dan pertimbangan keamanan lainnya biasanya masuk ke dalamnya. Entah Anda tahu apa yang tersirat di sini, maka Anda kemungkinan tidak akan membutuhkan posting ini. Atau Anda tidak, maka baca terus.

Menjalankan firewall secara eksternal dan lokal mungkin tampak kontra-intuitif dan berfungsi ganda. Tetapi ini juga memberikan kemungkinan pergantian aturan pada aturan eksternal, tanpa mengorbankan keamanan pada semua host lain yang ada di belakangnya. Kebutuhan dapat timbul dari alasan debugging atau karena seseorang baru saja kacau. Kasus penggunaan lain akan muncul di sana di bagian 'firewall global yang adaptif', dan Anda juga membutuhkan firewall global dan lokal.

Biaya dan ketersediaan dan cerita yang sama sepanjang waktu:

Firewall hanyalah salah satu aspek dari sistem keamanan yang tepat. Tidak memasang firewall karena membutuhkan biaya, memperkenalkan SPOF atau apa pun yang hanya omong kosong, maafkan bahasa Prancis saya di sini. Cukup siapkan kluster. Oh, tapi bagaimana jika sel api padam? Kemudian siapkan kluster Anda pada rentang dua atau lebih kompartemen api.

Tetapi bagaimana jika seluruh pusat data tidak dapat dijangkau, karena kedua operator eksternal keluar dari bisnis (excavator membunuh serat Anda)? Buat saja cluster Anda mencakup beberapa pusat data, lalu.

Itu mahal? Cluster terlalu rumit? Yah, paranoia harus dibayar.

Hanya mengeluh tentang SPOF, tetapi tidak ingin membayar lebih banyak uang atau membuat sedikit pengaturan yang lebih kompleks adalah kasus standar ganda yang jelas atau hanya dompet kecil di sisi perusahaan atau pelanggan.

Pola ini berlaku untuk SEMUA diskusi ini, tidak peduli layanan mana yang merupakan masalah saat ini. Tidak masalah apakah itu gateway VPN, Cisco ASA digunakan hanya untuk firewall, database MySQL atau PostgreSQL, sistem virtual atau perangkat keras server, backend penyimpanan, switch / router, ...

Sekarang Anda harus mendapatkan ide.

Mengapa repot dengan firewall?

Secara teori, alasan Anda masuk akal. (Hanya menjalankan layanan yang dapat dieksploitasi.)

Tapi ini hanya setengah dari kebenaran. Firewall, terutama firewall stateful dapat melakukan lebih banyak untuk Anda. Firewall tanpa kewarganegaraan hanya penting jika Anda mengalami masalah kinerja seperti yang telah disebutkan sebelumnya.

Kontrol akses yang mudah, terpusat, dan terpisah

Anda menyebutkan pembungkus TCP yang pada dasarnya menerapkan fungsi yang sama untuk mengamankan Anda. Demi argumen, mari kita asumsikan seseorang tidak tahu tcpddan suka menggunakan mouse? fwbuildermungkin muncul dalam pikiran.

Memiliki akses penuh dari jaringan manajemen Anda adalah sesuatu yang harus Anda aktifkan, yang merupakan kasus penggunaan pertama dari firewall berbasis host Anda.

Bagaimana dengan pengaturan multi-server, di mana database berjalan di tempat lain dan Anda tidak dapat menempatkan kedua / semua mesin dalam subnet (pribadi) bersama untuk alasan apa pun? Gunakan firewall untuk memungkinkan akses MySQL pada port 3306 hanya untuk satu alamat IP yang diberikan dari server lain, selesai, sederhana.

Dan itu juga berfungsi dengan sempurna untuk UDP. Atau protokol apa pun. Firewall bisa sangat fleksibel. ;)

Mitigasi Portscan

Lebih jauh, dengan firewall, portcans umum dapat dideteksi dan dikurangi karena jumlah koneksi per kalipan dapat dipantau melalui kernel dan tumpukan jaringannya, dan firewall dapat bertindak berdasarkan hal itu.

Paket yang tidak valid atau tidak jelas juga dapat ditangani sebelum mereka mencapai aplikasi Anda.

Pembatasan lalu lintas keluar

Memfilter lalu lintas keluar biasanya menyebalkan. Tapi itu bisa menjadi suatu keharusan, tergantung pada kontrak.

Statistik

Hal lain yang bisa diberikan firewall, adalah statistik. (Pikirkan watch -n1 -d iptables -vnxL INPUTdengan menambahkan beberapa aturan untuk alamat IP khusus tepat di atas untuk melihat apakah paket datang.)

Anda dapat melihat di siang hari jika hal-hal bekerja atau tidak. Yang SANGAT berguna ketika memecahkan masalah koneksi dan bisa memberi tahu orang lain di telepon bahwa Anda tidak mendapatkan paket, tanpa harus menggunakan chatty tcpdump's. Jaringan itu menyenangkan, kebanyakan orang sekarang tahu apa yang mereka lakukan, dan yang sering terjadi hanyalah kesalahan routing yang sederhana. Sial, bahkan saya tidak selalu tahu apa yang saya lakukan. Meskipun saya telah bekerja dengan banyak sistem dan peralatan yang kompleks, seringkali dengan tunneling juga, sekarang.

IDS / IPS

Firewall Layer7 biasanya snake-oil (IPS / IDS), jika tidak dihadiri dengan benar dan diperbarui secara teratur. Ditambah lisensi-lisensi itu sangat mahal, jadi saya akan membeli satu jika Anda tidak benar-benar membutuhkan segala yang dapat dibeli dengan uang.

Masqerading

Mudah, coba saja ini dengan pembungkus Anda. : D

Penerusan port lokal

Lihat menyamar.

Mengamankan saluran akses kata sandi dengan alamat IP dinamis

Bagaimana jika pelanggan memiliki alamat IP dinamis dan tidak ada pengaturan VPN yang digunakan? Atau pendekatan dinamis lain untuk firewall? Ini sudah diisyaratkan dalam pertanyaan, dan ini akan menjadi kasus penggunaan untuk Sayangnya, saya tidak dapat menemukan firewall yang melakukan itu. bagian.

Menonaktifkan akses akun root melalui kata sandi adalah suatu keharusan. Bahkan jika akses terbatas pada alamat IP tertentu.

Juga, masih memiliki akun blanko lain yang siap dengan login kata sandi jika kunci ssh hilang atau penyebaran gagal sangat berguna jika terjadi kesalahan (pengguna memiliki akses administratif ke mesin dan 'sesuatu terjadi'?). Ini adalah ide yang sama untuk akses jaringan karena memiliki mode single-user di Linux atau menggunakan init=/bin/bashvia grubuntuk akses lokal benar-benar buruk dan tidak dapat menggunakan live disk dengan alasan apa pun. Jangan tertawa, ada produk virtualisasi yang melarang itu. Bahkan jika fungsi itu ada, bagaimana jika versi perangkat lunak yang ketinggalan zaman dijalankan tidak memiliki fungsionalitas?

Bagaimanapun, bahkan jika Anda menjalankan ssh daemon Anda pada beberapa port esoterik dan bukan pada 22, jika tidak menerapkan hal-hal seperti port knocking (untuk membuka bahkan port lain dan dengan demikian memitigasi portcans, perlahan-lahan berbatasan dengan terlalu tidak praktis), pemindaian port akan mendeteksi Anda layanan akhirnya.

Biasanya Anda juga mengatur semua server dengan konfigurasi yang sama, dengan port dan layanan yang sama untuk alasan efisiensi. Anda tidak dapat mengatur ssh ke port yang berbeda di setiap mesin. Anda juga tidak dapat mengubahnya di semua mesin setiap kali Anda menganggapnya sebagai informasi 'publik', karena sudah setelah pemindaian. Pertanyaan tentang nmaplegal atau tidak bukanlah masalah ketika memiliki koneksi Wi-Fi yang diretas yang Anda inginkan.

Jika akun ini tidak bernama 'root', orang mungkin tidak dapat menebak nama akun pengguna dari 'pintu belakang' Anda. Tetapi mereka akan tahu, jika mereka mendapatkan server lain dari perusahaan Anda, atau hanya membeli beberapa ruang web, dan memiliki tampilan tanpa chroot / unjailed / tidak terkendali /etc/passwd.

Untuk ilustrasi semata-mata teoretis sekarang, mereka dapat menggunakan situs web yang dapat diretas di sana untuk mendapatkan akses ke server Anda dan mencari tahu bagaimana hal-hal biasanya berjalan di tempat Anda. Alat pencarian retas Anda mungkin tidak berjalan 24/7 (biasanya mereka lakukan di malam hari karena alasan kinerja disk untuk pemindaian sistem file?) Dan pemindai virus Anda tidak diperbarui saat detik- nol baru melihat cahaya hari, sehingga itu akan tidak mendeteksi kejadian ini sekaligus, dan tanpa tindakan perlindungan lainnya Anda bahkan mungkin tidak pernah tahu apa yang terjadi. Untuk kembali ke kenyataan, jika seseorang memiliki akses ke eksploitasi nol hari, sangat mungkin dia tidak akan menargetkan server Anda karena ini hanya mahal. Ini hanya untuk menggambarkan bahwa selalu ada jalan masuk ke sistem jika 'kebutuhan' muncul.

Tetapi pada topik lagi, jangan gunakan akun kata sandi ekstra, dan jangan repot-repot? Silakan baca terus.

Bahkan jika penyerang mendapatkan nama dan port akun tambahan ini, kombinasi fail2ban+ iptablesakan menghentikan mereka, bahkan jika Anda hanya menggunakan kata sandi delapan huruf. Ditambah fail2ban dapat diterapkan untuk layanan lain juga, memperluas cakrawala pemantauan!

Untuk layanan Anda sendiri, jika perlu muncul: Pada dasarnya setiap layanan gagal log ke file bisa mendapatkan dukungan fail2ban melalui penyediaan file, regex apa yang cocok dengan dan berapa banyak kegagalan yang diizinkan, dan firewall hanya akan dengan senang hati melarang setiap alamat IP itu disuruh.

Saya tidak mengatakan untuk menggunakan kata sandi 8 digit! Tetapi jika mereka diblokir selama 24 jam selama lima kali mencoba kata sandi yang salah, Anda dapat menebak berapa lama mereka harus mencoba jika mereka tidak memiliki botnet yang mereka miliki bahkan dengan keamanan yang buruk. Dan Anda akan kagum dengan kata sandi apa yang cenderung digunakan pelanggan, bukan hanya untuk ssh. Melihat kata sandi email orang-orang melalui Plesk memberi tahu Anda segala hal yang Anda tidak ingin ketahui, jika Anda pernah melakukannya, tetapi apa yang saya tidak maksudkan di sini tentu saja. :)

Firewall global adaptif

fail2banhanyalah salah satu aplikasi yang menggunakan sesuatu di sepanjang baris iptables -I <chain_name> 1 -s <IP> -j DROP, tetapi Anda dapat dengan mudah membangun barang-barang seperti itu sendiri dengan beberapa sihir Bash cukup cepat.

Untuk lebih memperluas sesuatu seperti ini, agregat semua alamat IP fail2ban dari server dalam jaringan Anda pada server tambahan, yang mengkurasi semua daftar dan meneruskannya pada firewall inti Anda yang memblokir semua lalu lintas yang sudah ada di tepi jaringan Anda.

Fungsionalitas seperti itu tidak dapat dijual (tentu saja bisa, tetapi itu hanya akan menjadi sistem yang rapuh dan payah), tetapi harus terjalin ke dalam infrastruktur Anda.

Sementara itu, Anda juga dapat menggunakan alamat IP daftar hitam atau daftar dari sumber lain, baik itu dikumpulkan sendiri atau eksternal.

sja
sumber
1

Di dunia fisik, orang mengamankan barang-barang berharga dengan menempatkannya di brankas. Tapi tidak ada brankas yang tidak bisa dibobol. Brankas, atau wadah keamanan, dinilai berdasarkan berapa lama waktu yang diperlukan untuk memaksa masuk. Tujuan dari brankas adalah untuk menunda penyerang cukup lama sehingga mereka terdeteksi dan tindakan aktif kemudian menghentikan serangan.

Demikian pula, asumsi keamanan yang tepat adalah bahwa mesin Anda yang terpapar, pada akhirnya, akan dikompromikan. Firewall dan bastion host tidak diatur untuk mencegah server Anda (dengan data berharga Anda) dari kompromi, tetapi untuk memaksa penyerang untuk berkompromi terlebih dahulu dan memungkinkan Anda untuk mendeteksi (dan mencegah) serangan sebelum barang-barang berharga hilang.

Perhatikan bahwa baik firewall maupun brankas bank tidak melindungi dari ancaman orang dalam. Itulah salah satu alasan akuntan bank mengambil cuti selama dua minggu berturut-turut, dan bagi server untuk memiliki tindakan pencegahan keamanan internal penuh walaupun dilindungi oleh host benteng.

Anda tampaknya menyiratkan dalam posting asli bahwa Anda meneruskan paket "dunia luar" melalui firewall Anda langsung ke server Anda. Dalam hal ini, ya, firewall Anda tidak melakukan banyak hal. Pertahanan perimeter yang lebih baik dilakukan dengan dua firewall dan host bastion, di mana tidak ada koneksi logis langsung dari luar ke dalam - setiap koneksi berakhir di host bastion DMZ; setiap paket diperiksa dengan benar (dan mungkin diurai) sebelum meneruskan.

mpez0
sumber
"Itu salah satu alasan akuntan bank mengambil cuti dua minggu berturut-turut," bisakah Anda menjelaskannya? Mungkin tidak penting di sini, tetapi saya mulai tertarik.
Per Wiklander
-1 karena saya sudah membahas fakta bahwa Anda tidak perlu membobol firewall sebelum membobol server - Firewall harus memungkinkan publik memiliki akses ke layanan yang Anda tawarkan kepada publik, oleh karena itu server itu sendiri terbuka untuk menyerang dari publik. Tidak ada layanan di salah satu server kami yang belum kami inginkan publik untuk mengaksesnya.
Ernie
@ Ernie - Kamu melewatkan intinya. Sebuah host desain bastion DMZ mengisolasi host dengan firewall di kedua sisi. Tuan rumah itu terkena serangan, dan pada akhirnya akan ditumbangkan. Tetapi host itu bukan server Anda dan benar akan memiliki jumlah minimal informasi penting Anda di dalamnya. DMZ (host + firewall) memperlambat serangan pada server Anda cukup lama sehingga Anda dapat merespons dan mencegah keberhasilannya.
mpez0
1
@Per Wiklander - GAAP mencakup audit pemeriksaan rutin. Seorang akuntan penggelap mungkin dapat memasak angka-angka dan mencegah penemuan selama audit cek ketika hadir, tetapi jika diharuskan untuk pergi dari pekerjaan selama dua minggu berturut-turut orang lain akan melaporkan dan penyimpangan mereka dapat ditemukan. Ini adalah bentuk kontrol dua orang.
mpez0
Bagaimana host benteng melindungi apa pun di server? Contoh: Port 80, 25, dan 110 adalah satu-satunya port terbuka di server. Firewall memungkinkan lalu lintas ke port-port ini dari seluruh internet. Karena itu, firewall tidak melindungi apa pun. Jika server Anda berada di lokasi yang terpisah dari kantor Anda, maka Anda tidak memerlukan perlindungan lebih lanjut kecuali untuk firewall di kantor Anda.
Ernie
1

Kerentanan sulit diprediksi. Praktis mustahil untuk memperkirakan ke mana infrastruktur Anda akan dieksploitasi. Memiliki firewall "meningkatkan standar" bagi penyerang yang ingin mengeksploitasi kerentanan, dan ini adalah bagian yang penting, SEBELUM Anda tahu kerentanan itu. Selain itu, konsekuensi dari firewall dapat dengan mudah dipahami sebelumnya, sehingga Anda tidak akan MENYEBABKAN masalah dengan firewall yang lebih parah daripada masalah yang mungkin Anda hindari.

Inilah sebabnya "tidak ada yang dipecat karena memasang firewall". Implementasi mereka berisiko sangat rendah, dan memiliki kemungkinan TINGGI untuk mencegah atau mengurangi eksploitasi. Selain itu, kerentanan yang paling buruk akhirnya dieksploitasi oleh otomatisasi, sehingga apa pun yang "tidak biasa" akan berakhir dengan merusak bot, atau setidaknya membuatnya melewatkan Anda demi target yang lebih mudah.

Catatan samping; firewall bukan hanya untuk internet. Departemen akuntansi Anda tidak perlu ssh / apa pun ke server ldap Anda, jadi jangan berikan kepada mereka. Menggabungkan layanan internal dapat membuat perbedaan besar pada pekerjaan pembersihan jika ada sesuatu yang menembus dinding kastil.

Enki
sumber
2
Memiliki firewall tidak meningkatkan bilah ketika Anda perlu memiliki aturan firewall membuka port 80, 53, 25, 110, 143, 443, 993, 995 dan lainnya ke seluruh internet. Server-server itu sama rapuhnya dengan firewall tanpa, jika Anda perlu memiliki aturan seperti itu.
Ernie
2
Benar, tetapi server yang sama mungkin memiliki port 3306 (mysql) dan berbagai protokol lain yang berpotensi mendapat manfaat dari firewall. Itu tidak berarti bahwa Anda seharusnya tidak memiliki perlindungan lain; Hanya saja firewall tidak akan sakit. Juga, saya pikir Anda melewatkan poin saya bahwa semua lalu lintas tidak perlu terbuka untuk semua pengguna. Port 22 mungkin harus terbuka, tetapi tidak di SEMUA host Anda, dan tentu saja tidak untuk seluruh internet (atau akuntansi dan SDM juga). Menutup 25 untuk penghitungan jika mereka seharusnya beroperasi lebih dari 465 dapat mengurangi beberapa malware spam misalnya.
Enki
1

Harus mengatakan kepada Ernie bahwa walaupun Anda tampaknya melakukan banyak hal untuk mengeraskan server Anda dan mengurangi serangan dan kerentanan, saya tidak setuju dengan sikap Anda tentang firewall.

Saya memperlakukan keamanan sedikit seperti bawang dalam idealnya Anda memiliki lapisan yang harus Anda lalui sebelum Anda sampai ke inti, dan secara pribadi saya pikir itu sangat salah kaprah untuk tidak memiliki beberapa bentuk firewall perangkat keras pada batas jaringan Anda.

Saya akui saya datang dari sudut "apa yang biasa saya", tapi saya tahu bahwa setiap bulan saya mendapatkan daftar kecil yang bagus tentang patch-patch dari Microsoft, banyak dari mereka dieksploitasi di alam liar. . Saya membayangkan hal yang sama terjadi pada hampir semua OS dan set aplikasi yang Anda pikirkan.

Sekarang saya tidak menyarankan firewall menghapus ini, firewall juga tidak kebal terhadap bug / kerentanan, jelas firewall "perangkat keras" hanyalah perangkat lunak yang berjalan pada tumpukan perangkat keras.

Yang mengatakan, saya tidur jauh lebih aman mengetahui bahwa jika saya memiliki server yang hanya membutuhkan port 443 untuk dapat diakses dari web, perimeter saya Juniper memastikan bahwa hanya port 443 yang dapat diakses dari web. Tidak hanya itu tetapi Palo Alto saya memastikan bahwa lalu lintas masuk didekripsi, dan diperiksa, dan dicatat, dan dipindai untuk IPS / IDS - tidak menghilangkan kebutuhan untuk menjaga server tetap aman dan mutakhir, tetapi mengapa Anda TIDAK menemukan bahwa manfaat yang diberikan dapat mengurangi eksploitasi nol hari dan kesalahan manusia lama yang baik?

flooble
sumber
1

Pertama-tama, dengan pembicaraan Anda tentang port forwarding, saya pikir Anda sedang mengkonfigurasi firewall dengan NATing. Walaupun saat ini NAT sangat sering berfungsi sebagai firewall de facto, bahwa itu bukan tujuan yang mereka inginkan. NAT adalah alat perutean. Firewall adalah untuk mengatur akses. Penting bagi kejernihan pemikiran untuk membuat konsep-konsep ini berbeda.

Tentu saja benar bahwa menempatkan server di belakang kotak NAT dan kemudian mengkonfigurasi NAT untuk meneruskan apa pun ke server itu, tidak lebih aman daripada menempatkan server langsung di Internet. Saya tidak berpikir ada yang akan membantah ini.

Demikian pula, firewall yang dikonfigurasi untuk memungkinkan semua lalu lintas tidak ada firewall sama sekali.

Tetapi, apakah "izinkan semua lalu lintas" benar-benar kebijakan yang Anda inginkan? Adakah yang pernah memiliki kebutuhan untuk melakukan ssh ke salah satu server Anda dari alamat IP Rusia? Sementara Anda mengutak-atik konfigurasi beberapa daemon jaringan eksperimental baru, apakah seluruh dunia benar-benar membutuhkan akses ke sana?

Kekuatan firewall adalah memungkinkan Anda tetap terbuka hanya layanan yang Anda tahu harus terbuka dan mempertahankan satu titik kontrol untuk menerapkan kebijakan ini.

dfranke
sumber
2
Semua poin Anda telah dibahas dalam pertanyaan saya. Ya, "izinkan semua lalu lintas" benar-benar kebijakan yang kami inginkan untuk layanan non-manajemen seperti SSH atau port manajemen server tertentu. Kalau tidak, orang tidak akan dapat melihat halaman web kami dan mengirimi kami surat!
Ernie
2
Adapun hanya membuka layanan yang perlu, itulah langkah 1 dan 4 untuk.
Ernie
1

Firewall inspeksi paket stateful TIDAK milik di depan server publik. Anda menerima semua koneksi, sehingga pelacakan negara sangat tidak berguna. Firewall tradisional adalah tanggung jawab besar dalam serangan DDoS dan biasanya merupakan hal pertama yang gagal di bawah serangan DDoS, bahkan sebelum bandwidth link atau sumber daya server dikonsumsi secara total.

Filter paket stateless pada router memang masuk akal di depan server publik, tetapi hanya jika mereka dapat menangani laju line semua lalu lintas masuk dan keluar (seperti ACL perangkat keras di router).

Google, Facebook, dan bahkan Microsoft tidak menempatkan "firewall" tradisional di depan server publik. Siapa pun yang menjalankan layanan web publik pada skala "lebih dari satu server" harus mengetahui hal ini.

Fungsi lain yang ditemukan di firewall tradisional seperti Cisco ASAs atau apa pun yang terbaik diimplementasikan pada host itu sendiri, di mana mereka dapat ditingkatkan secara efektif. Logging, IDS, dll. Adalah semua fitur perangkat lunak di firewall, jadi mereka hanya menjadi hambatan besar dan target DDoS jika diletakkan di depan server yang dapat diakses publik.

rmalayter
sumber
1
Saya pikir konteks itu penting. OP kemungkinan tidak berbicara tentang sistem skala web, di mana load balancing dan firewalling akan diimplementasikan jauh berbeda dari tumpukan teknologi back-office SMB.
ewwhite
Bahkan di depan satu server, firewall stateful tidak melakukan banyak hal untuk membantu Anda jika Anda menerima koneksi dari mana-mana. Anda harus menggunakan TLS atau enkripsi lain untuk semuanya, jadi yang bisa dilakukan firewall hanyalah mengatakan "hei, ada beberapa data lagi yang melewati saya di port 443". Firewall cukup banyak mati: etherealmind.com/why-firewalls-wont-matter-in-a-few-years
rmalayter
0

Mengapa semua server Anda memerlukan alamat publik?

Instal server di ruang server dan berikan alamat IP publik.

Dari 14 atau lebih server yang saya jalankan secara teratur, hanya 2 yang memiliki antarmuka yang dapat diakses publik.

Diedit untuk menambahkan : Di jaringan lain yang telah saya tangani dalam mengelola, kami memiliki kemampuan untuk mematikan / mengaktifkan layanan sesuka hati, sedangkan kami tidak memiliki akses untuk mengelola firewall. Saya bahkan tidak dapat mulai memberi tahu Anda berapa kali, secara tidak sengaja tentu saja, layanan yang tidak dibutuhkan (SMTP) dihidupkan dan ditinggalkan dan satu-satunya hal yang menyelamatkan kami dari menjadi tempat sampah spam dan mendapatkan daftar hitam dalam proses itu adalah firewall.

Juga, apakah semua lalu lintas yang lewat di antara server, sepenuhnya dienkripsi?

Anda tentu bisa mengendarai mobil 100 mph tanpa sabuk pengaman, tidak ada airbag dan ban botak, tetapi mengapa Anda mau ??

GregD
sumber
1
Karena mereka semua mungkin memiliki layanan yang perlu diakses "dari Internet"
adamo
Um, tidak. Lebih seperti mengendarai mobil dengan kecepatan 70 mph dengan sabuk pengaman dan airbag sambil memperhatikan apa yang Anda lakukan. Tetapi tanpa mengunci pintu Anda. Ada kebijakan keamanan di tempat, dan server tetap aman, tetapi tidak ada firewall. Firewall bukan keamanan semua-dan-semua-akhir, Anda tahu.
Ernie
2
Saya tidak mengatakan, PERNAH, bahwa firewall adalah keamanan segalanya. Saya tidak akan mengulangi apa yang sudah dikatakan di sini. Mereka hanyalah satu LAPISAN di banyak LAPIS keamanan. Saya sudah bertanya dua kali sekarang dan Anda belum menjawab. Server pada LAN adalah hal yang cerewet. Apakah semua server Anda hanya berbicara melalui saluran terenkripsi satu sama lain?
GregD
0

Firewall dapat mencegah pengguna sistem dari membuka layanan yang dapat diakses jaringan yang tidak disadari oleh administrator, atau melakukan penerusan port ke komputer lain. Dengan memanfaatkan modul hashlimit, firewall juga dapat menilai penyalahguna berdasarkan IP jarak jauh.

Firewall adalah jaring pengaman lain yang memastikan kebijakan Anda dipatuhi. Tentu, jangan menjalankan layanan yang tidak Anda harapkan.

Saya merekomendasikan pembaruan perangkat lunak yang diterapkan tepat waktu, misalnya, tetapi saya juga merekomendasikan firewall pada semua mesin. Ini seperti ketika saya mengemudi: Tentu saya mencoba menghindari rintangan dan mobil lain, tetapi saya juga mengenakan sabuk pengaman dan memiliki airbag untuk berjaga-jaga jika hal yang tidak terduga terjadi.

Sean Reifschneider
sumber
0

Anda mungkin tidak menyadari betapa Anda mendapat manfaat dari firewall hanya karena semua orang menggunakannya. Pada hari ketika semua orang, pengguna DSL bawah ke rumah memiliki firewall di tempat sniffing port telah diberikan sebagai vektor serangan yang layak. Seorang hacker yang baik tidak akan membuang-buang waktu mereka memeriksa hal-hal seperti itu.

Spencer Ruport
sumber