Install dan Mengaktifkan SSH di Debian 10

Dari Catatan Pak Samsul
Loncat ke navigasi Loncat ke pencarian

Install SSH Update reposetory

sudo apt-get update

Install openssh-server

sudo apt-get install openssh-server

Cek status ssh

sudo systemctl status sshd

File config

nano /etc/ssh/sshd_config

Restart service ssh

sudo systemctl restart sshd

Menghentikan service ssh

sudo systemctl stop sshd

Menjalankan service ssh

sudo systemctl start sshd

Daftar opsi konfigurasi klien

Kata kunci berikut dapat digunakan dalam file konfigurasi klien SSH. Kata kunci peka huruf besar/kecil dan argumen peka huruf besar/kecil. Setiap algoritma atau nama metode yang menyertakan tanda (@) hanya untuk penggunaan eksperimental dan tidak direkomendasikan untuk produksi.

Host

Membatasi deklarasi berikut hanya untuk host yang cocok dengan salah satu pola yang diberikan setelah kata kunci. Pola dicocokkan dengan nama host yang diberikan pada baris perintah.

Match

Membatasi deklarasi berikut untuk diterapkan hanya untuk host yang cocok dengan kriteria yang ditentukan. Untuk informasi rinci, lihat halaman manual SSH .

AddressFamily

Menentukan keluarga alamat mana yang akan digunakan saat menghubungkan. Argumen yang valid adalah: any, inet, inet6.

BatchMode

Jika disetel ke yes, kueri frasa sandi/sandi akan dinonaktifkan. Ini berguna untuk menjalankan klien ssh dari skrip shell yang tidak memiliki pengguna interaktif, dan mencegah pemblokiran secara tidak sengaja pada prompt kata sandi.

BindAddress

Menentukan untuk menggunakan alamat yang ditentukan pada mesin lokal sebagai alamat sumber koneksi.

ChallengeResponseAuthentication

Menentukan apakah akan menggunakan autentikasi tantangan-respons. Ini sebagian besar merupakan metode lama dan telah digantikan oleh KbdInteractiveAuthentication.

CheckHostIP

Mengarahkan ssh untuk memeriksa alamat IP host tambahan dalam known_hostsfile.

Cipher

Menentukan sandi yang akan digunakan untuk mengenkripsi sesi dalam protokol versi 1. Perhatikan bahwa penggunaan protokol 1 tidak disarankan.

Ciphers

Menentukan cipher yang diizinkan untuk protokol versi 2 dalam urutan preferensi. Beberapa cipher harus dipisahkan dengan koma. The ssh -Q cipherperintah dapat digunakan untuk permintaan didukung cipher. Daftar berikut ini didukung di OpenSSH 6.7:

3des-cbc blowfish-cbc cast128-cbc arcfour arcfour128 arcfour256 aes128-cbc aes192-cbc aes256-cbc rijndael-cbc@lysator.liu.se aes128-ctr aes192-ctr aes256-ctr aes128-gcm@openssh.com aes256-gcm@openssh.com chacha20-poly1305@openssh.com

ClearAllForwardings

Menentukan bahwa semua penerusan port lokal, jarak jauh, dan dinamis yang ditentukan dalam file konfigurasi atau pada baris perintah dihapus.

Compression

Menentukan apakah akan menggunakan kompresi. yesmemungkinkan kompresi.

CompressionLevel

Menentukan tingkat kompresi yang akan digunakan jika kompresi diaktifkan.

ConnectionAttempts

Menentukan jumlah upaya yang harus dilakukan sebelum keluar.

ConnectTimeout

Menentukan batas waktu (dalam detik) yang digunakan saat menyambung ke server SSH, alih-alih menggunakan batas waktu TCP sistem default.

ControlMaster

Memungkinkan berbagi beberapa sesi melalui satu koneksi jaringan.

ControlMaster

Tentukan jalur ke soket kontrol yang digunakan untuk berbagi koneksi seperti yang dijelaskan di bagian ControlMaster di atas atau string noneuntuk menonaktifkan berbagi koneksi.

ControlPath

Menentukan bahwa port TCP pada mesin lokal diteruskan melalui saluran aman, dan protokol aplikasi kemudian digunakan untuk menentukan ke mana harus terhubung dari mesin jarak jauh.

EscapeChar

Mengatur karakter pelarian.

ExitOnForwardFailure

Menentukan apakah ssh harus mengakhiri koneksi jika tidak dapat mengatur semua penerusan port dinamis, terowongan, lokal, dan jarak jauh yang diminta.

ForwardAgent

Menentukan apakah koneksi ke agen otentikasi akan diteruskan ke mesin jarak jauh.

ForwardX11

Menentukan apakah koneksi X11 akan secara otomatis dialihkan melalui saluran aman dan set DISPLAY.

ForwardX11Trusted

Jika opsi ini disetel ke yes, klien X11 jarak jauh akan memiliki akses penuh ke tampilan X11 asli.

