Menyiapkan keamanan jaringan di ubuntu. Menyiapkan jaringan, (kartu jaringan) antarmuka Ubuntu

Tentu saja, kita bisa mengatakan itu Linux lagi aman(dilindungi) daripada Windows. Keamanan v Linux built-in, dan tidak kacau di suatu tempat di samping, seperti yang diterapkan di Windows. Keamanan sistem Linux mencakup area dari kernel ke desktop, tetapi kemungkinan peretas merusak direktori home Anda (/ home).

Byte foto, video rumahan, dokumen, dan data kartu kredit atau dompet Anda adalah informasi paling mahal di komputer. Tentu saja, Linux tidak rentan terhadap semua jenis worm Internet dan virus Windows. Tetapi penyerang dapat menemukan cara untuk mengakses data Anda di direktori home Anda.

Mempersiapkan komputer lama Anda atau HDD sebelum menjual pemformatan, apakah menurut Anda itu akan cukup? Ada banyak alat pemulihan data modern di luar sana. Seorang peretas dapat dengan mudah memulihkan data Anda dari harddisk terlepas dari OS yang sedang Anda kerjakan.

Pada topik ini, saya mengingat pengalaman satu perusahaan dalam pembelian kembali komputer dan disk bekas. Dalam kegiatannya, mereka memutuskan bahwa 90% dari pemilik komputer sebelumnya tidak melakukan pembersihan media penyimpanan sebelum penjualan. Dan mereka mengekstrak byte data yang sangat teliti. Bahkan menakutkan untuk membayangkan bahwa di suatu tempat di tempat sampah hard disk Anda ada informasi untuk masuk ke bank Internet atau dompet online Anda.

Mulailah dengan dasar-dasar keamanan Linux

Mari kita melangkah ke dasar-dasar (), yang akan bekerja untuk hampir semua
distribusi Linux.

Mari mengenkripsi sistem file di Linux untuk keamanan Linux yang lebih lengkap

Kata sandi pengguna tidak akan menyelesaikan masalah jika Anda benar-benar ingin tidak ada orang yang dapat membaca direktori home Anda (/ home) atau ukuran byte tertentu. Anda dapat melakukannya sehingga bahkan pengguna dengan hak akses root tertinggi tidak akan dapat menyodok hidungnya.

Hapus file sensitif sehingga tidak ada orang lain yang dapat memulihkannya

Jika Anda memutuskan untuk menjual atau menyumbangkan komputer atau media penyimpanan Anda, jangan berasumsi bahwa pemformatan sederhana akan menghapus file Anda secara permanen. Anda dapat menginstal alat penghapusan aman di kotak Linux Anda, yang mencakup utilitas srm untuk menghapus file dengan aman.

Juga, jangan lupa tentang yang tersedia di Kernel Linux firewall. Semua distribusi Linux menyertakan lptables, yang merupakan bagian dari kernel. Lptables memungkinkan Anda untuk memfilter paket jaringan. Tentu saja, Anda dapat mengonfigurasi utilitas ini di terminal. Tetapi metode ini di luar kuasa banyak orang, termasuk saya. Jadi saya mengatur dan mengatur semudah jika saya sedang bermain game.

Seperti semua sistem operasi, Linux cenderung menumpuk sampah saat menjalankan berbagai aplikasi. Dan ini bukan kesalahan Linux-nya, karena berbagai aplikasi, seperti browser, editor teks, dan bahkan pemutar video, tidak bekerja pada level kernel dan mengakumulasi file-file sementara. Anda dapat menginstal utilitas BleachBit untuk pembuangan sampah universal.

Berselancar anonim, menyembunyikan IP Anda sangat penting untuk keamanan identitas Anda di Linux


Sebagai kesimpulan, saya ingin memberi tahu Anda tentang penjelajahan web anonim. Kadang-kadang terjadi bahwa perlu, seperti yang saya lakukan, ketika diam-diam dari istri saya mengunjungi situs dengan konten erotis. Tentu saja aku bercanda.

Akan sulit bagi penyerang untuk menghubungi Anda jika mereka tidak dapat menentukan lokasi Anda. Kami menutupi jejak dengan konfigurasi sederhana dari dua utilitas yang bekerja bersama yang disebut privoxy dan tor.

Menurut pendapat saya, mengikuti dan mengonfigurasi semua aturan ini akan melindungi Anda dan komputer Anda hingga 90%.

P.S. Saya menggunakan cloud bernama dropbox. Saya menyimpan artikel lama dan baru saya yang belum diterbitkan di dalamnya. Lebih mudah untuk memiliki akses ke file Anda dari mana saja di dunia dan di komputer mana pun. Saat menulis artikel untuk situs di editor teks, saya menyimpan dokumen teks saya dengan kata sandi dan hanya setelah itu saya mengunggahnya ke server dropbox. Anda tidak boleh mengabaikan keamanan yang tidak perlu, yang hanya akan bermain di tangan Anda.

