SSH adalah penyelamat saat Anda perlu mengelola komputer dari jarak jauh, tetapi tahukah Anda bahwa Anda juga dapat mengunggah dan mengunduh file? Dengan menggunakan kunci SSH, Anda tidak perlu memasukkan kata sandi dan menggunakannya untuk skrip!
Proses ini berfungsi di Linux dan Mac OS, asalkan dikonfigurasi dengan benar untuk akses SSH. Jika Anda menggunakan Windows, Anda bisa gunakan Cygwin untuk mendapatkan fungsionalitas mirip Linux , dan dengan sedikit penyesuaian, SSH juga akan berjalan .
Menyalin File Melalui SSH
Salinan aman adalah perintah yang sangat berguna, dan sangat mudah digunakan. Format dasar perintahnya adalah sebagai berikut:
scp [options] original_file destination_file
Penendang terbesar adalah bagaimana memformat bagian jarak jauh. Saat Anda menangani file jarak jauh, Anda perlu melakukannya dengan cara berikut:
pengguna @ server: jalur / ke / file
Server bisa berupa URL atau alamat IP. Ini diikuti oleh titik dua, lalu jalur ke file atau folder yang dimaksud. Mari kita lihat contohnya.
scp –P 40050 Desktop / url.txt [email protected]: ~ / Desktop / url.txt
Perintah ini menampilkan bendera [-P] (perhatikan bahwa itu adalah huruf besar P). Ini memungkinkan saya menentukan nomor port alih-alih default 22. Ini diperlukan bagi saya karena cara saya mengonfigurasi sistem saya.
Selanjutnya, file asli saya adalah "url.txt" yang ada di dalam direktori bernama "Desktop". File tujuan ada di “~ / Desktop / url.txt” yang sama dengan “/user/yatri/Desktop/url.txt”. Perintah ini dijalankan oleh pengguna "yatri" di komputer jarak jauh "192.168.1.50".
Bagaimana jika Anda perlu melakukan yang sebaliknya? Anda juga dapat menyalin file dari server jauh.
Di sini, saya telah menyalin file dari folder "~ / Desktop /" komputer jarak jauh ke folder "Desktop" komputer saya.
Untuk menyalin seluruh direktori, Anda perlu menggunakan tanda [-r] (perhatikan bahwa itu adalah huruf kecil r).
Anda juga bisa menggabungkan bendera. Dari pada
scp –P –r…
Anda bisa melakukannya
SCP - Tapi…
Bagian tersulit di sini adalah penyelesaian tab tidak selalu berfungsi, jadi sebaiknya miliki terminal lain dengan sesi SSH yang sedang berjalan sehingga Anda tahu di mana harus meletakkan sesuatu.
SSH dan SCP Tanpa Kata Sandi
Salinan aman sangat bagus. Anda dapat memasukkannya ke dalam skrip dan membuatnya melakukan backup ke komputer jarak jauh. Masalahnya adalah Anda mungkin tidak selalu ada untuk memasukkan kata sandi. Dan, sejujurnya, sungguh sulit untuk memasukkan sandi ke komputer jarak jauh yang jelas dapat Anda akses setiap saat.
Nah, kita bisa berkeliling menggunakan kata sandi dengan menggunakan file kunci. Kami dapat meminta komputer membuat dua file kunci - satu file publik yang ada di server jarak jauh, dan satu file pribadi yang ada di komputer Anda dan perlu diamankan - dan ini akan digunakan sebagai pengganti sandi. Cukup nyaman, bukan?
Di komputer Anda, masukkan perintah berikut:
ssh-keygen –t rsa
Ini akan menghasilkan dua kunci dan memasukkannya ke dalam:
~/.ssh/
dengan nama "id_rsa" untuk kunci pribadi Anda, dan "id_rsa.pub" untuk kunci publik Anda.
Setelah memasukkan perintah, Anda akan ditanya tempat untuk menyimpan kunci. Anda dapat menekan Enter untuk menggunakan default yang disebutkan di atas.
Selanjutnya, Anda akan diminta memasukkan frasa sandi. Tekan Enter untuk mengosongkannya, lalu lakukan lagi saat diminta konfirmasi. Langkah selanjutnya adalah menyalin file kunci publik ke komputer jarak jauh Anda. Anda dapat menggunakan scp untuk melakukan ini:
Tujuan kunci publik Anda ada di server jauh, di file berikut:
~ / .ssh / authorized_keys2
Kunci publik berikutnya dapat ditambahkan ke file ini, seperti file ~ / .ssh / known_hosts. Ini berarti jika Anda ingin menambahkan kunci publik lain untuk akun Anda di server ini, Anda harus menyalin konten file id_rsa.pub kedua ke baris baru di file authorized_keys2 yang ada.
Pertimbangan Keamanan
Bukankah ini kurang aman dari kata sandi?
Dalam arti praktis, tidak juga. Kunci pribadi yang dihasilkan disimpan di komputer yang Anda gunakan, dan tidak pernah ditransfer, bahkan untuk diverifikasi. Kunci pribadi ini HANYA cocok dengan SATU kunci publik tersebut, dan sambungan harus dimulai dari komputer yang memiliki kunci pribadi tersebut. RSA cukup aman dan menggunakan panjang 2048 bit secara default.
Ini sebenarnya sangat mirip secara teori dengan menggunakan sandi Anda. Jika seseorang mengetahui kata sandi Anda, keamanan Anda keluar dari jendela. Jika seseorang memiliki file kunci pribadi Anda, maka keamanan hilang ke komputer mana pun yang memiliki kunci publik yang cocok, tetapi mereka memerlukan akses ke komputer Anda untuk mendapatkannya.
Bisakah ini lebih aman?
Anda dapat menggabungkan kata sandi dengan file kunci. Ikuti langkah-langkah di atas, tetapi masukkan frasa sandi yang kuat. Sekarang, saat Anda terhubung melalui SSH atau menggunakan SCP, Anda memerlukan file kunci pribadi yang tepat sebaik frasa sandi yang tepat.
Setelah Anda memasukkan frasa sandi satu kali, Anda tidak akan diminta lagi sampai Anda menutup sesi. Artinya, pertama kali Anda menggunakan SSH / SCP, Anda harus memasukkan sandi, tetapi semua tindakan selanjutnya tidak memerlukannya. Setelah Anda keluar dari komputer Anda (bukan yang jarak jauh) atau menutup jendela terminal Anda, Anda harus memasukkannya lagi. Dengan cara ini, Anda tidak benar-benar mengorbankan keamanan, tetapi Anda juga tidak selalu diganggu untuk sandi.
Dapatkah saya menggunakan kembali pasangan kunci publik / pribadi?
Ini ide yang sangat buruk. Jika seseorang menemukan kata sandi Anda, dan Anda menggunakan kata sandi yang sama untuk semua akun Anda, maka mereka sekarang memiliki akses ke semua akun tersebut. Demikian pula, file kunci pribadi Anda juga sangat rahasia dan penting. (Untuk informasi lebih lanjut, lihat Cara Memulihkan Setelah Kata Sandi Email Anda Disusupi )
Sebaiknya buat pasangan kunci baru untuk setiap komputer dan akun yang ingin Anda tautkan. Dengan begitu, jika salah satu kunci pribadi Anda tertangkap, Anda hanya akan membahayakan satu akun di satu komputer jarak jauh.
Penting juga untuk diperhatikan bahwa semua kunci pribadi Anda disimpan di tempat yang sama: di ~ / .ssh / di komputer Anda, Anda dapat gunakan TrueCrypt untuk membuat penampung terenkripsi yang aman, lalu buat symlink di direktori ~ / .ssh / Anda. Bergantung pada apa yang saya lakukan, saya menggunakan ini super-paranoid metode super aman untuk menenangkan pikiran saya.
Pernahkah Anda menggunakan SCP dalam skrip apa pun? Apakah Anda menggunakan file kunci alih-alih kata sandi? Bagikan keahlian Anda dengan pembaca lain di komentar!