Komputer riba Linux menunjukkan arahan shell

Perhatikan keselamatan siber dengan serius dan gunakan kekunci SSH untuk mengakses log masuk jauh. Ini adalah cara yang lebih selamat untuk berhubung daripada kata laluan. Kami menunjukkan kepada anda cara menghasilkan, memasang, dan menggunakan kekunci SSH di Linux.

Apa yang Salah Dengan Kata Laluan?

Secure shell (SSH) adalah protokol terenkripsi yang digunakan untuk log masuk ke akaun pengguna di Linux jauh atau komputer seperti Unix. Biasanya akaun pengguna seperti itu dijamin menggunakan kata laluan. Semasa anda log masuk ke komputer jauh, anda mesti memberikan nama pengguna dan kata laluan untuk akaun yang anda log masuk.

Kata laluan adalah kaedah yang paling biasa untuk mendapatkan akses ke sumber pengkomputeran. Walaupun demikian, keselamatan berasaskan kata laluan mempunyai kekurangannya. Orang memilih kata laluan yang lemah, berkongsi kata laluan, menggunakan kata laluan yang sama pada pelbagai sistem, dan sebagainya.

Kekunci SSH jauh lebih selamat, dan setelah disiapkan, kunci mudah digunakan seperti kata laluan.

Apa yang Menjadikan Kunci SSH Selamat?

Kekunci SSH dibuat dan digunakan secara berpasangan. Kedua-dua kunci dihubungkan dan selamat secara kriptografi. Salah satunya adalah kunci awam anda, dan yang lain adalah kunci peribadi anda. Mereka terikat dengan akaun pengguna anda. Sekiranya beberapa pengguna pada satu komputer menggunakan kekunci SSH, mereka masing-masing akan menerima sepasang kunci mereka sendiri.

Kunci peribadi anda dipasang di folder rumah anda (biasanya), dan kunci awam dipasang di komputer jauh — atau komputer — yang perlu anda akses.

Kunci peribadi anda mesti disimpan dengan selamat. Sekiranya ia dapat diakses oleh orang lain, Anda berada dalam posisi yang sama seolah-olah mereka telah menemui kata laluan anda. Langkah berjaga-jaga — dan sangat disyorkan — agar kunci peribadi anda disulitkan pada komputer anda dengan frasa laluan yang kuat.

Kunci awam boleh dikongsi secara bebas tanpa kompromi untuk keselamatan anda. Tidak mustahil untuk menentukan apa kunci persendirian dari pemeriksaan kunci awam. Kunci peribadi boleh menyulitkan mesej yang hanya dapat disahsulitkan oleh kunci peribadi.

Semasa anda membuat permintaan sambungan, komputer jauh menggunakan salinan kunci awam anda untuk membuat mesej yang dienkripsi. Mesej mengandungi ID sesi dan metadata lain. Hanya komputer yang memiliki kunci peribadi - komputer anda - yang dapat menyahsulitkan mesej ini.

Komputer anda mengakses kunci peribadi anda dan menyahsulitkan mesej tersebut. Ia kemudian menghantar kembali mesej yang disulitkan ke komputer jauh. Antara lain, mesej yang dienkripsi ini mengandungi ID sesi yang diterima dari komputer jauh.

Komputer jarak jauh sekarang tahu bahawa anda mesti menjadi orang yang anda katakan kerana hanya kunci peribadi anda yang dapat mengekstrak Id sesi dari mesej yang dihantar ke komputer anda.

Pastikan Anda Boleh Mengakses Komputer Jauh

Pastikan anda dapat menyambung ke jauh, dan log masuk ke komputer jarak jauh. Ini membuktikan bahawa nama pengguna dan kata laluan anda mempunyai akaun yang sah di komputer jauh dan kelayakan anda betul.

Jangan cuba melakukan apa-apa dengan kunci SSH sehingga anda mengesahkan bahawa anda boleh menggunakan SSH dengan kata laluan untuk menyambung ke komputer sasaran.

Dalam contoh ini, seseorang dengan akaun pengguna yang disebut dave dilog masuk ke komputer yang dipanggil howtogeek. Mereka akan menyambung ke komputer lain yang disebut Sulaco.

Mereka memasukkan arahan berikut:

ssh dave @ sulaco
ssh dave @ sulaco di tetingkap terminal

Mereka diminta memasukkan kata laluan mereka, memasukkannya, dan mereka dihubungkan ke Sulaco. Perintah arahan mereka berubah untuk mengesahkan ini.

pengguna dave berhubung dengan sulaco menggunakan ssh dan kata laluan

Itu semua pengesahan yang kami perlukan. Oleh itu pengguna dave dapat memutuskan sambungan dari Sulaco dengan arahan keluar:

jalan keluar
pengguna dave terputus dari sulaco

Mereka menerima pesanan terputus dan arahan arahan mereka kembali ke dave @ howtogeek.

BERKAITAN: Cara Menghubungkan ke Pelayan SSH dari Windows, macOS, atau Linux

Membuat Pasangan Kekunci SSH

Arahan ini diuji pada edaran Linux Ubuntu, Fedora, dan Manjaro. Dalam semua kasus, prosesnya serupa, dan tidak perlu memasang perisian baru pada mesin uji.

Untuk menghasilkan kunci SSH anda, ketik arahan berikut:

ssh-keygen
ssh-keygen di tetingkap terminal