Tidak diragukan lagi sekarang sistem terpasang Linux jauh lebih tahan terhadap berbagai malware, spyware, dan peretas daripada yang sama Versi Windows... Namun, sebagian besar sistem Linux menggunakan pengaturan default yang tidak sepenuhnya aman.

Beberapa distribusi Linux dirancang untuk seaman mungkin di luar kotak, tetapi mereka cenderung sangat sulit bagi pemula, terutama pakar keamanan non-komputer.

Ubuntu adalah distribusi Linux paling populer yang digunakan saat ini. Hal ini disebabkan oleh banyak faktor, salah satunya adalah yang paling mudah bagi pengguna pemula. Ini punya sendiri sisi positif, tetapi juga karena alasan ini, ada beberapa kelemahan dalam sistem yang ditinggalkan pengembang dengan memilih keramahan pengguna. Pada artikel ini, kita akan melihat bagaimana konfigurasi keamanan dilakukan pada Ubuntu 16.04. Pengaturan ini tidak terlalu rumit, tetapi akan membantu Anda membuat sistem lebih tahan terhadap metode serangan yang paling umum.

Hal pertama yang perlu Anda ketahui adalah menjaga agar sistem Anda terus diperbarui dan diperbarui. Kerentanan baru di kernel dan perangkat lunak terus ditemukan, contohnya adalah Drity COW yang sama. Pengembang memperbaiki bug ini dengan sangat cepat, tetapi untuk menerapkan perbaikan ini ke sistem Anda, Anda perlu memperbaruinya tepat waktu.

Catatan penting lainnya adalah kata sandi pengguna. Jangan gunakan pengguna tanpa kata sandi. Jika Anda perlu berbagi komputer dengan orang lain, buat akun baru misalnya tamu. Tapi selalu gunakan kata sandi. Ruang operasi sistem Linux awalnya dibangun sebagai sistem multi-pengguna dengan mempertimbangkan keamanan untuk semua pengguna, jadi kesempatan ini tidak boleh dilewatkan. Tapi ini semua tips yang mungkin sudah Anda ketahui, mari kita lihat beberapa cara yang sangat berguna untuk meningkatkan keamanan ubuntu.

1. Menyiapkan memori bersama

Secara default, seluruh volume Berbagi memori/run/shm adalah read/write dengan kemampuan menjalankan program. Ini dianggap sebagai lubang keamanan dan banyak eksploitasi menggunakan / run / shm untuk menyerang layanan yang sedang berjalan. Untuk sebagian besar desktop, dan terutama perangkat server, disarankan untuk memasang file ini dalam mode hanya-baca. Untuk melakukan ini, tambahkan baris berikut ke /etc/fstab:

sudo vi / etc / fstab

tidak ada / jalankan / shm tmpfs default, ro 0 0

Namun demikian, beberapa program tidak akan berfungsi jika / run / shm bersifat read-only, salah satunya adalah Google chrome... Jika Anda menggunakan Google Chrome, maka kami harus mempertahankan kemampuan untuk menulis, tetapi kami dapat mencegah eksekusi program, untuk ini tambahkan baris berikut alih-alih yang disarankan di atas:

tidak ada / jalankan / shm tmpfs rw, noexec, nosuid, nodev 0 0

2. Melarang su untuk non-administrator

Selain akun Anda, Ubuntu juga memiliki tamu Akun yang dapat Anda gunakan untuk berbagi laptop dengan teman. Utilitas su memungkinkan Anda untuk menjalankan program sebagai pengguna yang berbeda. Hal ini sangat berguna dalam administrasi sistem dan penting bila diterapkan dengan benar. Namun, bagaimanapun, utilitas ini dapat diakses oleh semua pengguna Linux, dan ini sudah disalahgunakan. Untuk menolak akses akun tamu ke perintah su, jalankan:

sudo dpkg-statoverride --update - tambahkan root sudo 4750 / bin / su

3. Lindungi direktori home Anda

Direktori home default Anda akan dapat diakses oleh setiap pengguna di sistem. Jadi jika Anda memiliki akun tamu, maka tamu tersebut bisa mendapatkan akses penuh ke semua file dan dokumen pribadi Anda. Tetapi Anda hanya dapat membuatnya tersedia untuk Anda. Buka terminal dan jalankan perintah berikut:

chmod 0700 / rumah / nama pengguna

Ini menetapkan hak sedemikian rupa sehingga pemilik folder, yaitu, Anda memiliki akses ke semuanya, dan pengguna lain bahkan tidak dapat melihat isinya. Atau, Anda dapat mengatur 750 izin, yang akan memberikan akses baca ke folder Anda untuk pengguna dalam grup yang sama dengan Anda:

chmod 0750 / rumah / nama pengguna

Sekarang keamanan Ubuntu 16.04, dan terutama data pribadi Anda, akan sedikit lebih tinggi.

4. Nonaktifkan login SSH sebagai root

Secara default, di Ubuntu, Anda dapat memasukkan SSH ke sistem sebagai pengguna super. Meskipun Anda menetapkan kata sandi untuk pengguna root, ini bisa berpotensi berbahaya karena jika kata sandinya sangat sederhana, penyerang dapat memaksanya dan mengambil kendali penuh atas komputer. Layanan sshd mungkin tidak diinstal pada sistem Anda. Untuk memeriksa jalankan:

