Bahasa Melayu

Alat pembangun · Kalkulator Chmod

SSH kebenaran terlalu terbuka: mod tepat ~/.ssh perlukan dan sebab

· Mengapa ia penting

chmod unix kawalan akses

bahan SSH peribadi ditunjukkan sebagai gambar rajah bit kebenaran Unix yang berbeza
Ilustrasi vektor ToolAcre asal

OpenSSH menolak fail kunci dan authorized_keys yang boleh dibaca atau diubah oleh pengguna lain. Siaran ini menyenaraikan mod yang dijangkakan, menerangkan semakan StrictModes dan menunjukkan cara untuk mengesahkannya.

Kebenaran 0644 untuk id_ed25519 terlalu terbuka — kunci yang berfungsi semalam ditolak selepas salinan ke mesin baharu

Kunci peribadi yang disalin dengan mod 0644 menyahkod kepada rw-r--r--. Pemilik boleh membaca dan menukarnya, manakala kumpulan dan lain-lain boleh membacanya. Pratetap fail peribadi 600 sebaliknya menjadikan rw-------, meninggalkan kelas tersebut kosong. Ini menyatakan bit dengan tepat, tetapi tidak dapat membuktikan mengapa klien SSH menerima atau menolak kunci.

Bandingkan mod yang diperhatikan dengan pratetap peribadi. Input 0644, 644 dan 0o644 adalah bersamaan dan menukar kepada 600 mengalih keluar kumpulan-baca dan lain-baca sambil mengekalkan pemilik membaca dan menulis. Perintah yang dihasilkan adalah lengai. Tingkah laku pelanggan, pemilikan, ACL dan semantik storan memerlukan bukti di luar penukar ini.

Mengapa pelanggan menyemak sama sekali — kunci peribadi yang boleh dibaca oleh orang lain tidak lagi peribadi, jadi ssh enggan mempercayainya

Repositori melabelkan 600 "fail peribadi" dan menerangkan akses pemilik sahaja. Aritmetiknya menyokong perihalan itu: 6 memberi pemilik membaca dan menulis, manakala kedua-dua sifar mengalih keluar kebenaran biasa daripada kumpulan dan lain-lain. Hasil simbolik ialah rw-------. Ini membuktikan geran tidak hadir dalam mod, bukannya pelanggan menerimanya.

Tiada pelaksanaan OpenSSH, manual, konfigurasi atau mesej masa jalan muncul dalam sumber, jadi pratetap tidak boleh mewujudkan dasar penolakan. Kalkulator tidak menjanjikan bahawa satu mod menyelesaikan setiap ralat atau mengesahkan kandungan utama. Ia menunjukkan dengan pasti sama ada calon mendedahkan bacaan, tulis atau laksana di luar kelas pemilik dan tidak lebih.

Label repositori 600 peribadi; dasar penolakan pelanggan memerlukan bukti OpenSSH

Tingkah laku StrictModes tidak dilaksanakan atau disahkan di sini. Pelayar tidak mempunyai pelayan SSH, pemeriksaan direktori rumah, carian pemilikan atau input konfigurasi. Ia tidak dapat mengetahui sama ada authorized_keys dirujuk, sama ada identiti lain boleh menulis direktori atau sama ada tetapan digunakan. Memasuki mod melakukan penukaran, bukan keputusan daemon atau audit sistem fail.

Bit yang tepat dan dasar yang tepat adalah soalan yang berasingan. Mod 600 membuktikan rw-------, manakala 700 membuktikan rwx------. Kedua-duanya tidak mengenal pasti pemilikan, menyemak direktori induk atau memodelkan daemon. Kumpulkan dokumentasi pelayan dan bukti sistem fail secara bebas, kemudian gunakan kalkulator untuk menyahkod pemerhatian tanpa membentangkan outputnya sebagai keputusan StrictModes atau audit keselamatan yang lengkap.

Tingkah laku StrictModes tidak dilaksanakan atau disahkan di sini

Mod 600 dan 700 dihantar sebagai pratetap peribadi. Mod 600 memberikan pemilik fail biasa membaca dan menulis, tanpa kebenaran kumpulan atau lain. Mod 700 menambah pelaksanaan pemilik untuk direktori, membolehkan kemasukan dan akses kandungan bernama, manakala kelas lain tidak menerima apa-apa melalui bit biasa. Kalkulator masih tidak mengenali pemilik sebenar.

