Linux Hardenining: petua untuk melindungi distro anda dan menjadikannya lebih selamat

Mengeraskan Linux dua tux, satu tanpa pertahanan dan satu dengan baju besi

Banyak artikel telah diterbitkan di Pengedaran Linux lebih selamat, seperti TAILS (yang memastikan privasi dan kerahsiaan anda di web), Whonix (Linux untuk keselamatan paranoid) dan distro lain yang bertujuan untuk selamat. Tetapi tentu saja, tidak semua pengguna ingin menggunakan sebaran ini. Itulah sebabnya dalam artikel ini kami akan memberikan serangkaian cadangan untuk «Pengerasan Linux«, Jadikan distro anda (apa sahaja) lebih selamat.

Red Hat, SUSE, CentOS, openSUSE, Ubuntu, Debian, Arch Linux, Linux Mint, ... apa perbezaannya. Sebarang pengedaran boleh selamat sebagai yang paling selamat sekiranya anda mengetahuinya secara mendalam dan tahu melindungi diri dari bahaya yang mengancam anda. Dan untuk ini anda boleh bertindak pada banyak peringkat, bukan sahaja di peringkat perisian, tetapi juga di peringkat perkakasan.

Arnab keselamatan generik:

Litar pengunci keselamatan perkakasan

Dalam bahagian ini saya akan memberikan beberapa petua yang sangat asas dan ringkas yang tidak memerlukan pengetahuan komputer untuk memahaminya, mereka hanya akal tetapi kadang-kadang kita tidak melaksanakannya kerana kecuaian atau kecerobohan:

  • Jangan memuat naik data peribadi atau sensitif ke awan. Awan, tidak kira sama ada percuma atau tidak dan sama ada lebih atau kurang selamat, adalah alat yang baik untuk menyediakan data anda ke mana sahaja anda pergi. Tetapi cuba jangan memuat naik data yang tidak ingin "dikongsi" dengan penonton. Jenis data yang lebih sensitif ini mesti dibawa dalam media yang lebih peribadi, seperti kad SD atau pendrive.
  • Sekiranya anda menggunakan komputer untuk mengakses Internet dan bekerja dengan data penting, misalnya, bayangkan bahawa anda telah mengikuti kegilaan BYOD dan membawa pulang beberapa data perniagaan. Dalam keadaan seperti ini, jangan bekerja dalam talian, cuba terputus (mengapa anda mahu disambungkan ke tempat kerja misalnya dengan LibreOffice menyunting teks?). Komputer yang terputus adalah yang paling selamat, ingatlah.
  • Berkaitan dengan perkara di atas, jangan tinggalkan data penting pada cakera keras tempatan semasa bekerja dalam talian. Saya mengesyorkan agar anda mempunyai cakera keras luaran atau jenis memori lain (kad memori, pemacu pen, dll.) Di mana anda mempunyai maklumat ini. Oleh itu, kita akan meletakkan penghalang antara peralatan yang bersambung dan memori "tidak bersambung" di mana data pentingnya.
  • Buat salinan sandaran data yang anda anggap menarik atau tidak mahu hilang. Apabila mereka menggunakan kerentanan untuk memasuki komputer anda dan meningkatkan hak istimewa, penyerang akan dapat menghapus atau memanipulasi data apa pun tanpa halangan. Itulah sebabnya lebih baik mempunyai cadangan.
  • Jangan tinggalkan data mengenai kelemahan anda di forum atau komen di laman web. Jika misalnya anda mempunyai masalah keselamatan di komputer anda dan mempunyai port terbuka yang ingin anda tutup, jangan tinggalkan masalah anda di forum untuk mendapatkan bantuan, kerana ia dapat digunakan untuk menentang anda. Seseorang yang mempunyai niat buruk dapat menggunakan maklumat tersebut untuk mencari mangsa yang sempurna. Lebih baik anda mencari juruteknik yang dipercayai untuk membantu anda menyelesaikannya. Adalah biasa bagi syarikat untuk meletakkan iklan di Internet seperti "Saya mencari pakar keselamatan IT" atau "Personel diperlukan untuk jabatan keselamatan. Ini mungkin menunjukkan kemungkinan kelemahan syarikat tersebut dan penjenayah siber boleh menggunakan jenis halaman ini untuk mencari mangsa yang mudah ... Juga tidak baik untuk anda meninggalkan maklumat mengenai sistem yang anda gunakan dan versi, seseorang boleh menggunakan eksploitasi untuk mengeksploitasi kelemahan versi itu. Ringkasnya, semakin banyak penyerang tidak menyedari anda, semakin sukar baginya untuk menyerang. Perlu diingat bahawa penyerang biasanya melakukan proses sebelum serangan yang disebut "pengumpulan informasi" dan ini terdiri dari mengumpulkan informasi tentang korban yang dapat digunakan untuk melawan mereka.
  • Pastikan peralatan anda dikemas kini Dengan kemas kini dan tambalan terbaru, ingatlah bahawa pada banyak kesempatan, ini bukan sahaja dapat meningkatkan fungsi, tetapi juga memperbaiki bug dan kerentanan agar tidak dieksploitasi.
  • Gunakan kata laluan yang kuat. Jangan sekali-kali meletakkan nama yang ada di dalam kamus atau kata laluan seperti 12345, kerana dengan serangan kamus mereka dapat dikeluarkan dengan cepat. Juga, jangan tinggalkan kata laluan secara lalai, kerana mudah dikesan. Jangan gunakan tarikh lahir, nama saudara-mara, haiwan kesayangan atau mengenai selera anda. Kata laluan seperti itu dapat ditebak dengan mudah oleh kejuruteraan sosial. Sebaiknya gunakan kata laluan panjang dengan angka, huruf besar dan huruf kecil, dan simbol. Juga, jangan gunakan kata laluan induk untuk semuanya, iaitu, jika anda mempunyai akaun e-mel dan sesi sistem operasi, jangan gunakan yang sama untuk kedua-duanya. Ini adalah sesuatu yang terdapat di Windows 8 hingga ke bawah, kerana kata laluan untuk masuk sama dengan akaun Hotmail / Outlook anda. Kata laluan selamat adalah jenis: "auite3YUQK && w-". Dengan kekerasan ia dapat dicapai, tetapi masa yang diperuntukkan untuk itu menjadikannya tidak sepadan ...
  • Jangan pasang pakej dari sumber yang tidak diketahui dan jika boleh. Gunakan pakej kod sumber dari laman web rasmi program yang ingin anda pasang. Sekiranya bungkusan itu dipersoalkan, saya cadangkan anda menggunakan persekitaran kotak pasir seperti Glimpse. Apa yang anda akan capai ialah semua aplikasi yang anda pasang di Glimpse dapat berjalan seperti biasa, tetapi ketika mencoba membaca atau menulis data, itu hanya tercermin dalam lingkungan kotak pasir, mengasingkan sistem anda dari masalah.
  • penggunaan keistimewaan sistem sesedikit mungkin. Dan apabila anda memerlukan keistimewaan untuk sesuatu tugas, disarankan agar anda menggunakan "sudo" sebaiknya sebelum "su".

