Kami mentransfer file ke server jauh di aplikasi kami dan metode otentikasi yang diperlukan adalah menggunakan kunci SSH.
Jadi, saya membuat keypair saya menggunakan ssh-keygen dan menyerahkan kunci publik saya untuk dimasukkan ke file otor_keys host jarak jauh. Namun, ini ditolak oleh IT Security yang mengatakan mereka akan menghasilkan kunci tombol untuk saya dan mengirim saya kunci pribadi. Alasan: "Kami perlu kunci SSH untuk ditandatangani oleh tim Keamanan TI. Ini untuk memastikan kami memiliki beberapa keunggulan dalam penelusuran dan pertanggungjawaban."
Jelas, saya punya masalah dengan ini. Memiliki kunci pribadi yang dihasilkan oleh orang lain berarti bahwa saya dapat membuat orang itu menyamar seperti saya tanpa saya sadari. Saya mencoba menemukan cara untuk membantah argumen ini.
Sejauh yang saya bisa google, tampaknya tidak ada cara yang diketahui untuk menandatangani kunci sehingga membantu dalam melacak orang yang masuk. Fakta bahwa saya mengirimkan kunci publik saya berarti bahwa saya memiliki kunci dan siapa saja yang masuk ke server jauh dengan kunci itu secara default diidentifikasi sebagai diri saya sendiri. Bagaimana cara menandatangani bantuan? Dan bagaimana cara mereka menandatanganinya?
Seseorang tolong beri tahu saya jika saya salah, terima kasih!
Ok, sekarang kita telah menentukan bahwa tidak ada cara kunci SSH bisa masuk, saya perlu menunjukkan kepada IT Security bagaimana mereka benar-benar dapat melacak siapa yang telah masuk (harus konstruktif, saya kira, jika tidak mulai kidal mulai ). Di server saya sendiri, saya mengatur LogLevel sshd ke DEBUG. Jadi sekarang ketika saya masuk, saya dapat melihat cuplikan berikut:
Found matching DSA key: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
Ini tampaknya menjadi nilai hash. Bagaimana cara menghubungkan ini kembali ke kunci publik mana dalam file Authorized_key yang digunakan? Saya tahu ada garis lain yang mengatakan:
debug1: matching key found: file /home/bofh/.ssh/authorized_keys2, line 1
tetapi ini tidak berguna karena nomor baris dapat dengan mudah diubah jika saya memasukkan kunci di bagian atas file, menekan kunci asli ke bawah.
Terima kasih!
Jawaban:
Pada saat Anda mengajukan pertanyaan, alam semesta telah berubah.
Openssh5.4 menambahkan dukungan untuk jenis sertifikat yang Anda cari. Lihat catatan rilis di http://www.openssh.org/txt/release-5.4 (dan halaman manual) untuk informasi lebih lanjut, atau jika Anda benar-benar ingin menjadi gila, lihat PROTOCOL.kunci tombol untuk detail berdarah
sumber
Kesan pertama saya ketika membaca pertanyaan Anda adalah bahwa orang IT mendapat SSH dan SSL campur aduk (harus ditandatangani oleh kami) dan juga tidak mengerti bagaimana penandatanganan SSL benar-benar bekerja.
Lagi pula tidak ada cara kunci SSH bisa masuk (yang saya tahu).
sumber
Ada yang tidak beres dalam permintaan ini.
Jika mengirimkan file yang ditandatangani ke server,
saya berharap ini dilakukan seminimal mungkin.
my-key-private
my-key-pub
untuk mendekripsi fileAda cara lain untuk melakukan hal-hal seperti itu,
Namun, mendapatkan pasangan kunci yang dihasilkan oleh orang lain tidak berguna sebagai skema otentikasi .
Ini memiliki implikasi kuat bahwa Anda mempercayai mereka sama seperti Anda memercayai diri sendiri.
Ini adalah pertanyaan pembuka yang bisa Anda tanyakan pada IT Anda.
Jika akuntabilitas merupakan masalah bagi IT,
Mengapa repot-repot dengan pasangan kunci sama sekali dalam hal ini.
sumber
Tidak ada alasan Anda tidak dapat menggunakan sertifikat X.509 untuk otentikasi SSH alih-alih kunci telanjang - sebenarnya, saya lebih suka jika OpenSSH bekerja dengan cara ini! Tetapi, versi saham OpenSSH tidak, dan ini implementasi yang dominan akhir-akhir ini.
Saya telah melihat beberapa versi OpenSSH yang ditambal beredar, dan implementasi SSH.com komersial juga tampaknya mendukung otentikasi X.509. Jadi, jika organisasi Anda menggunakan salah satunya, mengharuskan kunci ditandatangani oleh otoritas pusat akan masuk akal.
Karena itu, tidak ada alasan untuk meminta kunci pribadi dibuat oleh pihak ketiga! Jika mereka menggunakan rute X.509, maka mereka seharusnya membuat Anda menghasilkan keypair dan permintaan penandatanganan sertifikat, seperti yang akan Anda lakukan dengan sertifikat X.509 lainnya yang digunakan untuk SSL, dll.
sumber