Peraturan fail berkaitan SSH lain kekal di luar. Walaupun kunci awam dan kunci_berkuasa mungkin berkaitan, repositori tidak membekalkan keperluan yang disahkan untuknya. Kalkulator boleh menyahkod 644 sebagai rw-r--r-- tetapi tidak boleh mengesahkan penerimaan SSH. Sebarang jadual keperluan yang lebih luas memerlukan bukti OpenSSH yang berwibawa yang tidak terdapat dalam sumber ini dan artikel sedia ada.

600 dan 700 dihantar pratetap peribadi; peraturan fail SSH lain kekal luaran

Contoh yang disokong menukar rentetan penyenaraian tanpa mengaudit direktori. Jika output luaran menunjukkan -rw-r--r--, penghurai mengembalikan 644; jika ia menunjukkan rw-------, ia mengembalikan 600. Matriks menyerlahkan kotak bacaan kumpulan dan bacaan lain yang diubah. Ini mengesahkan transkripsi dan aritmetik sambil membiarkan laluan, pemilikan dan penyenaraian asal tidak diperiksa.

Rentetan direktori berfungsi sama. Drwx yang dibekalkan------ menjadi 700 kerana aksara jenis yang dikenali dialih keluar sebelum menghuraikan sembilan kedudukan kebenaran. Ringkasan boleh memaparkan awalan direktori. Halaman ini tidak menyenaraikan ~/.ssh mahupun menemui fail, pemilik atau penunjuk ACL, jadi penukaran ini tidak boleh digambarkan sebagai audit.

Contoh yang berfungsi: tukar rentetan mod yang disalin tanpa mengaudit direktori

Kehilangan mod merentas alat pemindahan dan sistem fail terletak di luar bukti repositori. Tiada sumber menyalin fail, membuka arkib, memasang storan atau membandingkan metadata merentas lokasi. Kalkulator tidak boleh mengaitkan 644 yang diperhatikan kepada perkongsian, pemacu, sistem permulaan atau utiliti arkib. Ia sahaja melihat mod yang ditaip ke dalam medannya, tanpa sejarah pemindahan.

Apabila item yang disalin mempunyai mod yang tidak dijangka, bandingkan nilai yang dijangka dan yang diperhatikan tanpa mempersalahkan. Antara 600 dan 644, kebenaran pemilik kekal tidak berubah semasa kumpulan-baca dan lain-baca muncul. Penukar menyokong delta tepat itu. Menentukan sama ada pemindahan, pemeliharaan atau rekreasi menyebabkannya memerlukan bukti dari destinasi dan laluan pemindahan.

Kehilangan mod merentas alat pemindahan dan sistem fail adalah di luar bukti repositori

Format kunci, keadaan ejen dan log pelayan berada di luar kalkulator ini. Ia menghuraikan teks kebenaran perlapanan dan simbolik, bukan kunci peribadi, data ejen ssh atau log. Penukaran 600 yang sah tidak mengatakan apa-apa tentang bahan kriptografi, identiti yang dimuatkan, pertukaran rangkaian atau tindak balas pelayan. Ia membuktikan sahaja pemilik membaca dan menulis dengan kumpulan kosong dan kelas lain.

Sempadan ini menghalang menganggap setiap kegagalan SSH sebagai kerja chmod. Jika mod yang diperhatikan berbeza daripada pratetap peribadi, kalkulator menunjukkan bit yang tepat; jika ia sudah sepadan, laluan itu tidak menawarkan bukti SSH lagi. Teruskan dengan diagnostik luaran dan bukannya meluaskan akses. Penukaran yang berjaya bukanlah pengesahan dan pratonton tidak melaksanakan apa-apa.

Bawa pulang: persendirian bermaksud 600 dan 700 — dan kalkulator mengesahkan bahawa mod yang anda akan tetapkan tidak memberikan apa-apa kepada kumpulan atau orang lain

Pengambilan yang disokong repositori ialah 600 dan 700 menyimpan kebenaran biasa untuk pemiliknya. Bentuk simbolik mereka, rw------- dan rwx------, tidak mengandungi kumpulan atau geran lain. Teks perlapanan, simbolik, kotak pilihan dan ringkasan mengesahkan perwakilan tersebut, manakala kedudukan yang cacat ditolak. Tiada satu pun daripada ini membuktikan SSH penerimaan, pemilikan, kesahihan kunci atau pengesahan.

Jangan tukar penukaran kepada dasar SSH universal. Laluan tidak melaksanakan StrictModes, memeriksa direktori rumah, mengenal pasti pemilik atau mengesahkan fail utama. Gunakannya untuk mengesahkan kumpulan kosong dan kelas lain, kemudian bergantung pada bukti SSH yang berwibawa dan sistem sebenar. Menyalin arahan yang dipaparkan memindahkan tanggungjawab ke shell dan sistem fail.