İmzalı bir SSH anahtar çifti gibi bir şey var mı?


9

Uygulamamızdaki dosyaları uzak bir sunucuya aktarıyoruz ve gerekli kimlik doğrulama yöntemi SSH anahtarlarını kullanmaktır.

Bu nedenle, anahtar çiftimi ssh-keygen kullanarak oluşturdum ve ortak anahtarımı uzak ana bilgisayarın yetkili_anahtarlar dosyasına eklemek için gönderdim. Ancak, bu benim için anahtar çiftini üreteceklerini ve bana özel anahtarı göndereceklerini söyleyen BT Güvenliği tarafından reddedildi. Sebep: "SSH anahtarlarının BT Güvenlik ekibi tarafından imzalanmasına ihtiyacımız var. Bu, takiplerde ve hesap verme sorumluluğunda biraz liderlik sağlamaktır."

Açıkçası, bununla ilgili sorunlarım var. Özel anahtarın başka biri tarafından üretilmesi, o kişinin bilmeden benden maskelenmesini sağlayabileceğim anlamına gelir. Bu argümanı çürütmenin yollarını bulmaya çalışıyorum.

Google'da yapabildiğim kadarıyla, imzalanan bir kişinin izlenmesine yardımcı olacak şekilde anahtarları imzalamanın bilinen bir yolu yok gibi görünüyor. Ortak anahtarımı gönderdiğim gerçeği, anahtarın sahibi olduğum anlamına gelir ve uzak sunucuda bu anahtarla oturum açan herkes varsayılan olarak kendim olarak tanımlanır. İmzalamak nasıl yardımcı olur? Yine de nasıl imzalarlardı?

Birisi yanılıyorsam lütfen bana ipucu ver, teşekkürler!


Tamam, şimdi SSH anahtarlarının imzalanmasının bir yolu olmadığını belirlediğimize göre, BT Güvenliğine kimin giriş yaptığını nasıl takip edebileceklerini göstermeliyim (sanırım, yüksek elverişlilik başlamazsa) ). Kendi sunucumda sshd'nin LogLevel değerini DEBUG olarak ayarladım. Şimdi giriş yaptığımda aşağıdaki kod parçasını görebiliyorum:

Found matching DSA key: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx

Bu bir karma değer gibi görünüyor. Bunu, authority_keys dosyasındaki ortak anahtarın kullanıldığı ile nasıl ilişkilendirebilirim? Başka bir satır olduğunu biliyorum:

debug1: matching key found: file /home/bofh/.ssh/authorized_keys2, line 1

ancak dosyanın üst kısmına bir anahtar yerleştirip orijinal anahtarları aşağıya doğru itersem, satır numaraları kolayca değiştirilebileceği için bu yararlı değildir.

Teşekkürler!


2
Belki de anahtarları basarlar, imzalarlar (kağıt üzerine) ve sonra dosyalarını çıkarırlar?
innaM

Elde ettiğiniz karma değer büyük olasılıkla anahtarın parmak izi olarak adlandırılır. Bu parmak izlerini nasıl listeleyebileceğinizle ilgili opensh kılavuzuna bakmanızı öneririz.
Niels Basjes

Bu politikanın yürürlüğe girmesinin en olası nedeni, aslında gerekirse sizi kimliğe bürünmek istemeleri. İmzalama argümanı, neofitlere mantıklı gelmesini sağlamak için sadece BS'dir. Pubkey'i imzalamaları gerekse bile, kendileri oluşturmaları gerekmeyecekti.
b0fh

Yanıtlar:



8

Sorunuzu okurken ilk izlenimim BT personelinin SSH ve SSL'yi karıştırması (bizim tarafımızdan imzalanması gerekir) ve ayrıca SSL imzalamanın gerçekten nasıl çalıştığını anlamamasıdır.

Her neyse, bir SSH anahtarının imzalanmasının hiçbir yolu yoktur (bildiğim).


+1, ssh anahtarlarını PGP veya SSL sertifikalarını imzalayabileceğiniz şekilde imzalayamazsınız. Onlardan açıklama isterim.
David Pashley

