GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Membuat &Mengatur Kunci SSH di CentOS 7

Pendahuluan

Shell Aman (SSH ) adalah protokol terenkripsi yang digunakan oleh pengguna Linux untuk terhubung ke server jarak jauh mereka.

Secara umum, ada dua cara bagi klien untuk mengakses server mereka – menggunakan otentikasi berbasis kata sandi atau otentikasi berbasis kunci publik.

Sangat disarankan menggunakan kunci SSH untuk autentikasi, sebagai alternatif kata sandi yang lebih aman.

Tutorial ini akan memandu Anda melalui langkah-langkah di cara membuat dan menyiapkan kunci SSH di CentOS 7. Kami juga membahas menghubungkan ke server jarak jauh menggunakan kunci dan menonaktifkan otentikasi kata sandi .

Sebelum Anda mulai

1. Periksa Kunci yang Ada

Sebelum penginstalan apa pun, sebaiknya periksa apakah ada kunci yang ada di mesin klien.

Buka terminal dan daftar semua kunci publik yang disimpan dengan perintah berikut:

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

Outputnya memberi tahu Anda tentang kunci apa pun yang dihasilkan saat ini di sistem. Jika tidak ada, pesan tersebut memberi tahu Anda bahwa tidak dapat mengakses /.ssh/id_*.pub , karena tidak ada file atau direktori seperti itu.

2. Pastikan SSH sudah Terinstal

Untuk memeriksa apakah paket sudah terinstal, jalankan perintah:

ssh -V

Jika Anda sudah memiliki SSH, output akan memberi tahu Anda versi mana yang sedang dijalankan. Saat ini, versi terbaru adalah OpenSSH 8.0/8.0p1 .

Langkah-Langkah Membuat kunci SSH di CentOS

Langkah 1:Buat Pasangan Kunci SSH

1. Mulailah dengan masuk ke mesin sumber (server lokal) dan buat pasangan kunci RSA 2048-bit menggunakan perintah:

ssh-keygen -t rsa

Jika Anda ingin memperketat tindakan keamanan, Anda dapat membuat kunci 4096-bit dengan menambahkan flag -b 4096:

ssh-keygen -t rsa -b 4096

2. Setelah memasukkan perintah, Anda akan melihat prompt berikut:

Generating public/private rsa key pair.
Enter file in which to save the key (home/your_username/.ssh/id_rsa):

3. Untuk menyimpan file di direktori yang disarankan, tekan Enter . Atau, Anda dapat menentukan lokasi lain.

4. Selanjutnya, prompt akan berlanjut dengan:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Meskipun membuat frasa sandi tidak wajib, sangat disarankan.

5. Terakhir, output akan diakhiri dengan menentukan informasi berikut:

Your identification has been saved in home/your_username/.ssh/id_rsa.
Your public key has been saved in home/your_username/.ssh/id_rsa.pub.
The key fingerprint is:
KYg355:gKotTeU5NQ-5m296q55Ji57F8iO6c0K6GUr5:PO1iRk
[email protected]
The key's randomart image is:
+------[RSA 3072]-------+
|       .oo.            |
|        +o+.           |
|      + +.+            |
| o  +          S .     |
|      .    E  .   . =.o|
|    .  +       .   [email protected]|
|        +   .     oo*=O|
|   oo            . .+o+|
|                 o=ooo=|
+------ [SHA256] ------+

Sekarang Anda perlu menambahkan kunci publik ke server CentOS jarak jauh.

Langkah 2:Salin Kunci Publik ke Server CentOS

Anda dapat menyalin kunci SSH publik di server jauh menggunakan beberapa metode berbeda:

  1. menggunakan skrip ssh-copy-id
  2. menggunakan Salin Aman (scp)
  3. menyalin kunci secara manual

Cara tercepat dan termudah adalah dengan memanfaatkan ssh-copy-id . Jika opsi tersedia, kami sarankan untuk menggunakannya. Jika tidak, coba salah satu dari dua catatan lainnya.

Salin Kunci Publik Menggunakan ssh-copy-id

1. Mulailah dengan mengetikkan perintah berikut, menentukan akun pengguna SSH, dan alamat IP dari host jarak jauh:

ssh-copy-id [email protected]_host

Jika ini adalah pertama kalinya komputer lokal Anda mengakses server jarak jauh khusus ini, Anda akan menerima output berikut:

The authenticity of host '104.0.316.1 (104.0.316.1)' can't be established.
ECDSA key fingerprint is KYg355:gKotTeU5NQ-5m296q55Ji57F8iO6c0K6GUr5:PO1iRk.
Are you sure you want to continue connecting (yes/no)? yes

2. Konfirmasikan koneksi – ketik ya dan tekan Enter .

3. Setelah menemukan id_rsa.pub key dibuat di mesin lokal, ia akan meminta Anda untuk memberikan kata sandi untuk akun jarak jauh. Ketik kata sandi dan tekan Enter .

4. Setelah koneksi dibuat, ia menambahkan kunci publik pada server jauh. Ini dilakukan dengan menyalin ~/.ssh/id_rsa.pub file ke ~/.ssh server jarak jauh direktori. Anda dapat menemukannya dengan nama authorized_keys .

5. Terakhir, output memberi tahu Anda jumlah tombol yang ditambahkan, bersama dengan instruksi yang jelas tentang apa yang harus dilakukan selanjutnya:

Number of key(s) added: 1
Now try logging into the machine, with: "ssh '[email protected]'"
and check to make sure that only the key(s) you wanted were added.

Salin Kunci Publik Menggunakan Salin Aman

1. Pertama, siapkan koneksi SSH dengan pengguna jarak jauh:

ssh [email protected]_host

2. Selanjutnya, buat ~/.ssh direktori serta authorized_keys berkas:

mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys

3. Gunakan chmod perintah untuk mengubah izin file:

chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

chmod 700 membuat file dapat dieksekusi , sedangkan chmod 600 memungkinkan pengguna untuk membaca dan menulis filenya.

4. Sekarang, buka sesi terminal baru, di komputer lokal.

5. Salin konten dari id_rsa.pub (kunci publik SSH) ke authorized_keys yang dibuat sebelumnya file di server CentOS jarak jauh dengan mengetikkan perintah:

scp ~/.ssh/id_rsa.pub [email protected]_host:~/.ssh/authorized_keys

Dengan ini, kunci publik telah disimpan dengan aman di akun jarak jauh.

Salin Kunci Publik Secara Manual

1. Untuk menambahkan kunci SSH publik secara manual ke mesin jarak jauh, Anda harus terlebih dahulu membuka konten dari ~/.ssh/id_rsa.pub berkas:

cat ~/.ssh/id_rsa.pub

2. Seperti pada gambar di bawah, kunci dimulai dengan ssh-rsa dan diakhiri dengan nama pengguna komputer lokal dan nama host mesin jarak jauh:


3. Salin konten file, seperti yang Anda perlukan nanti.

4. Kemudian, di jendela terminal, sambungkan ke server jauh tempat Anda ingin menyalin kunci publik. Gunakan perintah berikut untuk membuat koneksi:

ssh [email protected]_host

5. Buat ~/.ssh direktori dan authorized_keys file di server CentOS dengan perintah berikut:

mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys

6. Ubah izin file mereka dengan mengetik:

chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

7. Selanjutnya, buka authorized_keys file dengan editor pilihan Anda. Misalnya, untuk membukanya dengan Nano, ketik:

nano authorized_keys

8. Tambahkan kunci publik, yang sebelumnya disalin di langkah 2 bagian ini, di baris baru di (di bawah konten yang ada).

9. Simpan perubahan dan tutup file.

10. Terakhir, masuk ke server untuk memverifikasi bahwa semuanya sudah diatur dengan benar.

Langkah 3:Hubungkan ke Server Jarak Jauh Menggunakan Kunci SSH

Setelah Anda menyelesaikan langkah sebelumnya (membuat Pasangan Kunci RSA dan menyalin Kunci Publik ke server CentOS), Anda akan dapat terhubung ke host jarak jauh tanpa mengetikkan kata sandi untuk akun jarak jauh.

Yang perlu Anda lakukan adalah mengetikkan perintah berikut:

ssh [email protected]_host

Jika Anda tidak menentukan frasa sandi saat membuat pasangan kunci SSH, Anda akan secara otomatis masuk ke server jauh.

Jika tidak, ketikkan frasa sandi yang Anda berikan pada langkah awal dan tekan Enter .

Setelah shell mengkonfirmasi kecocokan kunci, itu akan membuka sesi baru untuk komunikasi langsung dengan server.

Langkah 4:Nonaktifkan Otentikasi Kata Sandi

Meskipun Anda berhasil mengakses server CentOS tanpa harus memberikan kata sandi, itu masih memiliki sistem otentikasi berbasis kata sandi yang berjalan di mesin. Ini menjadikannya target potensial untuk serangan brute force.

Anda harus menonaktifkan autentikasi sandi sepenuhnya dengan mengikuti langkah-langkah yang diuraikan.

1. Menggunakan kunci SSH, masuk ke server CentOS jarak jauh yang memiliki hak administratif:

ssh [email protected]_host

2. Selanjutnya, buka file konfigurasi daemon SSH menggunakan editor teks pilihan Anda:

sudo nano /etc/ssh/sshd_config

3. Cari baris berikut dalam file:

PasswordAuthentication yes

4. Edit konfigurasi dengan mengubah yes nilai menjadi no . Jadi, arahannya harus sebagai berikut:

PasswordAuthentication no

5. Simpan file dan keluar dari editor teks.
6. Untuk mengaktifkan perubahan, mulai ulang sshd layanan menggunakan perintah:

sudo systemctl restart sshd.service

7. Pastikan koneksi SSH ke server masih berfungsi dengan benar. Buka jendela terminal baru dan ketik perintah:

ssh [email protected]_host

Cent OS
  1. Cara Mengatur Kunci SSH

  2. Mengatur Kunci SSH di CentOS 7 - Proses Langkah demi Langkah?

  3. Cara Mengatur Kunci SSH di CentOS 8

  1. Cara Menghasilkan Kunci SSH di Ubuntu 18.04

  2. Cara Mengatur Kunci SSH di Ubuntu 16.04

  3. Cara Mengatur Kunci SSH di Ubuntu 18.04

  1. Cara Mengatur Login SSH Tanpa Kata Sandi

  2. Cara Menghasilkan Kunci SSH di Windows 10

  3. Cara Membuat &Mengatur Kunci SSH di Debian 10