Petua teknikal lain yang lebih sedikit:

Keselamatan Komputer, padlock pada papan kekunci

Sebagai tambahan kepada nasihat yang dilihat di bahagian sebelumnya, sangat disarankan agar anda mengikuti langkah-langkah berikut untuk menjadikan distro anda lebih selamat. Perlu diingat bahawa pengedaran anda boleh sekuat yang anda mahukanMaksud saya, semakin banyak masa yang anda habiskan untuk mengkonfigurasi dan mengamankan, semakin baik.

Suite keselamatan di Linux dan Firewall / UTM:

penggunaan SELinux atau AppArmor untuk menguatkan Linux anda. Sistem ini agak rumit, tetapi anda dapat melihat manual yang akan banyak membantu anda. AppArmor boleh menyekat aplikasi yang sensitif terhadap eksploitasi dan tindakan proses yang tidak diingini. AppArmor telah dimasukkan dalam kernel Linux pada versi 2.6.36. Fail konfigurasi disimpan di /etc/apparmor.d

Tutup semua port yang tidak anda gunakan kerap. Akan menarik walaupun anda mempunyai Firewall fizikal, itulah yang terbaik. Pilihan lain ialah mendedikasikan peralatan lama atau tidak terpakai untuk melaksanakan UTM atau Firewall untuk rangkaian rumah anda (anda boleh menggunakan pengedaran seperti IPCop, m0n0wall, ...). Anda juga boleh mengkonfigurasi iptables untuk menyaring apa yang tidak anda mahukan. Untuk menutupnya, anda boleh menggunakan "iptables / netfilter" yang mengintegrasikan kernel Linux itu sendiri. Saya cadangkan anda merujuk manual mengenai netfilter dan iptables, kerana ia cukup rumit dan tidak dapat dijelaskan dalam artikel. Anda dapat melihat port yang anda buka dengan menaip terminal:

netstat -nap

Perlindungan fizikal peralatan kami:

Anda juga boleh melindungi peralatan anda secara fizikal sekiranya anda tidak mempercayai orang di sekeliling anda atau anda harus meninggalkan peralatan anda di tempat yang dapat dicapai oleh orang lain. Untuk ini, anda boleh mematikan but dari cara lain daripada cakera keras anda di BIOS / UEFI dan kata laluan melindungi BIOS / UEFI sehingga mereka tidak dapat mengubahnya tanpanya. Ini akan menghalang seseorang daripada mengambil USB bootable atau hard drive luaran dengan sistem operasi yang terpasang dan dapat mengakses data anda daripadanya, tanpa perlu masuk ke distro anda. Untuk melindunginya, akses BIOS / UEFI, di bahagian Keselamatan anda boleh menambahkan kata laluan.

Anda boleh melakukan perkara yang sama dengan GRUB, melindunginya dengan kata laluan:

grub-mkpasswd-pbkdf2

Masuk ke kata laluan untuk GRUB yang anda mahukan dan ia akan dikodkan dalam SHA512. Kemudian salin kata laluan yang dienkripsi (yang muncul di "PBKDF2 Anda") untuk digunakan kemudian:

sudo nano /boot/grub/grub.cfg

Buat pengguna pada awal dan letakkan kata laluan yang disulitkan. Contohnya, jika kata laluan yang disalin sebelumnya adalah "grub.pbkdf2.sha512.10000.58AA8513IEH723":

set superusers=”isaac”
password_pbkdf2 isaac grub.pbkdf2.sha512.10000.58AA8513IEH723

Dan simpan perubahan ...

Kurang perisian = lebih banyak keselamatan:

Minimumkan bilangan pakej yang dipasang. Pasang sahaja yang anda perlukan dan jika anda berhenti menggunakannya, yang terbaik adalah menyahpasangnya. Semakin kurang perisian yang anda miliki, semakin sedikit kelemahan. Ingatlah. Perkara yang sama saya nasihatkan kepada anda dengan perkhidmatan atau daemon program tertentu yang dijalankan semasa sistem dimulakan. Sekiranya anda tidak menggunakannya, letakkan dalam mod "mati".

Padamkan maklumat dengan selamat:

Apabila anda memadam maklumat cakera, kad memori atau partition, atau hanya fail atau direktori, lakukan dengan selamat. Walaupun anda fikir anda telah menghapusnya, ia dapat dipulihkan dengan mudah. Sama seperti secara fizikal, tidak berguna membuang dokumen dengan data peribadi ke dalam tong sampah, kerana seseorang dapat mengeluarkannya dari bekas dan melihatnya, jadi anda harus menghancurkan kertas, perkara yang sama berlaku dalam pengkomputeran. Contohnya, anda boleh mengisi memori dengan data rawak atau kosong untuk menimpa data yang tidak mahu anda dedahkan. Untuk ini, anda boleh menggunakannya (untuk berfungsi, anda mesti menjalankannya dengan hak istimewa dan mengganti / dev / sdax dengan peranti atau partition yang anda mahu gunakan dalam kes anda ...):

dd if=/dev/zeo of=/dev/sdax bs=1M
dd if=/dev/unrandom of=/dev/sdax bs=1M

Jika apa yang anda mahukan adalah padamkan fail tertentu selama-lamanya, anda boleh menggunakan "shred". Sebagai contoh, bayangkan bahawa anda ingin memadam fail yang disebut passwords.txt di mana anda mempunyai kata laluan sistem yang ditulis. Kita boleh menggunakan cincang dan menimpa contohnya 26 kali di atas untuk menjamin bahawa ia tidak dapat dipulihkan selepas penghapusan:

shred -u -z -n 26 contraseñas.txt

Terdapat alat seperti HardWipe, Eraser atau Secure Delete yang boleh anda pasangkan "Hapus" (hapus secara kekal) kenangan, Partition SWAP, RAM, dll.

Akaun dan kata laluan pengguna:

Tingkatkan sistem kata laluan dengan alat seperti S / KEY atau SecurID untuk membuat skema kata laluan dinamik. Pastikan tiada kata laluan yang dienkripsi dalam direktori / etc / passwd. Kita harus menggunakan / etc / shadow dengan lebih baik. Untuk ini, anda boleh menggunakan "pwconv" dan "grpconv" untuk membuat pengguna dan kumpulan baru, tetapi dengan kata laluan tersembunyi. Perkara lain yang menarik ialah mengedit fail / etc / default / passwd untuk menghabiskan kata laluan anda dan memaksa anda untuk memperbaharuinya secara berkala. Oleh itu, jika mereka mendapat kata laluan, kata kunci tersebut tidak akan kekal selamanya, kerana anda akan kerap menukarnya. Dengan fail /etc/login.defs anda juga dapat memperkuat sistem kata laluan. Edit, cari entri PASS_MAX_DAYS dan PASS_MIN_DAYS untuk menentukan hari minimum dan maksimum kata laluan yang boleh bertahan sebelum habis masa berlakunya. PASS_WARN_AGE memaparkan mesej untuk memberitahu anda bahawa kata laluan akan berakhir dalam masa X hari tidak lama lagi. Saya menasihati anda untuk melihat manual mengenai fail ini, kerana penyertaannya sangat banyak.

yang akaun yang tidak digunakan dan mereka hadir di / etc / passwd, mereka mesti mempunyai pemboleh ubah Shell / bin / false. Sekiranya ia lain, ubah menjadi yang ini. Dengan cara itu mereka tidak dapat digunakan untuk mendapatkan cengkerang. Menarik juga untuk memodifikasi pemboleh ubah PATH di terminal kami sehingga direktori semasa "." Tidak muncul. Iaitu, ia harus berubah dari “./user/local/sbin/:/usr/local/bin:/usr/bin:/bin” menjadi “/ user / local / sbin /: / usr / local / bin: / usr / bin: / bin ”.

Sebaiknya anda menggunakan Kerberos sebagai kaedah pengesahan rangkaian.

PAM (Modul Pengesahan Pluggable) ia adalah seperti Microsoft Active Directory. Ia menyediakan skema pengesahan umum dan fleksibel dengan kelebihan jelas. Anda boleh melihat direktori /etc/pam.d/ dan mencari maklumat di web. Ia cukup luas untuk dijelaskan di sini ...

Awasi hak istimewa dari pelbagai direktori. Sebagai contoh, / root harus menjadi milik pengguna root dan kumpulan root, dengan izin "drwx - - - - - - -". Anda dapat mencari maklumat di web mengenai izin apa yang harus dimiliki setiap direktori di pohon direktori Linux. Konfigurasi yang berbeza boleh membahayakan.

Enkripsi data anda:

Menyulitkan kandungan direktori atau partition di mana anda mempunyai maklumat yang relevan. Untuk ini, anda boleh menggunakan LUKS atau dengan eCryptFS. Sebagai contoh, bayangkan kita mahu mengenkripsi / rumah pengguna bernama isaac:

sudo apt-get install ecryptfs-utils
ecryptfs-setup-private
ecryptfs-migrate-home -u isaac

Selepas perkara di atas, nyatakan frasa laluan atau kata laluan apabila ditanya ...

Untuk membuat direktori peribadiContohnya disebut "peribadi" kita juga boleh menggunakan eCryptFS. Di dalam direktori itu kita boleh meletakkan perkara yang ingin kita enkripsi untuk menghapusnya dari pandangan orang lain:

mkdir /home/isaac/privado
chmod 700 /home/isaac/privado
mount -t ecryptfs /home/isaa/privado