Jika Anda mendapatkan pesan koneksi ditolak, itu berarti tidak ada server SSH yang diinstal dan Anda dapat melewati langkah ini. Namun jika sudah terinstal, maka perlu dikonfigurasi menggunakan file konfigurasi /etc/ssh/sshd_config. Buka file ini dan ganti baris:

IzinRootLogin ya

IzinRootLogin no

Selesai, sekarang akan lebih sulit untuk ssh ke sistem Anda, tetapi pengaturan keamanan di ubuntu 16.04 belum selesai.

5. Instal firewall

Mungkin Anda tidak hanya menginstal server ssh di mesin Anda, tetapi juga layanan database dan server web apache atau nginx. Jika ini komputer rumah maka kemungkinan besar Anda tidak ingin orang lain dapat terhubung ke situs atau database lokal Anda. Untuk mencegahnya, Anda perlu menginstal firewall. Disarankan untuk menggunakan gufw di Ubuntu karena dirancang khusus untuk sistem ini.

Untuk menginstal, jalankan:

sudo apt install gufw

Maka Anda perlu membuka program, mengaktifkan perlindungan dan memblokir semua koneksi yang masuk. Izinkan hanya port yang diperlukan untuk browser dan lainnya program terkenal... Baca lebih lanjut dalam instruksi.

6. Perlindungan terhadap serangan MITM

Inti dari serangan MITM atau Man-in-the-Middle adalah bahwa orang lain mencegat semua paket yang Anda kirimkan ke server, dengan demikian, bisa mendapatkan semua kata sandi dan data pribadi Anda. Kami tidak dapat bertahan melawan semua serangan semacam ini, tetapi berbagai serangan MITM - serangan ARP - cukup populer di jaringan lokal publik. Menggunakan fitur protokol ARP penyerang berpura-pura menjadi router di depan komputer Anda dan Anda mengirim semua paket data Anda kepadanya. Anda dapat dengan mudah melindungi diri Anda dari ini menggunakan utilitas TuxCut.

Tidak ada program di repositori resmi, jadi untuk menginstalnya Anda perlu mengunduh paket dari GitHub:

wget https://github.com/a-atalla/tuxcut/releases/download/6.1/tuxcut_6.1_amd64.deb

Kemudian instal paket yang dihasilkan:

sudo apt install tuxcut_6.1_amd64.deb

Sebelum memulai program, mulai layanannya:

sudo systemctl start tuxcutd

Jendela utama utilitas terlihat seperti ini:

Alamat IP semua pengguna yang terhubung ke jaringan ditampilkan di sini, serta yang sesuai untuk masing-masing pengguna Alamat MAC... Jika Anda mencentang kotak Protection Mode, program akan melindungi dari serangan ARP. Anda dapat menggunakannya di jaringan publik, seperti wifi publik, di mana Anda mengkhawatirkan keselamatan Anda.

kesimpulan

Nah itu dia, sekarang pengaturan keamanan untuk Ubuntu 16.04 sudah selesai dan sistem Anda jauh lebih aman. Kami telah memblokir vektor serangan dan metode penetrasi paling umum yang digunakan oleh peretas. Jika Anda mengetahui cara lain yang berguna untuk meningkatkan keamanan di Ubuntu, tulis di komentar!

Kita semua tahu itu sistem operasi Linux banyak lebih aman daripada Windows karena arsitekturnya dan sistem distribusi akses khusus antar pengguna. Tetapi programmer juga manusia, tidak peduli bagaimana kita menyukainya, mereka juga salah. Dan karena kesalahan ini, lubang muncul di sistem di mana penyerang dapat melewati sistem perlindungan.

Kesalahan ini disebut kerentanan, mereka dapat ditemukan di berbagai program dan bahkan di inti sistem, merusak keamanannya. Dalam beberapa tahun terakhir, Linux mulai populer dan peneliti keamanan lebih memperhatikan sistem. Semakin banyak kerentanan ditemukan, dan berkat kode sumber terbuka, mereka dapat dihilangkan dengan sangat cepat. Pada artikel ini, kita akan melihat kerentanan Linux paling berbahaya yang telah ditemukan selama beberapa tahun terakhir.

Sebelum beralih ke daftar kerentanan itu sendiri, penting untuk memahami apa itu dan apa itu. Seperti yang saya katakan, kerentanan adalah bug dalam program yang memungkinkan pengguna untuk menggunakan program dengan cara yang tidak dimaksudkan oleh pengembangnya.

Ini mungkin kurangnya verifikasi untuk kebenaran data yang diterima, verifikasi sumber data dan, yang paling menarik, ukuran data. Kerentanan yang paling berbahaya adalah kerentanan yang memungkinkan eksekusi kode arbitrer. V memori akses acak semua data berukuran tertentu dan program dirancang untuk menulis data dari pengguna dengan ukuran tertentu ke memori. Jika pengguna mengirimkan lebih banyak data, maka itu akan menimbulkan kesalahan.