Proses penjanaan bermula. Anda akan ditanya di mana anda mahu kunci SSH anda disimpan. Tekan kekunci Enter untuk menerima lokasi lalai. Kebenaran pada folder akan mengamankannya untuk kegunaan anda sahaja.

Pengesahan lokasi penyimpanan kunci ssh di tetingkap terminal

Anda sekarang akan diminta untuk frasa laluan. Kami sangat menyarankan anda memasukkan frasa laluan di sini. Dan ingat apa itu! Anda boleh menekan Enter untuk tidak mempunyai frasa laluan, tetapi ini bukan idea yang baik. Frasa laluan yang terdiri daripada tiga atau empat kata yang tidak berkaitan, digantung bersama akan menjadikan frasa laluan yang sangat kuat.

Meminta frasa laluan di tetingkap terminal

Anda akan diminta memasukkan frasa laluan yang sama sekali lagi untuk mengesahkan bahawa anda telah menaip apa yang anda fikir telah anda taip.

Kekunci SSH dihasilkan dan disimpan untuk anda.

Penjanaan kunci selesai dan seni rawak dipaparkan di tetingkap terminal

Anda boleh mengabaikan "randomart" yang dipaparkan. Beberapa komputer jarak jauh mungkin menunjukkan seni rawak mereka setiap kali anda bersambung. Ideanya adalah bahawa anda akan menyedari jika seni rawak berubah, dan curiga dengan sambungannya kerana ini bermaksud kunci SSH untuk pelayan tersebut telah diubah.

Memasang Kunci Awam

Kami perlu memasang kunci awam anda di Sulaco, komputer jauh, supaya dapat mengetahui bahawa kunci awam adalah milik anda.

Kami melakukan ini menggunakan perintah ssh-copy-id. Perintah ini membuat sambungan ke komputer jauh seperti perintah ssh biasa, tetapi daripada membiarkan anda masuk, ia memindahkan kunci SSH awam.

ssh-copy-id dave @ sulaco
ssh-copy-id dave @ sulaco

Walaupun anda tidak log masuk ke komputer jauh, anda masih mesti mengesahkan menggunakan kata laluan. Komputer jarak jauh mesti mengenal pasti akaun pengguna mana kunci SSH baru dimiliki.

Perhatikan bahawa kata laluan yang mesti anda berikan di sini adalah kata laluan untuk akaun pengguna yang anda log masuk. Ini bukan frasa laluan yang baru anda buat.

ssh-copy-id dengan kata laluan segera pada tetingkap terminal

Apabila kata laluan telah disahkan, ssh-copy-id memindahkan kunci awam anda ke komputer jauh.

Anda dikembalikan ke command prompt komputer anda. Anda tidak disambungkan ke komputer jauh.

kunci pulik berjaya dipindahkan di tetingkap terminal

Menyambung Menggunakan Kekunci SSH

Mari ikuti cadangan dan cuba menyambung ke komputer jauh.

ssh dave @ sulaco
ssh dave @ sulaco di tetingkap terminal

Kerana proses sambungan memerlukan akses ke kunci peribadi anda, dan kerana anda melindungi kunci SSH anda di belakang frasa laluan, anda perlu memberikan frasa laluan anda agar sambungan dapat dilanjutkan.

kotak dialog permintaan frasa laluan

Masukkan frasa laluan anda dan klik pada butang Buka Kunci.

Sebaik sahaja anda memasukkan frasa laluan anda dalam sesi terminal, anda tidak perlu memasukkannya semula selama anda membuka tetingkap terminal tersebut. Anda boleh menyambung dan memutuskan sambungan dari sebilangan sesi jauh yang anda mahu, tanpa memasukkan frasa laluan anda lagi.

Anda boleh mencentang kotak untuk pilihan "Buka kunci kunci ini secara automatik setiap kali saya log masuk", tetapi ini akan mengurangkan keselamatan anda. Sekiranya anda membiarkan komputer anda tanpa pengawasan, sesiapa sahaja boleh membuat sambungan ke komputer jauh yang mempunyai kunci awam anda.

Sebaik sahaja anda memasukkan frasa laluan anda, anda disambungkan ke komputer jauh.

sambungan komputer jauh di tetingkap terminal

Untuk mengesahkan proses sekali lagi dari hujung ke hujung, putuskan dengan arahan keluar dan sambungkan semula ke komputer jauh dari tetingkap terminal yang sama.

ssh dave @ sulaco
sambungan dan pemutusan kunci ssh di tetingkap terminal

Anda akan disambungkan ke komputer jauh tanpa memerlukan kata laluan atau frasa laluan.

Tiada Kata Laluan, Tetapi Keamanan yang Ditingkatkan

Pakar keselamatan siber bercakap mengenai perkara yang disebut geseran keselamatan. Itulah kesakitan kecil yang perlu anda atasi untuk mendapatkan keselamatan tambahan. Biasanya ada beberapa langkah tambahan yang diperlukan untuk menggunakan kaedah kerja yang lebih selamat. Dan kebanyakan orang tidak menyukainya. Mereka sebenarnya lebih suka keselamatan yang lebih rendah dan kekurangan geseran. Itulah sifat manusia.

Dengan kekunci SSH, anda mendapat keselamatan yang lebih baik dan peningkatan kemudahan. Itu pasti menang-menang.