From 9de5e14b1d82e4b292449da1f44064cce5952727 Mon Sep 17 00:00:00 2001 From: Haydar <134215660+haydaramru@users.noreply.github.com> Date: Wed, 22 Oct 2025 21:22:04 +0700 Subject: [PATCH] pages.id/*: add Indonesian translation (#18702) --- pages.id/common/awk.md | 38 ++++++++++++++++++++++++++++++++++ pages.id/common/find.md | 36 ++++++++++++++++++++++++++++++++ pages.id/common/gzip.md | 32 ++++++++++++++++++++++++++++ pages.id/common/sed.md | 17 +++++++++++++++ pages.id/common/ssh-add.md | 29 ++++++++++++++++++++++++++ pages.id/common/ssh-agent.md | 14 +++++++++++++ pages.id/common/ssh-copy-id.md | 16 ++++++++++++++ pages.id/common/ssh-keygen.md | 37 +++++++++++++++++++++++++++++++++ pages.id/common/ssh-keyscan.md | 20 ++++++++++++++++++ pages.id/common/ssh.md | 37 +++++++++++++++++++++++++++++++++ pages.id/common/sshd.md | 21 +++++++++++++++++++ pages.id/common/sshfs.md | 24 +++++++++++++++++++++ pages.id/common/sshpass.md | 17 +++++++++++++++ pages.id/common/sshuttle.md | 21 +++++++++++++++++++ 14 files changed, 359 insertions(+) create mode 100644 pages.id/common/awk.md create mode 100644 pages.id/common/find.md create mode 100644 pages.id/common/gzip.md create mode 100644 pages.id/common/sed.md create mode 100644 pages.id/common/ssh-add.md create mode 100644 pages.id/common/ssh-agent.md create mode 100644 pages.id/common/ssh-copy-id.md create mode 100644 pages.id/common/ssh-keygen.md create mode 100644 pages.id/common/ssh-keyscan.md create mode 100644 pages.id/common/ssh.md create mode 100644 pages.id/common/sshd.md create mode 100644 pages.id/common/sshfs.md create mode 100644 pages.id/common/sshpass.md create mode 100644 pages.id/common/sshuttle.md diff --git a/pages.id/common/awk.md b/pages.id/common/awk.md new file mode 100644 index 0000000000..2c28c5c46c --- /dev/null +++ b/pages.id/common/awk.md @@ -0,0 +1,38 @@ +# awk + +> Bahasa pemrograman serbaguna yang seringkali digunakan untuk memproses berkas. +> Note: Implementasi AWK yang berbeda (misalnya, gawk, nawk, atau lainnya) akan membuat tautan simbolik dari nama file tertentu ke file biner utama mereka. +> Lihat juga: `gawk`. +> Informasi lebih lanjut: . + +- Cetak kolom (atau bidang) kelima dalam berkas yang dipisahkan spasi: + +`awk '{print $5}' {{lokasi/berkas}}` + +- Cetak kolom kedua dari baris yang mengandung "foo" dalam berkas yang dipisahkan spasi: + +`awk '/{{foo}}/ {print $2}' {{lokasi/berkas}}` + +- Cetak kolom terakhir dari setiap baris dalam sebuah berkas, menggunakan koma (bukan spasi) sebagai pemisah bidang: + +`awk -F ',' '{print $NF}' {{lokasi/berkas}}` + +- Jumlahkan nilai di kolom pertama dari sebuah berkas dan cetak totalnya: + +`awk '{s+=$1} END {print s}' {{lokasi/berkas}}` + +- Cetak setiap baris ketiga dimulai dari baris pertama: + +`awk 'NR%3==1' {{lokasi/berkas}}` + +- Cetak nilai yang berbeda berdasarkan kondisi: + +`awk '{if ($1 == "foo") print "Cocok persis foo"; else if ($1 ~ "bar") print "Cocok sebagian bar"; else print "Baz"}' {{lokasi/berkas}}` + +- Cetak semua baris yang nilai kolom ke-10nya berada di antara nilai minimum dan maksimum: + +`awk '($10 >= {{nilai_min}} && $10 <= {{nilai_maks}})'` + +- Cetak tabel pengguna dengan UID >= 1000 beserta header dan output yang terformat, menggunakan titik dua sebagai pemisah (`%-20s` berarti: string 20 karakter rata kiri, `%6s` berarti: string 6 karakter rata kanan): + +`awk 'BEGIN {FS=":";printf "%-20s %6s %25s\n", "Nama", "UID", "Shell"} $4 >= 1000 {printf "%-20s %6d %25s\n", $1, $4, $7}' /etc/passwd` diff --git a/pages.id/common/find.md b/pages.id/common/find.md new file mode 100644 index 0000000000..3c08838e08 --- /dev/null +++ b/pages.id/common/find.md @@ -0,0 +1,36 @@ +# find + +> Mencari file atau direktori di dalam sebuah struktur direktori (directory tree) secara rekursif. +> Informasi lebih lanjut: . + +- Cari berkas berdasarkan ekstensi: + +`find {{lokasi/awal}} -name '{{*.ext}}'` + +- Cari berkas yang cocok dengan beberapa pola nama/lokasi: + +`find {{lokasi/awal}} -path '{{*/lokasi/*/*.ext}}' -or -name '{{*pola*}}'` + +- Cari direktori yang cocok dengan nama tertentu, dalam mode tidak peka huruf (case-insensitive): + +`find {{lokasi/awal}} -type d -iname '{{*lib*}}'` + +- Cari berkas yang cocok dengan pola tertentu, dengan mengecualikan lokasi spesifik: + +`find {{lokasi/awal}} -name '{{*.py}}' -not -path '{{*/site-packages/*}}'` + +- Cari berkas dengan rentang ukuran tertentu dengan membatasi kedalaman rekursif hingga "1": + +`find {{lokasi/awal}} -maxdepth 1 -size {{+500k}} -size {{-10M}}` + +- Jalankan perintah untuk setiap berkas/fail (gunakan `{}` di dalam perintah untuk mengakses nama berkas/fail): + +`find {{lokasi/awal}} -name '{{*.ext}}' -exec {{wc -l}} {} \;` + +- Cari semua berkas/fail yang diubah hari ini dan teruskan hasilnya sebagai argumen ke satu perintah: + +`find {{lokasi/awal}} -daystart -mtime {{-1}} -exec {{tar -cvf arsip.tar}} {} \+` + +- Cari berkas/fail atau direktori kosong lalu hapus dengan menampilkan prosesnya (verbose): + +`find {{lokasi/awal}} -type {{f|d}} -empty -delete -print` diff --git a/pages.id/common/gzip.md b/pages.id/common/gzip.md new file mode 100644 index 0000000000..66f8f7322c --- /dev/null +++ b/pages.id/common/gzip.md @@ -0,0 +1,32 @@ +# gzip + +> Kompres/dekompres berkas/fail komputer dengan kompresi `gzip` (LZ77). +> Informasi lebih lanjut: . + +- Kompres sebuah berkas, menggantinya dengan arsip `gzip`: + +`gzip {{lokasi/ke/berkas}}` + +- Dekompres sebuah berkas, menggantinya dengan versi asli yang tidak terkompres: + +`gzip {{[-d|--decompress]}} {{lokasi/ke/berkas.gz}}` + +- Kompres sebuah berkas dengan tetap mempertahankan berkas asli: + +`gzip {{[-k|--keep]}} {{lokasi/ke/berkas}}` + +- Kompres sebuah berkas dengan menentukan nama berkas output: + +`gzip {{[-c|--stdout]}} {{lokasi/ke/berkas}} > {{lokasi/ke/berkas_terkompres.gz}}` + +- Dekompres sebuah arsip `gzip` dengan menentukan nama berkas output: + +`gzip {{[-cd|--stdout --decompress]}} {{lokasi/ke/berkas.gz}} > {{lokasi/ke/berkas_dekompres}}` + +- Tentukan level kompresi. 1 berarti yang tercepat (kompresi rendah), 9 berarti yang terlambat (kompresi tinggi), 6 berarti default: + +`gzip -{{1..9}} {{[-c|--stdout]}} {{lokasi/ke/berkas}} > {{lokasi/ke/berkas_terkompres.gz}}` + +- Tampilkan nama dan persentase reduksi untuk setiap berkas yang dikompres atau didekompres: + +`gzip {{[-vd|--verbose --decompress]}} {{lokasi/ke/berkas.gz}}` diff --git a/pages.id/common/sed.md b/pages.id/common/sed.md new file mode 100644 index 0000000000..7b009247c1 --- /dev/null +++ b/pages.id/common/sed.md @@ -0,0 +1,17 @@ +# sed + +> Mengedit teks secara skrip. +> Lihat juga: `awk`, `ed`. +> Informasi lebih lanjut: . + +- Ganti semua kata `apple` (`regex` dasar) yang muncul dengan kata `mango` (`regex` dasar) di semua baris input dan cetak hasilnya ke `stdout`: + +`{{command}} | sed 's/apple/mango/g'` + +- Jalankan skrip tertentu [f]ile dan cetak hasilnya ke `stdout`: + +`{{command}} | sed -f {{path/to/script.sed}}` + +- Cetak hanya baris pertama saja ke `stdout`: + +`{{command}} | sed -n '1p'` diff --git a/pages.id/common/ssh-add.md b/pages.id/common/ssh-add.md new file mode 100644 index 0000000000..416ce54405 --- /dev/null +++ b/pages.id/common/ssh-add.md @@ -0,0 +1,29 @@ +# ssh-add + +> Mengelola kunci SSH yang dimuat di dalam `ssh-agent`. +> Pastikan `ssh-agent` sudah berjalan agar kunci dapat dimuat ke dalamnya. +> Informasi lebih lanjut: . + +- Tambahkan kunci SSH default di `~/.ssh` ke ssh-agent: + +`ssh-add` + +- Tambahkan kunci spesifik ke ssh-agent: + +`ssh-add {{lokasi/ke/kunci_privat}}` + +- Tampilkan sidik jari (fingerprint) dari kunci yang sedang dimuat: + +`ssh-add -l` + +- Hapus sebuah kunci dari ssh-agent: + +`ssh-add -d {{lokasi/ke/kunci_privat}}` + +- Hapus semua kunci yang sedang dimuat dari ssh-agent: + +`ssh-add -D` + +- Tambahkan kunci ke ssh-agent dan keychain: + +`ssh-add -K {{lokasi/ke/kunci_privat}}` diff --git a/pages.id/common/ssh-agent.md b/pages.id/common/ssh-agent.md new file mode 100644 index 0000000000..5c82668307 --- /dev/null +++ b/pages.id/common/ssh-agent.md @@ -0,0 +1,14 @@ +# ssh-agent + +> Memulai sebuah proses SSH Agent. +> SSH Agent menyimpan kunci SSH yang terdekripsi di dalam memori hingga kunci tersebut dihapus atau prosesnya dimatikan. +> Lihat juga: `ssh-add`, yang dapat menambah dan mengelola kunci yang disimpan oleh SSH Agent. +> Informasi lebih lanjut: . + +- Mulai sebuah SSH Agent untuk sesi shell saat ini: + +`eval $(ssh-agent)` + +- Matikan agen yang sedang berjalan: + +`ssh-agent -k` diff --git a/pages.id/common/ssh-copy-id.md b/pages.id/common/ssh-copy-id.md new file mode 100644 index 0000000000..2dcb485c26 --- /dev/null +++ b/pages.id/common/ssh-copy-id.md @@ -0,0 +1,16 @@ +# ssh-copy-id + +> Pasang kunci publik Anda di berkas/fail authorized_keys pada mesin jarak jauh (remote host). +> Informasi lebih lanjut: . + +- Salin kunci Anda ke mesin jarak jauh (remote host): + +`ssh-copy-id {{nama_pengguna}}@{{host_jarak_jauh}}` + +- Salin kunci publik yang diberikan ke mesin jarak jauh (remote host): + +`ssh-copy-id -i {{lokasi/ke/kunci_publik}} {{nama_pengguna}}@{{host_jarak_jauh}}` + +- Salin kunci publik yang diberikan ke mesin jarak jauh (remote host) dengan port spesifik: + +`ssh-copy-id -i {{lokasi/ke/kunci_publik}} -p {{port}} {{nama_pengguna}}@{{host_jarak_jauh}}` diff --git a/pages.id/common/ssh-keygen.md b/pages.id/common/ssh-keygen.md new file mode 100644 index 0000000000..3e1c05761a --- /dev/null +++ b/pages.id/common/ssh-keygen.md @@ -0,0 +1,37 @@ +# ssh-keygen + +> Membuat kunci SSH yang digunakan untuk autentikasi, login tanpa kata sandi, dan hal lainnya. +> Lihat juga: `ssh-copy-id` untuk memasang kunci SSH di host jarak jauh. +> Informasi lebih lanjut: . + +- Buat kunci kriptografi secara interaktif: + +`ssh-keygen` + +- Buat kunci kriptografi jenis ed25519 dengan 32 putaran fungsi derivasi kunci (Key Derivation Function) dan simpan kunci ke berkas/fail tertentu: + +`ssh-keygen -t {{ed25519}} -a {{32}} -f {{~/.ssh/nama_berkas}}` + +- Buat kunci kriptografi jenis RSA 4096-bit dengan email sebagai komentar: + +`ssh-keygen -t {{rsa}} -b {{4096}} -C "{{komentar|email}}"` + +- Hapus kunci sebuah host dari berkas/fail `known_hosts` (digunakan saat host yang dikenal memiliki kunci kriptografi baru): + +`ssh-keygen -R {{host_jarak_jauh}}` + +- Ambil sidik jari (fingerprint) dari sebuah kunci kriptografi dalam format MD5 Hex: + +`ssh-keygen -l -E {{md5}} -f {{~/.ssh/nama_berkas}}` + +- Ubah kata sandi (passphrase) sebuah kunci kriptografi: + +`ssh-keygen -p -f {{~/.ssh/nama_berkas}}` + +- Ubah tipe format kunci (contohnya dari format OPENSSH ke PEM), berkas akan ditimpa di tempat yang sama: + +`ssh-keygen -p -N "" -m {{PEM}} -f {{~/.ssh/kunci_privat_OpenSSH}}` + +- Ambil kunci publik dari kunci rahasia (privat): + +`ssh-keygen -y -f {{~/.ssh/kunci_privat_OpenSSH}}` diff --git a/pages.id/common/ssh-keyscan.md b/pages.id/common/ssh-keyscan.md new file mode 100644 index 0000000000..6aebeb3ecc --- /dev/null +++ b/pages.id/common/ssh-keyscan.md @@ -0,0 +1,20 @@ +# ssh-keyscan + +> Mengambil kunci publik SSH dari host jarak jauh (remote host). +> Informasi lebih lanjut: . + +- Mengambil semua kunci publik SSH dari sebuah host jarak jauh (remote host): + +`ssh-keyscan {{nama_host}}` + +- Mengambil semua kunci publik SSH dari host jarak jauh (remote host) yang berjalan pada port tertentu: + +`ssh-keyscan -p {{port}} {{nama_host}}` + +- Mengambil tipe kunci publik SSH tertentu dari sebuah host jarak jauh (remote host): + +`ssh-keyscan -t {{rsa,dsa,ecdsa,ed25519}} {{nama_host}}` + +- Perbarui berkas/fail `known_hosts` SSH secara manual dengan sidik jari (fingerprint) dari host yang diberikan: + +`ssh-keyscan -H {{nama_host}} >> ~/.ssh/known_hosts` diff --git a/pages.id/common/ssh.md b/pages.id/common/ssh.md new file mode 100644 index 0000000000..1e150a6f6c --- /dev/null +++ b/pages.id/common/ssh.md @@ -0,0 +1,37 @@ +# ssh + +> Secure Shell adalah protokol yang digunakan untuk masuk (log on) secara aman ke sistem jarak jauh. +> Dapat digunakan untuk masuk atau menjalankan perintah pada server jarak jauh. +> Informasi lebih lanjut: . + +- Terhubung ke server jarak jauh: + +`ssh {{nama_pengguna}}@{{host_jarak_jauh}}` + +- Terhubung ke server jarak jauh dengan identitas (kunci privat) tertentu: + +`ssh -i {{lokasi/ke/berkas_kunci}} {{nama_pengguna}}@{{host_jarak_jauh}}` + +- Terhubung ke server jarak jauh dengan IP `10.0.0.1` dan menggunakan [p]ort tertentu (Catatan: `10.0.0.1` bisa disingkat menjadi `10.1`): + +`ssh {{nama_pengguna}}@10.0.0.1 -p {{2222}}` + +- Jalankan perintah di server jarak jauh dengan alokasi [t]ty agar dapat berinteraksi dengan perintah tersebut: + +`ssh {{nama_pengguna}}@{{host_jarak_jauh}} -t {{perintah}} {{argumen_perintah}}` + +- SSH tunneling: [D]ynamic port forwarding (proksi SOCKS pada `localhost:1080`): + +`ssh -D {{1080}} {{nama_pengguna}}@{{host_jarak_jauh}}` + +- SSH tunneling: Meneruskan (forward) port tertentu (`localhost:9999` ke `example.org:80`) sekaligus menonaktifkan alokasi pseudo-[T]ty dan eksekusi perintah jarak jauh ([N]): + +`ssh -L {{9999}}:{{example.org}}:{{80}} -N -T {{nama_pengguna}}@{{host_jarak_jauh}}` + +- SSH [J]umping: Terhubung ke server jarak jauh melalui sebuah jumphost (Beberapa lompatan jump dapat ditentukan, dipisahkan dengan koma): + +`ssh -J {{nama_pengguna}}@{{host_jump}} {{nama_pengguna}}@{{host_jarak_jauh}}` + +- Tutup sesi yang macet (hang): + +`<~><.>` diff --git a/pages.id/common/sshd.md b/pages.id/common/sshd.md new file mode 100644 index 0000000000..6a0c23fec7 --- /dev/null +++ b/pages.id/common/sshd.md @@ -0,0 +1,21 @@ +# sshd + +> Secure Shell Daemon - mengizinkan mesin jarak jauh (remote host) untuk masuk (log in) secara aman ke mesin klien. +> Mesin jarak jauh dapat mengeksekusi perintah di mesin ini. +> Informasi lebih lanjut: . + +- Mulai daemon di latar belakang (background): + +`sshd` + +- Jalankan sshd di latar depan (foreground): + +`sshd -D` + +- Jalankan dengan output verbose (untuk proses debug): + +`sshd -D -d` + +- Jalankan pada port tertentu: + +`sshd -p {{port}}` diff --git a/pages.id/common/sshfs.md b/pages.id/common/sshfs.md new file mode 100644 index 0000000000..364d4dbce0 --- /dev/null +++ b/pages.id/common/sshfs.md @@ -0,0 +1,24 @@ +# sshfs + +> Klien sistem berkas (filesystem) berbasis SSH. +> Informasi lebih lanjut: . + +- Kaitkan (mount) direktori jarak jauh (remote directory): + +`sshfs {{nama_pengguna}}@{{host_jarak_jauh}}:{{direktori_jarak_jauh}} {{titik_kait}}` + +- Lepaskan (unmount) direktori jarak jauh (remote directory): + +`umount {{titik_kait}}` + +- Kaitkan direktori jarak jauh (remote directory) dari server dengan port spesifik: + +`sshfs {{nama_pengguna}}@{{host_jarak_jauh}}:{{direktori_jarak_jauh}} -p {{2222}}` + +- Gunakan kompresi: + +`sshfs {{nama_pengguna}}@{{host_jarak_jauh}}:{{direktori_jarak_jauh}} -C` + +- Ikuti tautan simbolik (symbolic links): + +`sshfs -o follow_symlinks {{nama_pengguna}}@{{host_jarak_jauh}}:{{direktori_jarak_jauh}} {{titik_kait}}` diff --git a/pages.id/common/sshpass.md b/pages.id/common/sshpass.md new file mode 100644 index 0000000000..403e27c2ee --- /dev/null +++ b/pages.id/common/sshpass.md @@ -0,0 +1,17 @@ +# sshpass + +> Penyedia kata sandi untuk SSH. +> Cara kerjanya adalah dengan membuat TTY, memasukkan kata sandi ke dalam TTY, lalu mengalihkan (redirect) `stdin` ke sesi SSH. +> Informasi lebih lanjut: . + +- Terhubung ke server jarak jauh (remote host) menggunakan kata sandi yang diberikan pada sebuah deskriptor berkas (dalam kasus ini, `stdin`): + +`sshpass -d {{0}} ssh {{pengguna}}@{{nama_host}}` + +- Terhubung ke server jarak jauh (remote host) dengan kata sandi yang diberikan sebagai sebuah opsi, dan secara otomatis menerima kunci SSH yang tidak dikenal: + +`sshpass -p {{kata_sandi}} ssh -o StrictHostKeyChecking=no {{pengguna}}@{{nama_host}}` + +- Terhubung ke server jarak jauh (remote host) menggunakan baris pertama dari sebuah berkas/fail sebagai kata sandi, kemudian secara otomatis menerima kunci SSH yang tidak dikenal, dan jalankan sebuah perintah: + +`sshpass -f {{lokasi/ke/berkas}} ssh -o StrictHostKeyChecking=no {{pengguna}}@{{nama_host}} "{{perintah}}"` diff --git a/pages.id/common/sshuttle.md b/pages.id/common/sshuttle.md new file mode 100644 index 0000000000..ca5195d171 --- /dev/null +++ b/pages.id/common/sshuttle.md @@ -0,0 +1,21 @@ +# sshuttle + +> Server proksi transparan yang meneruskan lalu lintas (traffic) melalui koneksi SSH. +> Tidak memerlukan root atau pengaturan khusus di server SSH jarak jauh, namun akses root di mesin lokal akan diminta. +> Informasi lebih lanjut: . + +- Teruskan semua lalu lintas TCP IPv4 melalui server SSH jarak jauh: + +`sshuttle {{[-r|--remote]}} {{nama_pengguna}}@{{server_ssh}} {{0.0.0.0/0}}` + +- Teruskan juga semua lalu lintas DNS ke DNS resolver default milik server: + +`sshuttle --dns {{[-r|--remote]}} {{nama_pengguna}}@{{server_ssh}} {{0.0.0.0/0}}` + +- Teruskan semua lalu lintas kecuali yang ditujukan untuk subnet tertentu: + +`sshuttle {{[-r|--remote]}} {{nama_pengguna}}@{{server_ssh}} {{0.0.0.0/0}} {{[-x|--exclude]}} {{192.168.0.1/24}}` + +- Gunakan metode tproxy untuk meneruskan semua lalu lintas IPv4 dan IPv6: + +`sshuttle --method tproxy {{[-r|--remote]}} {{nama_pengguna}}@{{server_ssh}} {{0.0.0.0/0}} {{::/0}} {{[-x|--exclude]}} {{alamat_ip_lokal_anda}} {{[-x|--exclude]}} {{alamat_ip_server_ssh}}`