Menggunakan SSH key di TPM

Trusted Platform Module (TPM) adalah teknologi kriptografi berbasis hardware. TPM digunakan untuk memastikan proses boot tidak dimodifikasi (secure boot), dan digunakan oleh sistem operasi untuk enkripsi (misalnya Bitlocker) dan menyimpan informasi user (Windows Hello).

Di dalam komputer, TPM ini bisa berupa sebuah chip, atau sudah ada di dalam CPU. Prosesor Intel sejak Skylake/Intel Gen 6, dan AMD (sejak AM4) sudah punya fitur TPM built in. Kita bisa menggunakan fitur TPM ini untuk key SSH.

Ketika berbicara tentang SSH, ada banyak implementasinya (misalnya dropbear, tinyssh, dsb), saya akan menggunakan spesifik OpenSSH di tulisan ini.OpenSSH ini tersedia di hampir semua platform, termasuk juga Windows.

Intinya di sini saya akan membahas bagaimana membuat SSH Key yang tidak bisa dicopy, dan kita cukup menggunakan PIN atau sidik jari untuk login SSH.

Login SSH dengan fingerprint/Windows Hello
Lanjutkan membaca “Menggunakan SSH key di TPM”

SSH Tunneling dan Internet Gratis

Saat ini sepertinya semua developer sudah memakai SSH sehari-hari. Sebagian mungkin sudah mengenal beberapa fitur ekstra SSH, tapi kebanyakan tidak tahu fitur lengkapnya. Wajar saja sih, meski RFC untuk SSH ini singkat (terbagi dalam beberapa RFC), ada banyak fitur di luar RFC yang diimplementasikan oleh berbagai software SSH. Sampai-sampai ada beberapa buku yang khusus hanya membahas SSH saja.

Di tulisan ini, saya tidak akan membahas semua fitur SSH, hanya beberapa fitur yang menarik yang berhubungan dengan port forwarding, serta pembahasan bagaimana SSH ini bisa menjadi jalan untuk internet gratis atau tanpa restriksi.

Fitur paling dasar yang dikenal orang adalah login ke server lain, dan berikutnya mungkin melakukan scp atau sftp ke server lain untuk mentransfer file. Fitur menarik berikutnya adalah X11 forwarding yang untuk mengakses aplikasi GUI di server (unix) lain.
client-server

SSH mendukung multi channel dalam satu koneksi, dan ini bisa dimanfaatkan untuk TCP/IP forwarding (mengenai ini bisa dibaca di RFC 4254). Saya akan jelaskan beberapa kegunaan forwarding ini. Channel yang dibentuk oleh mekanisme forwarding ini disebut juga sebagai tunnel.

Lanjutkan membaca “SSH Tunneling dan Internet Gratis”

Why I Like cat

Bukan, posting ini bukan soal kucing, tapi soal perintah cat di UNIX (Linux/Mac/BSD). Perintah ini gunanya untuk menggabungkan (concatenate) file-file input ke standard output (bahasa sederhananya: ditampilkan ke layar). Jika hanya satu file yang diberikan sebagai input, maka file itu akan ditampilkan.

Di UNIX, kita bisa mengkomposisi banyak perintah dengan menggunakan pipe. Output perintah satu bisa dijadikan input perintah yang lain. Nah banyak orang suka menggunakan cat untuk memberikan file ke program lain, misalnya seperti ini:

cat file.txt| grep secara | wc -l

(hitung berapa jumlah baris yang mengandung kata secara)

Penggunaan perintah cat tersebut sebenarnya tidak perlu, karena seharusnya cukup

grep secara file.txt | wc -l

atau bisa juga menggunakan redirection

grep secara < file.txt | wc -l

Sebagian orang memandang penggunaan cat dalam kasus ini sangat tidak diperlukan, dan dianggap membuang resource (karena proses cat harus dieksekusi plus pipe harus dibuat). Orang-orang ini (sejak 1995) kadang-kadang memberikan “penghargaan” Useless Use of cat.

Saya termasuk orang yang suka menggunakan cat di 99% situasi. Dalam posting ini saya akan memberikan alasannya kenapa.

Lanjutkan membaca “Why I Like cat”