GNU/Linux >> Belajar Linux >  >> Linux

Menginstal dan Mengonfigurasi OpenSSH di Ubuntu dan Distribusi Berbasis Debian

Jika Anda ingin mengaktifkan SSH di desktop Ubuntu , gunakan perintah berikut:

sudo apt install openssh-client

Jika Anda ingin mengaktifkan SSH di server Ubuntu , gunakan perintah berikut:

sudo apt install openssh-server

Baca artikel selanjutnya untuk informasi lebih detail.

Setiap admin dan pengembang sistem telah mengalami kebutuhan untuk login jarak jauh ke dalam sistem untuk keperluan administrasi dan debugging yang lebih cepat.

Dalam lingkungan TI, hampir semua tugas sysadmin saat ini dilakukan melalui login jarak jauh.

Dan bukan hanya sysadmin, bahkan pengguna biasa terkadang perlu login jarak jauh ke server.

Jadi bagaimana Anda terhubung dari jarak jauh ke sistem Linux? Ada beberapa alat yang tersedia untuk login jarak jauh, tetapi untuk Linux, SSH adalah pilihan yang paling populer.

SSH, kependekan dari secure shell, adalah protokol yang memungkinkan login jarak jauh dengan aman dari satu komputer ke komputer lain.

Sekarang pertanyaannya adalah bagaimana Anda mengaktifkan SSH di Ubuntu atau Debian atau distribusi Linux lainnya yang Anda gunakan?

Ingat bahwa SSH hanyalah sebuah protokol dan protokol ini dapat diimplementasikan melalui beberapa alat seperti lsh, Dropbear dll., tetapi alat yang paling banyak digunakan untuk SSH adalah perangkat lunak open source OpenSSH.

Dalam tutorial ini, Anda akan melihat cara menginstal OpenSSH dan mengkonfigurasinya untuk mengaktifkan SSH pada distribusi Linux berbasis Ubuntu dan Debian. Langkah-langkah yang disebutkan berlaku untuk versi desktop dan server Ubuntu/Debian.

Saya juga menyarankan membaca artikel ini untuk mengenal dasar-dasar SSH.

Aktifkan SSH di Ubuntu dan Debian dengan OpenSSH

Seperti yang saya sebutkan sebelumnya, OpenSSH adalah software untuk membuat login SSH. Itu mendengarkan pada port dan mengautentikasi pengguna yang masuk dan membuat shell baru untuk pengguna jarak jauh.

Agar SSH dapat berfungsi, server ssh harus dijalankan pada sistem jarak jauh tempat pengguna harus masuk. Anda juga harus memiliki klien ssh di sistem lokal tempat pengguna akan masuk ke sistem jarak jauh.

OpenSSH menyediakan kedua fungsi ini. Ada openssh-client untuk pengguna akhir dan openssh-server untuk server jarak jauh.

Sebelum Anda menginstal OpenSSH, Anda harus memeriksa apakah SSH sudah diinstal dan berjalan di sistem Anda.

Periksa apakah SSH sudah diaktifkan dan berjalan

Kemungkinan besar SSH sudah diaktifkan di sistem Anda. Untuk memverifikasi, jalankan perintah berikut di salah satu server jarak jauh atau sistem pengguna akhir:

ps -aux | grep ssh

Jika SSH diaktifkan, Anda akan melihat informasi tentang agen SSH di desktop Anda:

ps -aux | grep ssh

abhishek  1736  0.0  0.0  11304    36 ?        Ss   08:18   0:00 /usr/bin/ssh-agent /usr/bin/im-launch env GNOME_SHELL_SESSION_MODE=ubuntu gnome-session --session=ubuntu

abhishek 10462  0.0  0.0  21536  1044 pts/0    S+   10:15   0:00 grep --color=auto ssh

Di server, Anda akan melihat informasi tentang daemon SSH yang sedang berjalan:

ps -aux | grep ssh

root       920  0.0  0.2  72296  6028 ?        Ss    2018   0:17 /usr/sbin/sshd -D

root     22708  0.0  0.3 108172  7364 ?        Ss   05:13   0:00 sshd: [email protected]/0

root     22873  0.0  0.0  14856  1068 pts/0    S+   05:14   0:00 grep --color=auto ssh

Jika Anda tidak melihat output yang mirip dengan yang disebutkan di atas, berarti Anda tidak menjalankan SSH di sistem Anda. Saatnya menginstal OpenSSH.

