system:linux:ssh

This is an old revision of the document!


SSH (Secure Shell)

SSH (Secure Shell) adalah protokol jaringan yang digunakan untuk komunikasi aman antar komputer. Semua data yang dikirim melalui SSH dienkripsi sehingga terlindungi dari penyadapan maupun serangan. SSH banyak dipakai untuk:

  • Mengelola server jarak jauh
  • Transfer file dengan aman
  • Membuat koneksi terenkripsi di jaringan publik

sudo apt update
sudo apt install openssh-server

Mengecek status service

systemctl status ssh

Output normalnya akan menunjukkan service active (running).

Lokasi file konfigurasi utama

/etc/ssh/sshd_config
/etc/ssh/sshd_config.d/

Koneksi ke server

# Default port (22)
ssh user@192.168.1.5
 
# Dengan port tertentu
ssh user@192.168.1.5 -p 6222

Menjalankan perintah langsung

# Menjalankan perintah di server
ssh user@192.168.1.5 'ls -l'
 
# Menjalankan script lokal di server
ssh user@192.168.1.5 bash < script.sh
 
# Kompres dan unduh file/folder dari server
ssh user@192.168.1.5 "tar czf - ~/source" > output.tgz

# Copy dari remote ke local
scp user@server:/dir/file.ext ./dest/
 
# Copy dari local ke remote
scp ./file.ext user@server:/dir/
 
# Copy folder (rekursif)
scp -r user@server:/dir ./dest/
 
# Copy antar remote server
scp user@server1:/file user@server2:/dir
 
# Copy semua isi folder
scp user@server:/dir/* ./

SSH Key memudahkan login tanpa password dengan sistem public/private key.

Membuat SSH Key

# RSA 4096 bit
ssh-keygen -t rsa -b 4096 -C "[email protected]"
 
# Ed25519 (lebih modern & ringan)
ssh-keygen -t ed25519 -C "comment's key"
 
# Interaktif default
ssh-keygen
 
# Tentukan nama file key
ssh-keygen -f ~/.ssh/custom_key

Operasi tambahan

# Buat public key dari private key
ssh-keygen -y -f private.key > public.pub
 
# Ubah komentar key
ssh-keygen -c -f ~/.ssh/id_rsa
 
# Ubah passphrase private key
ssh-keygen -p -f ~/.ssh/id_rsa

Menyalin key ke server

ssh-copy-id user@server
 
# Menyalin key tertentu
ssh-copy-id -i ~/.ssh/id_rsa.pub user@server
  • rsa
  • ed25519
  • dsa (lama, jarang dipakai)
  • ecdsa
  • PEM
  • PKCS8

Path Deskripsi
/etc/ssh/ssh_config Konfigurasi global (client)
~/.ssh/config Konfigurasi user (client)
~/.ssh/id_{type} Private key
~/.ssh/id_{type}.pub Public key
~/.ssh/known_hosts Daftar host yang dikenal
~/.ssh/authorized_keys Public key yang diizinkan

# Opsi global
ForwardAgent yes
ServerAliveInterval 60
Compression yes

# Host tertentu
Host example.com
    HostName example.com
    User username
    Port 22
    IdentityFile ~/.ssh/id_rsa
    # ProxyJump jump.example.com   # Gunakan bastion/jump host

# Alias untuk koneksi cepat
Host server1
    HostName 192.168.1.10
    User admin
    Port 2222
    IdentityFile ~/.ssh/id_ed25519

Menggunakan alias

ssh server1
  • system/linux/ssh.1769435100.txt.gz
  • Last modified: 2026/02/01 21:08
  • (external edit)