Tetapi jika programmer membuat kesalahan, data akan menimpa kode program dan prosesor akan mencoba mengeksekusinya, sehingga menciptakan kerentanan buffer overflow.

Juga, semua kerentanan dapat dibagi menjadi kerentanan lokal, yang hanya berfungsi jika peretas memiliki akses ke komputer lokal dan remote, bila ada cukup akses melalui Internet. Sekarang mari kita beralih ke daftar kerentanan.

1. SAPI Kotor

Pertama dalam daftar kami adalah kerentanan baru yang ditemukan pada musim gugur ini. Nama Sapi Kotor adalah singkatan dari Copy on Write. Kesalahan terjadi di berkas sistem saat menyalin saat merekam. Ini adalah kerentanan lokal yang memungkinkan setiap pengguna yang tidak memiliki hak untuk mendapatkan akses penuh ke sistem.

Singkatnya, untuk mengeksploitasi kerentanan, Anda memerlukan dua file, satu hanya dapat ditulis atas nama pengguna super, yang lain untuk kami. Kami mulai menulis data ke file kami dan membaca dari file superuser berkali-kali, setelah waktu tertentu akan tiba saatnya buffer kedua file akan bercampur dan pengguna akan dapat menulis data ke file, catatan yang tidak dapat diakses olehnya, sehingga Anda dapat memberikan diri Anda sendiri hak dasar dalam sistem.

Kerentanan ada di kernel selama sekitar 10 tahun, tetapi setelah ditemukan dengan cepat dihilangkan, meskipun masih ada jutaan perangkat Andoid di mana kernel belum diperbarui dan tidak berpikir dan di mana kerentanan ini dapat dieksploitasi. Kerentanan menerima kode CVE-2016-5195.

2. Kerentanan Glibc

Kerentanan menerima kode CVE-2015-7547. Ini adalah salah satu kerentanan open source yang paling banyak dibicarakan. Pada Februari 2016, terungkap bahwa pustaka Glibc memiliki kerentanan yang sangat serius yang memungkinkan penyerang mengeksekusi kode mereka pada sistem jarak jauh.

Penting untuk dicatat bahwa Glibc adalah sebuah implementasi perpustakaan standar C dan C ++, yang digunakan oleh sebagian besar program Linux, termasuk layanan dan bahasa pemrograman seperti PHP, Python, Perl.

Terjadi kesalahan dalam kode penguraian respons server DNS... Dengan demikian, kerentanan dapat dimanfaatkan oleh peretas, yang DNS-nya diakses oleh mesin yang rentan, serta dengan melakukan serangan MITM. Tetapi kerentanan memberi kontrol penuh atas sistem.

Kerentanan telah ada di perpustakaan sejak 2008, tetapi setelah terdeteksi, tambalan dengan cepat dirilis.

3. Sakit hati

Pada tahun 2014, salah satu kerentanan paling serius dalam skala dan dampak ditemukan. Itu disebabkan oleh bug di modul heartdead dari program OpenSSL, maka nama Heartbleed. Kerentanan memungkinkan penyerang untuk mendapatkan akses langsung ke 64 kilobyte RAM server, dan serangan dapat diulang sampai semua memori dibaca.

Terlepas dari kenyataan bahwa perbaikan dirilis dengan sangat cepat, banyak situs dan aplikasi terpengaruh. Faktanya, semua situs yang menggunakan HTTPS untuk melindungi lalu lintas rentan. Penyerang bisa mendapatkan kata sandi pengguna, data pribadi mereka, dan semua yang ada di memori pada saat serangan. Kerentanan menerima kode CVE-2014-0160.

4. Demam panggung

Jika kerentanan diberi nama kode, itu jelas berarti bahwa kerentanan itu layak mendapat perhatian. Kerentanan Stagerfight tidak terkecuali. Benar, ini sebenarnya bukan masalah Linux. Stagefright adalah library untuk menangani format multimedia di Android.

Ini diimplementasikan dalam C ++, yang berarti melewati semua mekanisme keamanan Java. Pada tahun 2015, seluruh kelompok kerentanan ditemukan yang memungkinkan eksekusi kode arbitrer dari jarak jauh pada sistem. Ini adalah CVE-2015-1538, CVE-2015-1539, CVE-2015-3824, CVE-2015-3826, CVE-2015-3827, CVE-2015-3828 dan CVE-2015-3829.

Penyerang hanya perlu mengirim MMS ke smartphone yang rentan dengan file media yang dimodifikasi secara khusus, dan dia menerima kontrol penuh atas perangkat dengan kemampuan untuk menulis dan membaca data dari kartu memori. Kerentanan telah ditambal oleh pengembang Android tetapi masih jutaan perangkat tetap rentan.

5. Kerentanan kernel zero-day

Ini adalah kerentanan lokal yang memungkinkan pengguna saat ini diangkat ke root karena kesalahan dalam sistem untuk menangani data kriptografi kernel yang disimpan dalam memori. Ditemukan pada Februari 2016 dan mencakup semua kernel mulai dari 3.8, yang berarti bahwa kerentanan telah ada selama 4 tahun.

