RSA anahtarlarını masmavi anahtar kasasına yerleştirme


14

Anahtar çiftimi (genellikle id_rsa ve id_rsa.pub) masmavi anahtar kasasında nasıl saklayabilirim. Genel anahtarı GIT hizmetime koymak ve sanal makinenin özel anahtarı Azure anahtar kasasından indirmesine izin vermek istiyorum -> Böylece GIT'e güvenli bir şekilde erişebilir.

Ben bir çift PEM dosyaları yapma ve bir pfx içine birleştirerek ve bir gizli met olarak geri almak dosya pem dosyası tamamen farklı görünüyor yükleme.

Ayrıca gizli anahtarımı Azure'a elle girmeyi denedim, ancak yeni satırları boşluklara dönüştürüyor.

Yanıtlar:


23

Azure Anahtar Kasası'na yüklemek için Azure CLI'yi kullanabilirsiniz id_rsa.

azure keyvault secret set --name shui --vault-name shui --file ~/.ssh/id_rsa

-hYardım almak için kullanabilirsiniz .

--file <file-name>                 the file that contains the secret value to be uploaded; cannot be used along with the --value or --json-value flag

Ayrıca anahtar kasasından sırrı da indirebilirsiniz.

az keyvault secret download --name shui --vault-name shui --file ~/.ssh/id_rsa

Laboratuvarımdaki anahtarları karşılaştırıyorum. Onlar aynı.


Buradaki tüm cevaplarınızı gerçekten takdir ediyorum, teşekkürler!
1717

@ Yanıtlar Cevabımın size yardımcı olduğunu bildiğim için memnunum.
Shui shengbao

Üzgünüm, ben OP değilim, ben sadece bunu okudum ve test ettim ve yararlı bilgi olarak dosyaladım ve size bir oy borçlu hissettim + yorum :). Karışıklık için özür dileriz.
1717

> Üzgünüm, ben OP değilim, bunu okudum ve test ettim ve yararlı bilgi olarak dosyaladım ve sana bir oylama borçlu olduğumu hissettim + yorum :) Kulağa komik geliyor. Çok dost canlısı bir topluluk.
Net Runner

2
Bilginize, aşağıdaki sırrı almak için uygun yollar getartık çalışmıyor. az keyvault secret download --name <KeyNameHere> --vault-name <vaultNamehere> --file <filename here>
Gregory Suvalian

12

Shengbao Shui'nin bir önceki cevabı, Azure CLI 1.0'ı (Düğüm) kullanarak bir sır saklama komutunu gösterir. İçin Azure CLI 2.0 (Python) aşağıdaki sözdizimini kullanın:

Set / Store Anahtarı:

az keyvault secret set --vault-name 'myvault' -n 'secret-name' -f '~/.ssh/id_rsa'

Argümanlar:

Arguments
    --name -n    [Required]: Name of the secret.
    --vault-name [Required]: Name of the key vault.
    --description          : Description of the secret contents (e.g. password, connection string,
                             etc).
    --disabled             : Create secret in disabled state.  Allowed values: false, true.
    --expires              : Expiration UTC datetime  (Y-m-d'T'H:M:S'Z').
    --not-before           : Key not usable before the provided UTC datetime  (Y-m-d'T'H:M:S'Z').
    --tags                 : Space-separated tags in 'key[=value]' format. Use '' to clear existing
                             tags.

Content Source Arguments
    --encoding -e          : Source file encoding. The value is saved as a tag (`file-
                             encoding=<val>`) and used during download to automatically encode the
                             resulting file.  Allowed values: ascii, base64, hex, utf-16be,
                             utf-16le, utf-8.  Default: utf-8.
    --file -f              : Source file for secret. Use in conjunction with '--encoding'.
    --value                : Plain text secret value. Cannot be used with '--file' or '--encoding'.

Global Arguments
    --debug                : Increase logging verbosity to show all debug logs.
    --help -h              : Show this help message and exit.
    --output -o            : Output format.  Allowed values: json, jsonc, table, tsv.  Default:
                             json.
    --query                : JMESPath query string. See http://jmespath.org/ for more information
                             and examples.
    --verbose              : Increase logging verbosity. Use --debug for full debug logs.

Al / Al Anahtarı:

Jq yardımcı programını~/.ssh/mykey kullanarak anahtarı bir dosyaya kaydedin .

az keyvault secret show --vault-name myvault --name 'secret-name' | jq -r .value > ~/.ssh/mykey

Dosyalar, tek satırlık bir perl ile kaldırabileceğiniz sondaki satırsonu ile yazdırılabilir:

perl -pi -e 'chomp if eof' ~/.ssh/mykey

# Set permissions to user-read only
chmod 600 ~/.ssh/mykey

Özel anahtarı özel anahtar dosyasından oluşturun ...

ssh-keygen -y -f ~/.ssh/myfile > ~/.ssh/myfile.pub
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.