Perintah Linux & Keterampilan Shell
ssh: Koneksi yang Menjalankan Infrastruktur Anda
ssh bukanlah kemudahan, ini adalah transportasi yang dijalankan setiap operasi di setiap server, dan ~/.ssh/config adalah kontrak dengan diri Anda di masa depan pada jam 3 pagi. Alias host, entri IdentityFile, target ProxyJump, dan pengaturan keepalive mengubah kalimat bendera yang diingat menjadi perintah satu kata. Tunnels (-L, -R, -D) dan multiplexing ControlMaster adalah apa yang mengubah 'shell' menjadi permukaan perintah infrastruktur, dan keduanya merupakan pekerjaan file konfigurasi, bukan pekerjaan memori.
Poin Utama
- Masukkan semuanya ke dalam ~/.ssh/config: Host alias dengan User, IdentityFile, IdentitiesOnly yes, dan ProxyJump jadikan 'ssh prod-web1' satu kata; kalimat bendera yang diketik secara identik lima kali sehari adalah entri konfigurasi yang hilang.
- Kunci adalah satu-satunya permainan: ssh-keygen -t ed25519 -C 'role@team', separuh publik ke kunci_otorisasi, dan Otentikasi Kata Sandi tidak ada di server setelah rotasi benar-benar terbukti berfungsi.
- Jump host diciutkan menjadi satu bendera: ssh -J bastion.corp internal-host, atau ProxyJump bastion.corp di blok Host; mantra ProxyCommand yang lama masih berfungsi dan bukan lagi pekerjaan siapa pun.
- Terowongan memiliki tujuan: -L 5432:db.internal:5432 untuk menjangkau database, -D 1080 sebagai shim SOCKS melalui jaringan yang ketat, -R untuk mengekspos kotak dev lokal, masing-masing terikat ke localhost kecuali Anda memperluasnya secara eksplisit.
- Multiplexing ControlMaster (ControlMaster auto, ControlPath ~/.ssh/cm-%r@%h:%p, ControlPersist 10m) menghentikan menjalankan kembali jabat tangan pada setiap pembukaan dan membuat multi-jendela berfungsi pada satu host secara instan.
- Keepalives menjaga sesi melalui NAT dan penurunan firewall yang menganggur: ServerAliveInterval 60 plus ServerAliveCountMax 3 sisi klien mengalahkan laporan misterius 'sesi mati dalam 4 menit' sebagian besar waktu.
- Membatasi akses berbahaya: -N (tidak ada perintah jarak jauh) untuk penerusan port murni, -n untuk pekerjaan batch yang membaca dari stdin, dan fail2ban ditambah MaxAuthTries yang waras sehingga brute force mati di log, bukan di akun.
- Urutan debug penting: ssh -vvv mengungkapkan penguraian konfigurasi, negosiasi autentikasi, dan kegagalan saluran dalam urutan itu, dan dump host -G menjawab 'mengapa ia memilih kunci itu dan pengguna itu' tanpa menyentuh server.
Catatan Lapangan
Saya pernah menonaktifkan PasswordAuthentication sebelum kunci baru benar-benar ada di otor_keys dan mengunci tim saya sendiri selama satu malam. Ritualnya sekarang: sesi kedua terbuka, kunci terbukti berfungsi, dan ServerAliveInterval di konfigurasi sehingga idle bastion NAT menghentikan sesi penghentian.
Pertanyaan Umum
Dalam satu kalimat masing-masing: -L, -R, -D?
-L membawa port lokal ke depan menuju layanan jarak jauh, -R mendorong port jarak jauh kembali ke mesin Anda (tahu persis apa yang Anda ekspos), dan -D membuka proksi SOCKS dinamis melalui koneksi.
Sesi saya terhenti setelah beberapa menit menganggur. Memperbaiki?
Batas waktu menganggur pada NAT atau firewall adalah penyebab umum: setel ServerAliveInterval di klien (dan jaga agar TCPKeepAlive tetap waras di server); perbaikan yang sama termasuk dalam konfigurasi yang Anda gunakan untuk bastion hop basement.
ssh-agent atau kunci tanpa kata sandi?
Agen, selalu: ia menyimpan kunci yang didekripsi per sesi sehingga kunci menyimpan frasa sandi dan otomatisasi tetap non-interaktif; ForwardAgent yes di benteng tepercaya baik-baik saja dan ssh-add -l memberi tahu Anda apa yang dimuat sebelum Anda membohongi diri sendiri.
Bagaimana cara berhenti mengetik ulang spesifikasi terowongan?
Baris LocalForward dan RemoteForward di dalam blok Host: 'ssh dbtunnel' kemudian melakukan semuanya; satu entri per tujuan membuat file tetap dapat dibaca dan memungkinkan audit melihat dengan tepat siapa yang meneruskan apa.
Bagaimana Kinetikatech membantu dengan perintah linux & keterampilan shell
Anda tidak harus menjadi ahli dalam perintah linux & keterampilan shell: Perintah dan kebiasaan skrip yang menentukan apakah administrator mengoperasikan server atau melawannya: mencari, mengubah, mentransfer, dan mengawasi teks dan proses dengan alat yang ada di setiap instalasi dasar. Tepat untuk itu ada Keamanan Server Linux dan Manajemen Server: konfigurasi, perlindungan, pemantauan, dan ins engineer siaga siang dan malam.