Kesalahan bisa saja dieksploitasi oleh peretas atau malware perangkat lunak untuk meningkatkan kekuatan mereka dalam sistem, tetapi dengan cepat diperbaiki.

6. Kerentanan di MySQL

Kerentanan ini adalah kode CVE-2016-6662 dan mempengaruhi semua versi yang tersedia dari server database MySQL (5.7.15, 5.6.33 dan 5.5.52), database Oracle, dan klon MariaDB dan PerconaDB.

Penyerang dapat memperoleh akses penuh ke sistem melalui kueri SQL sebuah kode dilewatkan yang memungkinkan mengganti my.conf dengan versinya sendiri dan memulai ulang server. Ada juga kesempatan untuk tampil kode berbahaya dengan hak pengguna super.

MariaDB dan PerconaDB merilis tambalan cukup cepat, Oracle bereaksi, tetapi jauh kemudian.

7. Kejutan

Kerentanan ini ditemukan pada tahun 2014 sebelum ada selama 22 tahun. Dia diberi kode CVE-2014-6271 dan nama kode Shellshock. Kerentanan ini sebanding dalam tingkat keparahannya dengan Heartbleed yang sudah dikenal. Ini disebabkan oleh bug di penerjemah perintah Bash, yang merupakan default pada sebagian besar distribusi Linux.

Bash memungkinkan Anda untuk mendeklarasikan variabel lingkungan tanpa otentikasi pengguna, dan bersama-sama Anda dapat menjalankan perintah apa pun di dalamnya. Ini sangat berbahaya dalam skrip CGI yang didukung oleh sebagian besar situs. Tidak hanya server yang rentan, tetapi juga komputer pribadi pengguna, router, dan perangkat lainnya. Faktanya, penyerang dapat mengeksekusi perintah apa pun dari jarak jauh; ini adalah kendali jarak jauh lengkap tanpa otentikasi.

Semua versi Bash, termasuk 4.3, terpengaruh, meskipun setelah masalah ditemukan, pengembang dengan cepat merilis perbaikan.

8. Quadroot

Ini adalah serangkaian kerentanan di Android yang ditemukan pada Agustus 2016. Mereka menerima kode CVE-2016-5340, CVE-2016-2059, CVE-2016-2504, CVE-2016-2503. Lebih dari 900 juta tunduk pada kesalahan perangkat Android... Semua kerentanan telah ditemukan di driver ARM prosesor Qualcomm dan semuanya dapat dieksploitasi untuk mendapatkan akar akses ke perangkat.

Seperti DirtyCOW, Anda tidak memerlukan kredensial apa pun di sini, Anda hanya perlu menginstal aplikasi jahat dan itu akan bisa mendapatkan semua data Anda dan mentransfernya ke penyerang.

9. Kerentanan di OpenJDK

Ini adalah kerentanan linux 2016 yang sangat serius di mesin Java OpenJDK dengan kode CVE-2016-0636 dan mempengaruhi semua pengguna yang menjalankan Oracle Java SE 7 Update 97 dan 8 Update 73 dan 74 untuk Windows, Solaris, Linux dan Mac OS X. Kerentanan ini Memungkinkan penyerang mengeksekusi kode arbitrer di luar mesin Java jika Anda membuka halaman khusus di browser dengan versi Java yang rentan.

Ini memungkinkan penyerang mendapatkan akses ke kata sandi, data pribadi, dan menjalankan program di komputer Anda. Di semua versi kesalahan Jawa sangat cepat dikoreksi, sudah ada sejak 2013.

10. Kerentanan protokol HTTP/2

Ini adalah serangkaian kerentanan yang ditemukan pada tahun 2016 dalam protokol HTTP / 2. Mereka menerima kode CVE-2015-8659, CVE-2016-0150, CVE-2016-1546, CVE-2016-2525, CVE-2016-1544. Semua implementasi protokol ini di Apache, Nginx Microsoft, Jetty, dan nghttp2 terpengaruh.

Semuanya memungkinkan penyerang untuk secara dramatis memperlambat server web dan melakukan serangan penolakan layanan. Misalnya, salah satu kesalahan menyebabkan kemungkinan mengirim pesan kecil, yang didekompresi menjadi gigabyte di server. Bug diperbaiki dengan sangat cepat dan karenanya tidak menghasilkan banyak buzz di komunitas.

Apakah Anda aman?

Pada artikel ini, kami telah membahas kerentanan Linux paling berbahaya di tahun 2016, 2015 dan 2014. Sebagian besar dari mereka dapat menyebabkan kerusakan serius pada sistem jika tidak diperbaiki tepat waktu. Berkat kode sumber terbuka, kerentanan Linux seperti itu terdeteksi secara efisien dan diperbaiki dengan cepat. Ingatlah untuk memperbarui sistem Anda. Satu-satunya masalah tetap dengan Android. Beberapa perangkat tidak lagi menerima pembaruan dan belum ada solusi untuk masalah ini.