Ia akan mengajukan soalan kepada kami mengenai parameter yang berbeza. Pertama, ini membolehkan kita memilih antara kata laluan, OpenSSL, ... dan kita mesti memilih 1, iaitu "frasa laluan". Kemudian kami memasukkan kata laluan yang ingin kami sahkan dua kali. Selepas itu, kami memilih jenis enkripsi yang kami mahukan (AES, Blowfish, DES3, CAST, ...). Saya akan memilih yang pertama, AES dan kemudian kami memperkenalkan jenis kunci byte (16, 32 atau 64). Dan akhirnya kami menjawab soalan terakhir dengan "ya". Sekarang anda boleh memasang dan melepaskan direktori ini untuk menggunakannya.

Sekiranya anda mahu menyulitkan fail tertentu, anda boleh menggunakan scrypt atau PGP. Sebagai contoh, fail yang dipanggil passwords.txt, anda boleh menggunakan arahan berikut untuk menyulitkan dan menyahsulitkan masing-masing (dalam kedua-dua kes, ia akan meminta kata laluan)

scrypt <contraseñas.txt>contraseñas.crypt
scrypt <contraseñas.crypt>contraseñas.txt

Pengesahan dua langkah dengan Google Authenticator:

Google AUthenticator di terminal Ubutnu

Tambah pengesahan dua langkah dalam sistem anda. Oleh itu, walaupun kata laluan anda dicuri, mereka tidak akan dapat mengakses sistem anda. Sebagai contoh, untuk Ubuntu dan persekitaran Unitynya kita dapat menggunakan LightDM, tetapi prinsipnya dapat dieksport ke distro lain. Anda memerlukan tablet atau telefon pintar untuk ini, di dalamnya anda mesti memasang Google Authenticator dari Play Store. Kemudian pada PC, perkara pertama adalah memasang PAM Google Authenticator dan memulakannya:

sudo apt-get install libpam-google-authenticator
google-authenticator

Apabila anda bertanya kepada kami jika kunci pengesahan akan berdasarkan pada masa, kami menjawab dengan tegas. Sekarang ini menunjukkan kepada kita kod QR untuk dikenali Pengesah Google Dari telefon pintar anda, pilihan lain adalah memasukkan kunci rahsia terus dari aplikasi (ia adalah kunci yang muncul di PC sebagai "Rahsia baru anda adalah:"). Dan ini akan memberi kita sekumpulan kod sekiranya kita tidak membawa telefon pintar dengan kita dan ada baiknya kita mengingatnya sekiranya terbang. Dan kami terus membalas dengan yon mengikut pilihan kami.

Sekarang kami membuka (dengan nano, gedit, atau editor teks kegemaran anda) fail konfigurasi dengan:

sudo gedit /etc/pam.d/lightdm

Dan kami menambah baris:

auth required pam_google_authenticator.so nullok

Kami menyimpan dan pada masa anda log masuk, ia akan meminta kami untuk kunci pengesahan yang akan dihasilkan oleh telefon bimbit untuk kita.

Sekiranya suatu hari adakah anda mahu mengalih keluar pengesahan XNUMX langkah, anda hanya perlu memadamkan baris "auth pam_google_authenticator.so nullok diperlukan" dari fail /etc/pam.d/lightdm
Ingat, akal dan berhati-hati adalah sekutu terbaik. Persekitaran GNU / Linux selamat, tetapi komputer yang disambungkan ke rangkaian tidak lagi selamat, tidak kira seberapa baik sistem operasi yang anda gunakan. Sekiranya anda mempunyai pertanyaan, masalah atau cadangan, anda boleh meninggalkannya comentario. Saya harap ia dapat membantu ...


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   Nuria kata

    Helo bagus, lihat saya komen; Saya telah memasang pengesah google pada Raspbian tanpa masalah dan aplikasi mudah alih mendaftar dengan baik dan memberikan kod kepada saya, tetapi ketika menghidupkan semula raspberry dan memulakan semula sistem, saya tidak meminta saya memasukkan kod pengesahan berganda Ia hanya kelihatan kepada saya untuk memasukkan nama pengguna dan kata laluan.

    Terima kasih banyak-banyak. Semua yang terbaik.