Menginstal OpenSSH di Ubuntu dan Debian

Catatan singkat tentang openssh-client dan openssh-server sebelum Anda menginstal OpenSSH.

openssh-klien: Ini adalah paket yang Anda butuhkan jika Anda ingin terhubung ke sistem Linux jarak jauh menggunakan SSH. Inilah yang Anda butuhkan sebagai pengguna akhir/pengguna desktop.

openssh-server: Ini adalah paket yang Anda butuhkan jika Anda ingin mengizinkan login jarak jauh melalui SSH ke sistem Anda. Inilah yang Anda butuhkan di server Linux Anda.

Perhatikan bahwa menginstal openssh-server juga memungkinkan Anda untuk login jarak jauh ke sistem lain melalui SSH. Dengan kata lain, openssh-server terdiri dari openssh-client. Tetapi jika Anda hanya pengguna akhir dengan desktop Linux, (kebanyakan) tidak perlu menginstal openssh-server dan mengizinkan login jarak jauh ke sistem Anda.

Sekarang setelah Anda mengetahui perbedaan antara keduanya, sekarang saatnya untuk melihat cara memasangnya.

Perhatikan bahwa untuk menginstal OpenSSH di Ubuntu atau Debian, Anda harus memiliki hak sudo/root. Jika Anda tidak memiliki izin tersebut, hubungi administrator sistem Anda. Anda juga dapat membaca artikel ini tentang membuat pengguna sudo.

Menginstal OpenSSH untuk desktop atau pengguna akhir

Jika Anda hanya ingin terhubung ke sistem jarak jauh lain melalui SSH, Anda harus menginstal paket openssh-client menggunakan perintah berikut:

sudo apt update
sudo apt install openssh-client

Setelah Anda menginstal ssh di sistem Anda, Anda siap untuk menggunakannya. Silakan merujuk ke artikel terperinci ini untuk mengetahui cara menggunakan SSH.

Menginstal OpenSSH untuk server

Jika Anda menyiapkan server Ubuntu/Debian, sebaiknya instal paket openssh-server sehingga pengguna jarak jauh lainnya dapat terhubung ke sistem Anda.

sudo apt update
sudo apt install openssh-server

Setelah Anda menginstal openssh-server, saatnya mempelajari cara mengubahnya dan mengonfigurasinya sesuai kebutuhan Anda.

Mengontrol daemon sshd SSH (untuk server)

Anda akan memiliki daemon SSH bernama sshd diinstal dan diaktifkan untuk memulai reboot secara otomatis secara default. systemctl adalah salah satu dari beberapa cara untuk mengontrol daemon SSH. Untuk mengetahui lebih lanjut tentang systemctl , silakan merujuk ke artikel ini.

Memulai layanan sshd

Layanan dapat dimulai hanya dengan mengeluarkan:

sudo systemctl start sshd

Hentikan layanan sshd

Layanan dapat dihentikan dengan cara yang sama:

sudo systemctl stop sshd

Mulai ulang layanan sshd

Jika Anda ingin layanan sshd dihentikan dan dimulai (biasanya diperlukan dalam hal mengubah konfigurasi ke layanan sshd), Anda cukup menggunakan perintah ini:

sudo systemctl restart sshd

Aktifkan SSH di Ubuntu secara otomatis pada setiap boot

Beberapa layanan perlu dimulai saat me-reboot sendiri untuk menghindari interaksi manual dan jika sangat sering digunakan. Ini sangat penting untuk layanan seperti Apache, mongod, mysqld, sshd di server.

Jika Anda ingin mengaktifkan mulai otomatis untuk sshd, gunakan:

sudo systemctl enable sshd

Nonaktifkan SSH mulai otomatis saat reboot

Jika Anda tidak ingin sshd dimulai saat reboot secara otomatis, gunakan

sudo systemctl disable sshd

Di atas kata empat tips diperlukan setiap kali Anda membuat perubahan ke layanan ssh seperti mengubah port. Anda dapat menggunakan perintah di atas untuk mengelola layanan apa pun (seperti mysqld, mongod, apache) dengan nama layanan sshd diganti dengan layanan target.

Kiat :Anda dapat menggunakan perintah nohup untuk tetap menjalankan perintah meskipun koneksi SSH Anda terputus.

Konfigurasi SSH (untuk server)