Ada kesalahpahaman umum bahwa server Linux adalah yang paling aman dan terlindungi dari gangguan luar. Sayangnya, ini tidak terjadi, keamanan server tergantung pada sejumlah faktor dan langkah-langkah untuk memastikannya dan secara praktis tidak tergantung pada sistem operasi yang digunakan.

Kami memutuskan untuk memulai serangkaian artikel yang didedikasikan untuk keamanan jaringan dengan Ubuntu Server, karena solusi berdasarkan platform ini sangat menarik bagi pembaca kami dan karena banyak orang percaya bahwa solusi Linux itu sendiri aman.

Pada saat yang sama, router dengan alamat IP khusus adalah "gerbang" ke jaringan lokal, dan hanya administrator yang akan menentukan apakah gerbang ini akan menjadi penghalang yang andal atau akan berubah menjadi gerbang dacha yang ditutup dengan paku.

Kesalahpahaman umum lainnya, alasan dalam gaya: "tetapi siapa yang membutuhkannya, server kami, kami tidak memiliki apa pun yang menarik." Memang, jaringan lokal Anda mungkin tidak menarik bagi penyusup, tetapi mereka dapat menggunakan server yang disusupi untuk mengirim spam, serangan ke server lain, proxy anonim, singkatnya, sebagai titik awal untuk tindakan gelap mereka.

Dan ini sudah tidak menyenangkan dan dapat menjadi sumber berbagai masalah: dari penyedia hingga lembaga penegak hukum. Dan tentang penyebaran virus, pencurian, dan perusakan informasi penting itu juga tidak boleh dilupakan, serta fakta bahwa waktu henti perusahaan menyebabkan kerugian yang cukup nyata.

Terlepas dari kenyataan bahwa artikel ini adalah tentang Server Ubuntu, pertama-tama kita akan melihat masalah umum keamanan, yang sama-sama relevan dengan platform apa pun dan merupakan dasar, tanpa asimilasi yang tidak masuk akal untuk membahas masalah ini secara lebih rinci.

Di mana keselamatan dimulai?

Tidak, keamanan tidak dimulai dengan firewall, tidak dimulai dengan perangkat keras sama sekali, keamanan dimulai dari pengguna. Lagi pula, apa gunanya pintu besi paling keren yang dipasang oleh spesialis terbaik jika pemiliknya meninggalkan kunci di bawah karpet?

Oleh karena itu, hal pertama yang harus Anda lakukan adalah melakukan audit keamanan. Jangan terintimidasi oleh kata ini, semuanya tidak begitu sulit: gambarlah rencana skematis jaringan, di mana Anda menandai area aman, area potensi bahaya dan area bahaya tinggi, dan juga membuat daftar pengguna yang memiliki ( harus memiliki akses) ke area ini.

Zona aman harus mencakup sumber daya internal jaringan yang tidak dapat diakses dari luar dan yang diizinkan. level rendah keamanan. Ini bisa berupa workstation, file server, dll. akses perangkat yang terbatas pada jaringan lokal perusahaan.

Zona bahaya potensial termasuk server dan perangkat yang tidak memiliki akses langsung ke jaringan eksternal, tetapi layanan individualnya dapat diakses dari luar, misalnya, server web dan email yang terletak di belakang firewall, tetapi pada saat yang sama melayani permintaan dari jaringan eksternal.

Area berbahaya harus mencakup perangkat yang dapat diakses langsung dari luar, idealnya harus satu router.

Jika memungkinkan, zona yang berpotensi berbahaya harus dipindahkan ke subnet terpisah - zona demiliterisasi (DMZ), yang dipisahkan dari jaringan utama oleh firewall tambahan.

Perangkat di jaringan lokal seharusnya hanya memiliki akses ke layanan di DMZ yang mereka butuhkan, misalnya SMTP, POP3, HTTP, koneksi lain harus diblokir. Ini akan memungkinkan Anda untuk secara andal mengisolasi penyerang atau malware yang mengeksploitasi kerentanan dalam layanan terpisah, DMZ, dengan menolak akses mereka ke jaringan utama.

Secara fisik, DMZ dapat diatur dengan menginstal server / firewall perangkat keras yang terpisah atau menambahkan kartu jaringan tambahan ke router, tetapi dalam kasus terakhir, Anda harus memperhatikan keamanan router. Tetapi bagaimanapun juga, mengamankan satu server jauh lebih mudah daripada mengamankan sekelompok server.

Langkah selanjutnya adalah menganalisis daftar pengguna, apakah mereka semua memerlukan akses ke DMZ dan ke router (dengan pengecualian layanan publik), perhatian khusus harus diberikan kepada pengguna yang terhubung dari luar.

Biasanya, ini memerlukan langkah yang sangat tidak populer - menegakkan kebijakan kata sandi. Semua kata sandi pengguna yang memiliki akses ke layanan kritis dan yang memiliki kemampuan untuk terhubung dari luar harus mengandung setidaknya 6 karakter dan mengandung, selain huruf kecil, simbol dari dua kategori tiga: huruf besar, angka, non-abjad karakter.

