Android

Bagaimana untuk menyediakan login ssh tanpa login

20200622 UT OWP internet offline jaringan desa

20200622 UT OWP internet offline jaringan desa

Isi kandungan:

Anonim

Secure Shell (SSH) adalah protokol rangkaian kriptografi yang digunakan untuk sambungan selamat antara pelanggan dan pelayan dan menyokong pelbagai mekanisme pengesahan. Kedua-dua mekanisme yang paling popular adalah pengesahan kata laluan dan pengesahan berasaskan kunci awam.

Dalam tutorial ini, kami akan menunjukkan kepada anda cara membuat persijilan berasaskan kunci SSH serta bagaimana untuk menyambung ke pelayan Linux anda tanpa memasukkan kata laluan.

Persediaan Login SSH Passwordless

Untuk menyediakan login SSH tanpa kata laluan di Linux, semua yang anda perlu lakukan adalah untuk menghasilkan kunci pengesahan awam dan masukkannya ke fail host ~/.ssh/authorized_keys yang terpencil.

Langkah-langkah berikut akan menerangkan proses untuk mengkonfigurasi login SSH tanpa kata laluan:

  1. Semak pasangan kunci SSH sedia ada.

    Sebelum menghasilkan pasangan kunci SSH yang baru, semak terlebih dahulu jika anda sudah mempunyai kunci SSH pada mesin klien anda kerana anda tidak mahu menulis ganti kunci yang ada.

    Jalankan arahan ls berikut untuk melihat apakah kunci SSH yang ada:

    ls -al ~/.ssh/id_*.pub

    Sekiranya terdapat kunci yang ada, anda boleh menggunakannya dan melangkau langkah seterusnya atau sandarkan kunci lama dan buat yang baru.

    Menjana pasangan kunci SSH yang baru.

    Perintah berikut akan menghasilkan pasangan kunci SSH 4096 bit baru dengan alamat e-mel anda sebagai ulasan:

    ssh-keygen -t rsa -b 4096 -C "[email protected]"

    Tekan Enter untuk menerima lokasi fail lalai dan nama fail:

    Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

    Seterusnya, alat ssh-keygen akan meminta anda menaip frasa laluan selamat. Sama ada anda ingin menggunakan frasa laluan terpulang kepada anda, jika anda memilih menggunakan frasa laluan, anda akan mendapat lapisan tambahan keselamatan. Dalam kebanyakan kes, pemaju dan pentadbir sistem menggunakan SSH tanpa frasa laluan kerana mereka berguna untuk proses automatik sepenuhnya. Sekiranya anda tidak mahu menggunakan frasa laluan, tekan Enter

    Enter passphrase (empty for no passphrase):

    Seluruh interaksi kelihatan seperti ini:

    Untuk memastikan kekunci SSH dihasilkan, anda boleh menyenaraikan kunci peribadi dan awam baru anda dengan:

    ls ~/.ssh/id_*

    /home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

    Salin kekunci awam

    Sekarang anda telah menghasilkan pasangan kunci SSH, supaya dapat login ke pelayan anda tanpa kata laluan anda perlu menyalin kunci awam ke pelayan yang anda ingin uruskan.

    Cara paling mudah untuk menyalin kunci awam anda ke pelayan anda ialah menggunakan perintah yang dipanggil ssh-copy-id . Pada jenis terminal mesin tempatan anda:

    ssh-copy-id remote_username@server_ip_address

    Anda akan diminta memasukkan kata laluan remote_username :

    remote_username@server_ip_address's password:

    Sebaik sahaja pengguna disahkan, kunci awam akan dilampirkan kepada fail authorized_keys pengguna jauh dan sambungan akan ditutup.

    Jika oleh sebab tertentu utiliti ssh-copy-id tidak tersedia di komputer tempatan anda, anda boleh menggunakan perintah berikut untuk menyalin kunci awam:

    cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

    Masuk ke pelayan anda menggunakan kekunci SSH

    Selepas menyelesaikan langkah di atas, anda sepatutnya dapat log masuk ke pelayan jauh tanpa diminta untuk kata laluan.

    Untuk mengujinya, cuba log masuk ke pelayan anda melalui SSH:

    ssh remote_username@server_ip_address

    Sekiranya semuanya berjalan lancar, anda akan terus masuk.

Melumpuhkan Pengesahan Kata Laluan SSH

Untuk menambah lapisan tambahan keselamatan ke pelayan anda, anda boleh mematikan pengesahan kata laluan untuk SSH.

Sebelum melumpuhkan pengesahan kata laluan SSH pastikan anda boleh log masuk ke pelayan anda tanpa kata laluan dan pengguna yang anda log masuk dengan mempunyai hak istimewa sudo.

Tutorial berikut menerangkan cara mengkonfigurasi akses sudo:

  1. Masuk ke pelayan jauh anda dengan kekunci SSH, sama ada sebagai pengguna dengan hak istimewa sudo atau root:

    ssh sudo_user@server_ip_address

    Buka fail konfigurasi SSH /etc/ssh/sshd_config , cari arahan berikut dan ubah suai seperti berikut:

    / etc / ssh / sshd_config

    PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

    Sebaik sahaja selesai, simpan fail dan mulakan semula perkhidmatan SSH.

    Pada pelayan Ubuntu atau Debian, jalankan arahan berikut:

    sudo systemctl restart ssh

    Pada pelayan CentOS atau Fedora, jalankan arahan berikut:

    sudo systemctl restart sshd

Kesimpulannya

Dalam tutorial ini, anda telah mempelajari cara menyiapkan pengesahan berasaskan kunci SSH, membolehkan anda log masuk ke pelayan jauh anda tanpa memberikan kata laluan pengguna. Anda boleh menambah kekunci yang sama kepada pelbagai fungsi terpencil.

Kami juga telah menunjukkan kepada anda bagaimana untuk melumpuhkan pengesahan kata laluan SSH dan menambah lapisan tambahan keselamatan ke pelayan anda.

keselamatan ssh