SSH kunci pribadi auth pada Windows 10 Bash

0

Saya memiliki beberapa Linux diinstal oleh Laptop dan menggunakan SSH dengan otentikasi kunci pribadi untuk terhubung ke server. Baru-baru ini, saya menginstal Win10 dengan ekstensi pengembang bash di desktop. Karena saya hanya memiliki satu akun pengguna di server ini, dan karenanya hanya pada kunci, saya cukup dipindahkan dengan file kunci pribadi ke masing-masing direktori bash windows saya.

Namun, setiap kali saya membuka contoh bash baru dan mencoba terhubung ke server, pesan kesalahan: 'Izin ditolak (publickey).' dikembalikan. Perbaikan saya saat ini adalah langkah-langkah berikut: exec ssh-agent bash; ssh-add;

Meskipun saya jelas dapat menambahkan ini ke dalam profil., Saya akan diminta untuk memasukkan frasa sandi setiap kali saya membuka bash.

Adakah yang punya beberapa saran bagaimana cara memperbaikinya dengan lebih baik, s.t. Saya hanya perlu memasukkan frasa sandi saya setiap kali saya terhubung ke server dan bahwa saya tidak harus menginisialisasi ulang kunci ssh saya di setiap sesi bash.

Salam

hansal
sumber
Pemahaman saya adalah bahwa jenis otentikasi yang didukung fitur beta terbatas. Apakah Anda yakin kunci Anda didukung?
Ramhound
bagaimana saya bisa memeriksa apakah jenisnya didukung? Namun, dengan secara manual memulai ssh-agent, semuanya bekerja lebih atau kurang seperti yang diharapkan ...
hansal
@hansal Lihat: ssh (1) . Kamu bisa memakai ssh -Q diikuti oleh salah satu dari yang berikut: cipher | cipher-auth | mac | kex | key | key-cert | key-plain | protocol-version
JW0914

Jawaban:

0

Kunci hanya dapat diakses oleh pengguna yang dimaksudkan untuknya dan tidak ada akun, layanan, atau grup lain.

  • Saya tidak menggunakan WSL, karena ini adalah mimpi buruk keamanan, menciptakan lebih banyak masalah daripada menyelesaikannya, jadi saya akan memberikan kedua cara untuk mengatur izin yang benar


Terminal Windows Powershell


  • GUI:
    • Properti [File] - Keamanan - Lanjutan
      1. Set Pemilik untuk pengguna kunci
      2. Hapus semua pengguna, grup, dan layanan, kecuali untuk pengguna kunci , dibawah Entri Izin
      3. Tetapkan pengguna kunci ke Kontrol penuh


  • CLI:

    :: Set Variable ::
    set key="C:\Path\to\key"
    
    :: Remove Inheritance ::
    cmd /c icacls %key% /c /t /inheritance:d
    
    :: Set Ownership to Owner ::
    cmd /c icacls %key% /c /t /grant %username%:F
    
    :: Remove All Users, except for Owner ::
    cmd /c icacls %key%  /c /t /remove Administrator BUILTIN\Administrators BUILTIN Everyone System Users
    
    :: Verify ::
    cmd /c icacls %key%
    


Terminal WSL Bash


  • CLI

    # Set Variables
    
      # Key  
        key="/path/to/key"
    
      # User:
        user="$(echo $USER)"
    
    # Set Ownership
      # This assumes user's name is also user's group name
        chown $user:$user $key
    
    # Set Access Rights
      chmod 0600 $key
    
    # Verify
    ls -l $key
    
JW0914
sumber