Mulai sekarang, layanan ssh kami akan mendengarkan pada port 22 dan siap untuk mengautentikasi setiap pengguna (juga root) setelah kunci disimpan.

Jika Anda ingin mengubah konfigurasi seperti port untuk mendengarkan koneksi, Anda dapat mengedit file “/etc/ssh/sshd_config ” dengan menambahkan, menghapus, mengomentari, atau menghapus komentar pada baris, lalu restart layanan sshd.

Ada banyak opsi untuk dikonfigurasi. Saya telah membuat daftar konfigurasi yang kemungkinan besar akan dibutuhkan.

1. Ubah port SSH default

Biasanya, layanan sshd mendengarkan pada port TCP 22. Jika Anda mau, Anda dapat mengubah port SSH menjadi 5678 dengan menambahkan/mengedit baris berikut di /etc/ssh/ssh_config.

Port 5678

Mulai ulang layanan untuk segera melihat perubahannya.

2. Nonaktifkan login root melalui SSH

Mengizinkan pengguna root untuk mengautentikasi dengan ssh bukanlah ide yang baik karena alasan keamanan. sudo pengguna dapat masuk dari jarak jauh tetapi tidak root sebagai root berada di puncak rantai keamanan pangan.

Root Login dapat dinonaktifkan dengan menambahkan (jika belum ada) baris berikut dan memulai ulang layanan.

PermitRootLogin no

Jika baris sudah ada, pastikan tidak dikomentari.

3. Izinkan Otentikasi Berbasis Kunci SSH di

Anda mungkin ingin mengizinkan otentikasi berbasis kunci ssh sehingga pengguna akhir tidak perlu memasukkan kata sandi setiap saat. Hanya menggunakan ssh [email protected] sudah cukup untuk masuk ke sistem jarak jauh.

Untuk ini, Anda harus mengonfigurasi SSH untuk mengizinkan otentikasi kunci publik:

PubkeyAuthentication yes 

Jika baris sudah ada, pastikan tidak dikomentari.

Sekarang jika Anda ingin mengizinkan sistem tertentu untuk masuk melalui kunci publik, Anda perlu menambahkan kunci publik pengguna akhir tersebut dalam file .ssh/authorized_keys .

Anda dapat membuat kunci ssh (kunci publik dan kunci pribadi) dengan bantuan ssh-keygen . Untuk mengetahui lebih banyak tentang key-gen, lihat sumber daya yang hebat ini.

Anda dapat mentransfer kunci publik pengguna akhir ke server jauh dengan cara apa pun yang Anda inginkan. Anda dapat menggunakan perintah scp jika Anda suka atau hanya mendapatkannya melalui FTP. Terserah Anda.

Tiga di atas paling dibutuhkan, tetapi jika Anda ingin mengubah lebih lanjut, silakan merujuk ke halaman manual sshd_config .

Kesimpulan

Saya rasa itu adalah bahan bacaan yang cukup baik untuk mengetahui cara mengaktifkan SSH di Ubuntu/Debian dan cara mengkonfigurasi SSH di server Anda untuk login jarak jauh.

Dalam artikel terkait, Anda dapat merujuk ke artikel ini yang merinci kesalahan SSH yang muncul karena menyalin kunci publik antar sistem.

Jika menurut Anda artikel ini bermanfaat, Bagikan ke teman Anda. Jika Anda memiliki saran atau komentar atau jika menurut Anda saya melewatkan sesuatu, jangan ragu untuk memberikan komentar di bawah.


Linux
  1. Menginstal dan mengatur Php dan Nginx di Ubuntu 20.04

  2. Linux – Mengonfigurasi, Mengkompilasi, dan Menginstal Kernel Linux Kustom?

  3. Menginstal dan mengonfigurasi vsFTPD

  1. Menginstal dan Mengkonfigurasi php 7x di Centos 8

  2. Atur SFTP dan Cegah SSH di Ubuntu 20.04

  3. CentOS / RHEL :Menginstal dan Mengonfigurasi ASMLib

  1. Hal yang harus dilakukan Setelah Menginstal Ubuntu 18.04 dan 19.10

  2. Menginstal Nginx di Ubuntu 14.04 dan 16.04

  3. Menginstal dan Mengonfigurasi Perangkat Lunak Ilmiah di Ubuntu 15.04. Kasus:Scilab 5.5.1