4

Bu istekte bir şeyler doğru değil.

İmzalı dosyaları sunucuya teslim ederse, bunun
minimum düzeyde yapılmasını beklerim.

  1. Kendiniz için bir anahtar çifti oluşturursunuz (buna benim anahtarım deyin)
    • Bir şey göndermek istediğinizde,
    • önce onu şifrelersin my-key-private
    • daha sonra bu şifreli dosyayı sunucuya yükledi
    • Sunucudaki bir kişi bu işlemi tersine çevirmek zorundadır,
    • Onlar senin kullanmak my-key-pubdosyanın şifresini açmak için
    • dosyayı gönderdiyseniz, şifrenin çözülmesi
    • aksi takdirde, kullanılabilir bir dosya alamazlar
    • etkin bir şekilde, dosyayı özel anahtarınızla imzaladınız
    • genel anahtarınızla imzayı doğruladılar
    • hesap verebilirlik, dosyayı gönderdiğinizi onaylayan onlardan etkilenir

Bu tür şeyleri yapmanın başka yolları da var,
Ancak, başka biri tarafından üretilen bir anahtar çifti almak bir kimlik doğrulama şeması olarak işe yaramaz .
Kendinize güvendiğiniz kadar onlara güvendiğinizin güçlü bir anlamı vardır.


Bunlar BT'nize sorabileceğiniz açılış sorularıdır.
Eğer hesap bir husustur BT,

  1. Size verdikleri anahtar çiftini paylaşmadığınız / kaybetmediğinizden nasıl emin olurlar? ve,
    • BT anahtar-çifti-kavramının BT tarafından verilen bir paroladan farkı nedir?
      Bu durumda neden anahtar çiftleriyle uğraşasınız ki?

Dosyaları şifrelemek için PGP / GnuPG'yi düşünüyorsunuz. Bu durumda tuş imzalama normaldir. Orijinal soru SSH anahtarları hakkında. Bir PGP imzalı / şifreli SSH anahtarı isteyip istemediklerini anlamak mantıklı olacaktır (birbirlerinin PGP anahtarlarını doğruladıktan ve imzaladıktan sonra).
pgs

@pgs, BT kullanıcısının burada neyi hedeflediğini görmeye çalışıyorum.
nik

Güvenlik görevlisinin kafasının karıştığından eminim, ancak iş arkadaşımdan değil, müşterimin şirketindeki BT Güvenlik görevlisi olduğundan, biraz daha inceliğim ve yapıcı bir şekilde itip, ona gülüyor ve yaptıklarını söyleyeceğim karmakarışık. Evet, kesinlikle SSH ve PGP değil.
feicipet

@feicipet, taktik almak son puanlarımın size yardımcı olacağı yerdir.
nik

@feicipet, hedefiniz nihayetinde amaçlarına doğru bir şekilde ulaşmak için yapmaları gereken minimum seviyeyi anlamalarını sağlamak olacaktır.
nik

2

Çıplak anahtarlar yerine SSH kimlik doğrulaması için X.509 sertifikalarını kullanamamanızın bir nedeni yoktur - aslında, OpenSSH bu şekilde çalışsaydı çok tercih ederim! Ancak, OpenSSH'nin stok versiyonu değil ve bu günlerde baskın uygulama.

Etrafında yüzen OpenSSH'nin birkaç yamalı sürümünü gördüm ve ticari SSH.com uygulaması da X.509 kimlik doğrulamasını destekliyor gibi görünüyor. Dolayısıyla, kuruluşunuz bunlardan birini kullanıyorsa, anahtarların merkezi bir otorite tarafından imzalanmasını istemek mantıklı olacaktır.

Bununla birlikte, özel anahtarın üçüncü taraflarca oluşturulmasını zorunlu kılmak için hiçbir mazeret yoktur! X.509 yoluna gidiyorlarsa, tıpkı SSL için kullanılan diğer X.509 sertifikalarında olduğu gibi bir anahtar çifti ve bir sertifika imzalama isteği oluşturmalısınız.

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.