Selain itu, kata sandi tidak boleh menyertakan nama pengguna atau bagiannya, tidak mengandung tanggal dan nama yang dapat dikaitkan dengan pengguna dan, sebaiknya, bukan kata kamus.

Merupakan ide bagus untuk memulai praktik mengganti kata sandi setiap 30-40 hari. Jelas bahwa kebijakan seperti itu dapat menyebabkan penolakan dari pengguna, tetapi Anda harus selalu ingat bahwa kata sandi seperti 123 atau qwerty sama dengan meninggalkan kunci di bawah karpet.

Keamanan server tidak lebih.

Sekarang kita memiliki gagasan tentang apa yang ingin kita lindungi dan dari apa, mari beralih ke server itu sendiri. Buat daftar semua layanan dan layanan, lalu pikirkan apakah semuanya diperlukan di server ini, atau dapat dibawa ke suatu tempat.

Semakin sedikit layanan, semakin mudah untuk memastikan keamanan, semakin kecil kemungkinan server dikompromikan melalui kerentanan kritis di salah satunya.

Konfigurasikan layanan yang melayani jaringan area lokal(misalnya squid) sehingga mereka hanya menerima permintaan dari antarmuka lokal. Semakin sedikit layanan yang tersedia secara eksternal, semakin baik.

Penolong yang baik dalam keamanan adalah pemindai kerentanan yang harus dipindai paling depan server. Kami menggunakan versi demo dari salah satu produk paling terkenal - XSpider 7.7.

Pemindai menunjukkan port terbuka, mencoba menentukan jenis layanan yang berjalan dan, jika berhasil, kerentanannya. Seperti yang Anda lihat, sistem yang dikonfigurasi dengan benar cukup aman, tetapi Anda tidak boleh meninggalkan kunci di bawah karpet, keberadaan port terbuka 1723 (VPN) dan 3389 (RDP, diteruskan ke server terminal) pada router adalah bagus alasan untuk memikirkan kebijakan kata sandi.

Secara terpisah, ada baiknya berbicara tentang keamanan SSH, layanan ini biasanya digunakan oleh administrator untuk kendali jarak jauh server dan semakin menarik bagi penjahat dunia maya. Pengaturan SSH disimpan dalam file / etc / ssh / sshd_config, semua perubahan yang dijelaskan di bawah dibuat untuk itu. Pertama-tama, Anda harus menonaktifkan otorisasi di bawah pengguna root, untuk ini tambahkan opsi:

IzinRootLogin no

Sekarang penyerang harus menebak tidak hanya kata sandi, tetapi juga login, sementara dia masih tidak tahu kata sandi superuser (kami harap itu tidak cocok dengan kata sandi Anda). Semua tugas administratif saat menghubungkan dari luar harus dilakukan dari bawah sudo dengan masuk sebagai pengguna yang tidak memiliki hak istimewa.

Perlu secara eksplisit menentukan daftar pengguna yang diizinkan, sementara Anda dapat menggunakan catatan seperti [dilindungi email] yang memungkinkan pengguna tertentu untuk terhubung hanya dari host yang ditentukan. Misalnya, untuk mengizinkan pengguna ivanov terhubung dari rumah (IP 1.2.3.4), tambahkan entri berikut:

IzinkanPengguna [dilindungi email]

Juga larang penggunaan usang dan kurang protokol aman SSH1, hanya mengizinkan versi kedua dari protokol, untuk melakukan ini, berikan baris berikutnya untuk melihat:

Protokol 2

Terlepas dari semua tindakan yang diambil, upaya untuk terhubung ke SSH dan layanan publik lainnya akan tetap dilakukan untuk mencegah tebakan kata sandi, gunakan utilitas fail2ban, yang memungkinkan Anda untuk secara otomatis mencekal pengguna setelah beberapa kali gagal login. Anda dapat menginstalnya dengan perintah:

Sudo apt-get install fail2ban

Utilitas ini siap bekerja segera setelah instalasi, namun, kami menyarankan Anda untuk segera mengubah beberapa parameter, untuk ini, buat perubahan pada file /etc/fail2ban/jail.conf... Secara default, hanya akses SSH yang dikontrol dan waktu ban adalah 10 menit (600 detik), menurut kami perlu ditingkatkan dengan mengubah opsi berikut:

Bantime = 6000

Kemudian gulir file dan aktifkan bagian untuk layanan yang berjalan di sistem Anda dengan mengatur parameter setelah nama bagian yang sesuai diaktifkan dalam sebuah keadaan benar, misalnya untuk layanan proftpd akan terlihat seperti ini:


diaktifkan = benar

Parameter penting lainnya coba lagi, yang bertanggung jawab atas jumlah maksimum upaya koneksi. Setelah mengubah pengaturan, jangan lupa untuk me-restart layanan:

Sudo /etc/init.d/fail2ban restart

Anda dapat melihat log utilitas di /var/log/fail2ban.log.