GatewayPorts

Menentukan apakah host jarak jauh diizinkan untuk terhubung ke port penerusan lokal.

GlobalKnownHostsFile

Menentukan file yang akan digunakan untuk database kunci host global, bukan /etc/ssh/ssh_known_hosts.

GSSAPIAuthentication

Menentukan apakah autentikasi pengguna berdasarkan GSSAPI diizinkan. GSSAPI biasanya digunakan untuk otentikasi Kerberos, misalnya dengan Active Directory .

GSSAPIKey Exchange

Menentukan apakah pertukaran kunci berdasarkan GSSAPI dapat digunakan.

GSSAPIClientIdentity

Jika disetel, tentukan identitas klien GSSAPI yang harus digunakan ssh saat menghubungkan ke server.

GSSAPIDelegateCredentials

Teruskan (delegasikan) kredensial ke server.

GSSAPIRenewalForcesRekey

Jika disetel ke yesmaka pembaruan kredensial GSSAPI klien akan memaksa rekeying koneksi ssh.

GSSAPITrustDns

Setel ke yesuntuk menunjukkan bahwa DNS dipercaya untuk secara aman mengkanonikalisasi nama host yang terhubung. Jika no, nama host yang dimasukkan pada baris perintah akan diteruskan tanpa disentuh ke pustaka GSSAPI.

HashKnownHosts

Menunjukkan bahwa ssh harus meng-hash nama dan alamat host saat ditambahkan ke ~/.ssh/known_hosts. Nama hash ini dapat digunakan secara normal oleh ssh dan sshd , tetapi mereka tidak mengungkapkan informasi identitas jika konten file diungkapkan.

HostbasedAuthentication

Menentukan apakah akan mencoba otentikasi berbasis rhosts dengan otentikasi kunci publik, menggunakan file .rhostsor .shostsdi direktori home pengguna dan /etc/hosts.equivdan /etc/shosts.equivdalam konfigurasi global.

HostKeyAlgorithms

Menentukan algoritma kunci host versi protokol 2 yang ingin digunakan klien dalam urutan preferensi. Nilai-nilai berikut ini didukung di OpenSSH 6.7:

ssh-ed25519 ssh-ed25519-cert-v01@openssh.com ssh-rsa ssh-dss ecdsa-sha2-nistp256 ecdsa-sha2-nistp384 ecdsa-sha2-nistp521 ssh-rsa-cert-v01@openssh.com cert-v01@openssh.com ecdsa-sha2-nistp256-cert-v01@openssh.com ecdsa-sha2-nistp384-cert-v01@openssh.com ecdsa-sha2-nistp521-cert-v01@openssh.com ssh-rsa- cert-v00@openssh.com ssh-dss-cert-v00@openssh.com

HostKeyAlias

Menentukan alias yang harus digunakan sebagai ganti nama host asli saat mencari atau menyimpan kunci host di file database kunci host.

HostName

Menentukan nama host asli untuk login. Ini dapat digunakan untuk menentukan nama panggilan atau singkatan untuk host. Defaultnya adalah nama yang diberikan pada baris perintah. Alamat IP numerik juga diizinkan (baik di baris perintah maupun dalam spesifikasi HostName).

IdentitiesOnly

Menentukan bahwa ssh hanya boleh menggunakan kunci identitas yang dikonfigurasi dalam ssh_configfile, bahkan jika ssh-agent menawarkan lebih banyak identitas.

IdentityFile

Menentukan file tempat kunci identitas pengguna dibaca saat menggunakan autentikasi kunci publik . Standar untuk protokol versi 1 adalah ~/.ssh/identity; dan ~/.ssh/id_rsaatau ~/.ssh/id_dsauntuk protokol versi 2.

KbdInteractiveAuthentication

Menentukan apakah akan menggunakan autentikasi keyboard-interaktif. Ini adalah metode umum untuk otentikasi kata sandi, kata sandi satu kali, dan otentikasi multi-faktor.

KbdInteractiveDevices

Menentukan daftar metode yang akan digunakan dalam autentikasi keyboard-interaktif.

LocalCommand

Menentukan perintah untuk dijalankan pada mesin lokal setelah berhasil terhubung ke server.

LocalForward

Menentukan bahwa port TCP pada mesin lokal diteruskan melalui saluran aman ke host dan port tertentu dari mesin jarak jauh. Argumen pertama harus [bind_address:]portdan argumen kedua harus host:port.

LogLevel

Menentukan tingkat verbositas pesan logging dari ssh. Nilai yang mungkin adalah: QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, dan DEBUG3.

MACs

Menentukan algoritma MAC (kode otentikasi pesan) dalam urutan preferensi. The ssh -Q macperintah dapat digunakan untuk permintaan algoritma MAC didukung. Daftar berikut ini didukung di OpenSSH 6.7:

hmac-sha1 hmac-sha1-96 hmac-sha2-256 hmac-sha2-512 hmac-md5 hmac-md5-96 hmac-ripemd160 hmac-ripemd160@openssh.com umac-64@openssh.com umac-128@openssh.com hmac-sha1-etm@openssh.com hmac-sha1-96-etm@openssh.com hmac-sha2-256-etm@openssh.com hmac-sha2-512-etm@openssh.com hmac-md5-etm@openssh.com hmac-md5-96-etm@openssh.com hmac-ripemd160-etm@openssh.com umac-64-etm@openssh.com umac-128-etm@openssh.com

NoHostAuthenticationForLocalhost

Opsi ini dapat digunakan jika direktori home dibagikan di seluruh mesin. Dalam hal ini localhost akan merujuk ke mesin yang berbeda di setiap mesin dan pengguna akan mendapatkan banyak peringatan tentang kunci host yang diubah.

PreferredAuthentications

Menentukan urutan di mana klien harus mencoba metode otentikasi protokol 2.

Protocol

Menentukan versi protokol dalam urutan preferensi. Nilai yang mungkin adalah '1' dan '2'. Beberapa versi harus dipisahkan dengan koma. Penggunaan protokol versi 1 TIDAK DIREKOMENDASIKAN karena alasan keamanan. Ada alasan untuk percaya bahwa itu mungkin rentan terhadap serangan man-in-the-middle .

ProxyCommand

Menentukan perintah yang akan digunakan untuk terhubung ke server. The SSH client berkomunikasi dengan perintah proxy menggunakan input standar dan output standar, dan perintah proxy yang harus melewati komunikasi ke SSH server .

PubkeyAuthentication

Menentukan apakah akan mencoba autentikasi kunci publik menggunakan kunci SSH . Nilai yang valid adalah yesdan no. Ketika otentikasi kunci publik digunakan dalam lingkungan produksi, sistem manajemen kunci SSH yang tepat juga harus diterapkan.

RemoteForward

Menentukan bahwa port TCP pada mesin jarak jauh diteruskan melalui saluran aman ke host dan port tertentu dari mesin lokal. Argumen pertama harus: [bind_address:]portdan argumen kedua harus host:port. Penerowongan SSH adalah alat yang ampuh, tetapi lihat pertimbangan keamanan di penerowongan SSH .

RhostsRSAAuthentication

Menentukan apakah akan mencoba otentikasi berbasis rhosts dengan otentikasi host RSA. Ini hanya untuk protokol versi 1 dan tidak digunakan lagi.

RSAAuthentication

Menentukan apakah akan mencoba autentikasi RSA. Ini hanya untuk protokol versi 1 dan tidak digunakan lagi.

SendEnv

Menentukan variabel lingkungan apa yang harus dikirim ke server.

ServerAliveCountMax

Menetapkan jumlah pesan keepalive yang mungkin dikirim oleh klien tanpa klien menerima pesan apa pun kembali dari server. Ketika ambang batas ini tercapai, klien akan mengakhiri sesi.

ServerAliveInterval

Menentukan interval untuk mengirim pesan keepalive ke server. Pesan dikirim melalui saluran terenkripsi, dan berfungsi untuk mendeteksi apakah server mogok atau jaringan mati.

SmartcardDevice

Menentukan perangkat smartcard mana yang akan digunakan.

StrictHostKeyChecking

Menentukan apakah ssh tidak boleh secara otomatis menambahkan kunci host ke ~/.ssh/known_hostsfile, dan menolak untuk terhubung ke host yang kunci hostnya telah berubah.

TCPKeepAlive

Menentukan apakah akan mengirim TCP keepalives ke sisi lain. Ini beroperasi pada tingkat protokol TCP. Mengirim keepalives membantu menutup soket dengan benar saat jaringan atau server mati. Di sisi lain, tanpa itu, koneksi mungkin tetap hidup dan jendela apa pun terbuka, bahkan jika jaringan mati untuk sementara waktu.

Tunnel

Jika yes, minta tunpenerusan perangkat antara klien dan server. Ini digunakan untuk mengimplementasikan VPN melalui SSH.

TunnelDevice

Menentukan perangkat tun untuk dibuka pada klien ( local_tun ) dan server ( remote_tun ).

UsePrivilegedPort

Menentukan apakah akan menggunakan port yang diistimewakan untuk koneksi keluar atau tidak. Klien harus dijalankan sebagai root untuk menggunakan port yang diistimewakan. Sebuah port istimewa diperlukan untuk otentikasi berbasis host.

UserKnownHostsFile

Menentukan file yang akan digunakan untuk basis data kunci host yang diketahui per pengguna, bukan default ~/.ssh/known_hosts.

VerifikasiHostKeyDNS

Menentukan apakah akan memverifikasi kunci jarak jauh menggunakan catatan sumber daya DNS dan SSHFP .

VisualHostKey

Menentukan apakah representasi seni ASCII dari sidik jari kunci host jarak jauh dicetak di samping string sidik jari hex saat login dan untuk kunci host yang tidak dikenal.