Pada LinuxCon tahunan pada tahun 2015, pencipta kernel GNU / Linux Linus Torvalds berbagi pandangannya tentang keamanan sistem. Dia menekankan perlunya memitigasi efek keberadaan bug tertentu dengan perlindungan yang kompeten, sehingga jika satu komponen tidak berfungsi, lapisan berikutnya akan tumpang tindih.

Dalam artikel ini, kami akan mencoba membahas topik ini dari sudut pandang praktis:

7. Instal firewall

Baru-baru ini ada kerentanan baru yang memungkinkan serangan DDoS di server Linux. Sebuah bug di kernel sistem muncul dengan versi 3.6 pada akhir 2012. Kerentanan memungkinkan peretas untuk menyuntikkan virus ke file unduhan, halaman web, dan mengekspos koneksi Tor, dan tidak perlu banyak upaya untuk meretas - metode spoofing IP akan berhasil.

Kerugian maksimum untuk koneksi HTTPS atau SSH terenkripsi adalah mengganggu koneksi, tetapi penyerang dapat menempatkan konten baru di lalu lintas yang tidak terlindungi, termasuk perangkat lunak perusak... Untuk melindungi dari serangan semacam itu, firewall cocok.

Blokir akses dengan Firewall

Firewall adalah salah satu alat yang paling penting untuk memblokir yang tidak diinginkan lalu lintas masuk... Kami menyarankan Anda hanya mengizinkan lalu lintas yang benar-benar Anda butuhkan dan menolak yang lainnya sepenuhnya.

Sebagian besar distribusi Linux memiliki pengontrol iptables untuk penyaringan paket. Biasanya mereka menggunakannya pengguna berpengalaman, dan untuk konfigurasi yang disederhanakan, Anda dapat menggunakan utilitas UFW di Debian / Ubuntu atau FirewallD di Fedora.

8. Nonaktifkan layanan yang tidak perlu

Para ahli dari University of Virginia menyarankan Anda mematikan semua layanan yang tidak Anda gunakan. Beberapa proses latar belakang diatur ke autoload dan dijalankan sampai sistem dimatikan. Untuk mengkonfigurasi program ini, Anda perlu memeriksa skrip init. Layanan dapat dimulai melalui inetd atau xinetd.

Jika sistem Anda dikonfigurasi melalui inetd, maka di file /etc/inetd.conf Anda dapat mengedit daftar program "daemon" latar belakang; untuk menonaktifkan pemuatan layanan, cukup beri tanda "#" di awal baris, mengubahnya dari yang dapat dieksekusi menjadi komentar.

Jika sistem menggunakan xinetd, maka konfigurasinya akan berada di direktori /etc/xinetd.d. Setiap file direktori mendefinisikan layanan yang dapat dinonaktifkan dengan menentukan disable = yes, seperti dalam contoh ini:

Jari layanan (socket_type = streaming tunggu = tidak ada pengguna = tidak ada server = /usr/sbin/in.fingerd disable = yes)
Perlu juga memeriksa proses persisten yang tidak dikelola oleh inetd atau xinetd. Anda dapat mengonfigurasi skrip startup di direktori /etc/init.d atau /etc/inittab. Setelah perubahan dilakukan, jalankan perintah sebagai akun root.

/etc/rc.d/init.d/inet restart

9. Lindungi server secara fisik

Tidak mungkin untuk sepenuhnya bertahan melawan serangan penyerang dengan akses fisik ke server. Oleh karena itu, perlu untuk mengamankan ruangan tempat sistem Anda berada. Pusat data secara serius memantau keamanan, membatasi akses ke server, memasang kamera keamanan, dan menetapkan keamanan permanen.

Untuk masuk ke data center, semua pengunjung harus melalui tahapan otentikasi tertentu. Juga sangat disarankan untuk menggunakan sensor gerak di semua area tengah.

10. Lindungi server dari akses yang tidak sah

Sistem akses yang tidak sah atau IDS mengumpulkan data tentang konfigurasi sistem dan file dan kemudian membandingkan data ini dengan perubahan baru untuk menentukan apakah mereka berbahaya bagi sistem.

Misalnya, alat Tripwire dan Aide mengumpulkan database file sistem dan lindungi mereka dengan satu set kunci. Psad digunakan untuk melacak aktivitas mencurigakan menggunakan laporan firewall.

Bro dirancang untuk memantau jaringan, melacak pola aktivitas yang mencurigakan, mengumpulkan statistik, menjalankan perintah sistem, dan menghasilkan peringatan. RKHunter dapat digunakan untuk melindungi dari virus, paling sering rootkit. Utilitas ini memeriksa sistem Anda untuk mengetahui kerentanan dan dapat mengidentifikasi pengaturan yang tidak aman dalam aplikasi.

Kesimpulan

Alat dan pengaturan di atas akan membantu Anda melindungi sebagian sistem, tetapi keamanan bergantung pada perilaku dan pemahaman Anda tentang situasi tersebut. Tanpa perhatian, kehati-hatian, dan pembelajaran mandiri yang konstan, semua tindakan perlindungan mungkin tidak akan berhasil.