Linux'ta Şifre Politikası Oluşturma

Tekrar merhaba! Yeni kurs grubunda dersler yarın başlıyor "Linux Yöneticisi"Bu bağlamda konuyla ilgili faydalı bir makale yayınlıyoruz.

Linux'ta Şifre Politikası Oluşturma

Önceki dersimizde size nasıl kullanılacağını anlatmıştık. pam_cracklibsistemlerdeki şifreleri daha karmaşık hale getirmek Kırmızı Şapka 6 veya CentOS. Red Hat 7'de pam_pwquality değiştirilir cracklib gibi pam Şifreleri kontrol etmek için varsayılan modül. Modül pam_pwquality ayrıca Ubuntu ve CentOS'un yanı sıra diğer birçok işletim sisteminde de desteklenir. Bu modül, kullanıcıların şifre gücü standartlarınızı kabul etmesini sağlamak için şifre politikaları oluşturmayı kolaylaştırır.

Uzun bir süre boyunca şifrelere yönelik genel yaklaşım, kullanıcıyı büyük harf, küçük harf, rakam veya diğer simgeleri kullanmaya zorlamaktı. Şifre karmaşıklığına ilişkin bu temel kurallar son on yılda geniş çapta desteklendi. Bunun iyi bir uygulama olup olmadığı konusunda birçok tartışma yaşandı. Bu tür karmaşık koşulların oluşturulmasına karşı çıkan temel argüman, kullanıcıların şifreleri kağıt parçalarına yazıp bunları güvenli olmayan bir şekilde saklamasıydı.

Son zamanlarda sorgulanan bir diğer politika ise kullanıcıları x günde bir şifrelerini değiştirmeye zorluyor. Bunun aynı zamanda güvenliğe de zararlı olduğunu gösteren bazı çalışmalar olmuştur.

Bu tartışmaların konusu hakkında şu veya bu bakış açısını doğrulayan birçok makale yazılmıştır. Ancak bu makalede tartışacağımız konu bu değil. Bu makalede, güvenlik politikasını yönetmek yerine şifre karmaşıklığının nasıl doğru şekilde ayarlanacağı anlatılacaktır.

Şifre Politikası Ayarları

Aşağıda şifre politikası seçeneklerini ve her birinin kısa bir açıklamasını göreceksiniz. Birçoğu modüldeki parametrelere benzer cracklib. Bu yaklaşım, politikalarınızı eski sistemden taşımayı kolaylaştırır.

  • üzgünüm – Yeni şifrenizde eski şifrenizde BULUNMAMASI gereken karakter sayısı. (Varsayılan 5)
  • Minlen – Minimum şifre uzunluğu. (Varsayılan 9)
  • kredi – Büyük harf karakterlerin kullanımına yönelik maksimum kredi sayısı (eğer parametre > 0 ise) veya gereken minimum büyük harf sayısı (eğer parametre < 0 ise). Varsayılan 1'dir.
  • kredi — Küçük harf karakterlerin kullanımı için maksimum kredi sayısı (parametre > 0 ise) veya gereken minimum küçük harf sayısı (eğer parametre < 0 ise). Varsayılan 1'dir.
  • kredi — Rakamların kullanılması için maksimum kredi sayısı (eğer parametre > 0 ise) veya gerekli minimum rakam sayısı (eğer parametre < 0 ise). Varsayılan 1'dir.
  • o inanıyor — Diğer simgelerin kullanılması için maksimum kredi sayısı (eğer parametre > 0 ise) veya gereken minimum diğer simge sayısı (eğer parametre < 0 ise). Varsayılan 1'dir.
  • küçük sınıf – Gerekli sınıf sayısını ayarlar. Sınıflar yukarıdaki parametreleri içerir (büyük harf karakterler, küçük harf karakterler, sayılar, diğer karakterler). Varsayılan 0'dır.
  • maksimum tekrar – Bir karakterin şifrede maksimum tekrarlanabileceği sayı. Varsayılan 0'dır.
  • maksimum sınıf tekrarı — Bir sınıftaki maksimum ardışık karakter sayısı. Varsayılan 0'dır.
  • gekocheck – Parolanın kullanıcının GECOS dizelerinden herhangi bir sözcük içerip içermediğini kontrol eder. (Kullanıcı bilgileri, yani gerçek ad, konum vb.) Varsayılan 0'dır (kapalı).
  • dikte yolu – Cracklib sözlüklerine gidelim.
  • Kötü sözler – Şifrelerde kullanılması yasak olan, boşlukla ayrılmış kelimeler (Şirket adı, “şifre” kelimesi vb.).

Kredi kavramı kulağa tuhaf geliyorsa sorun değil, normaldir. Aşağıdaki bölümlerde bunun hakkında daha fazla konuşacağız.

Parola Politikası Yapılandırması

Yapılandırma dosyalarını düzenlemeye başlamadan önce, temel bir parola ilkesini önceden yazmak iyi bir uygulamadır. Örneğin aşağıdaki zorluk kurallarını kullanacağız:

  • Şifrenin minimum uzunluğu 15 karakter olmalıdır.
  • Şifrede aynı karakter ikiden fazla tekrarlanmamalıdır.
  • Karakter sınıfları bir parolada dört defaya kadar tekrarlanabilir.
  • Şifre her sınıftan karakterler içermelidir.
  • Yeni şifre eskisine göre 5 yeni karakterden oluşmalıdır.
  • GECOS kontrolünü etkinleştirin.
  • “Şifre, şifre, kelime, putorius” kelimelerini yasaklayın

Artık politikayı belirlediğimize göre dosyayı düzenleyebiliriz /etc/security/pwquality.confşifre karmaşıklığı gereksinimlerini artırmak için. Aşağıda daha iyi anlaşılması için yorumların bulunduğu örnek bir dosya bulunmaktadır.

# Make sure 5 characters in new password are new compared to old password
difok = 5
# Set the minimum length acceptable for new passwords
minlen = 15
# Require at least 2 digits
dcredit = -2
# Require at least 2 upper case letters
ucredit = -2
# Require at least 2 lower case letters
lcredit = -2
# Require at least 2 special characters (non-alphanumeric)
ocredit = -2
# Require a character from every class (upper, lower, digit, other)
minclass = 4
# Only allow each character to be repeated twice, avoid things like LLL
maxrepeat = 2
# Only allow a class to be repeated 4 times
maxclassrepeat = 4
# Check user information (Real name, etc) to ensure it is not used in password
gecoscheck = 1
# Leave default dictionary path
dictpath =
# Forbid the following words in passwords
badwords = password pass word putorius

Fark etmiş olabileceğiniz gibi dosyamızdaki bazı parametreler gereksizdir. Örneğin, parametre minclass alanları kullanan sınıftan en az iki karakteri zaten kullandığımız için gereksizdir [u,l,d,o]credit. Kullanılamayan kelimeler listemiz de gereksizdir, çünkü herhangi bir sınıfın 4 kez tekrarlanmasını yasakladık (listemizdeki tüm kelimeler küçük harflerle yazılmıştır). Bu seçenekleri yalnızca parola politikanızı yapılandırmak için nasıl kullanacağınızı göstermek amacıyla ekledim.
Politikanızı oluşturduktan sonra kullanıcıları bir sonraki oturum açışlarında şifrelerini değiştirmeye zorlayabilirsiniz. sistem.

Fark etmiş olabileceğiniz başka bir garip şey de tarlaların [u,l,d,o]credit negatif bir sayı içerir. Bunun nedeni, 0'dan büyük veya ona eşit sayıların, şifrenizdeki karakterin kullanımına kredi vermesidir. Alanın negatif bir sayı içermesi belirli bir miktarın gerekli olduğu anlamına gelir.

Krediler nedir?

Onlara kredi diyorum çünkü bu, amaçlarını olabildiğince doğru bir şekilde ifade ediyor. Parametre değeri 0'dan büyükse, şifre uzunluğuna "x"e eşit sayıda "karakter kredisi" eklersiniz. Örneğin tüm parametreler (u,l,d,o)credit 1 olarak ayarlandıysa ve gerekli şifre uzunluğu 6 ise, bu durumda uzunluk gereksinimini karşılamak için 6 karaktere ihtiyacınız olacaktır çünkü her büyük harf, küçük harf, rakam veya diğer karakter size bir kredi verecektir.

eğer kurarsan dcredit 2'de, teorik olarak 9 karakter uzunluğunda bir şifre kullanabilir ve sayılar için 2 karakterlik kredi alabilirsiniz ve bu durumda şifre uzunluğu zaten 10 olabilir.

Şu örneğe bakın. Şifre uzunluğunu 13'e, dcredit'i 2'ye ve diğer her şeyi 0'a ayarladım.

$ pwscore
 Thisistwelve
 Password quality check failed:
  The password is shorter than 13 characters

$ pwscore
 Th1sistwelve
 18

Şifrenin uzunluğu 13 karakterden kısa olduğundan ilk kontrolüm başarısız oldu. Bir dahaki sefere "I" harfini "1" rakamıyla değiştirdim ve rakamlar için iki kredi aldım, bu da şifreyi 13'e eşitledi.

Şifre testi

Paket libpwquality makalede açıklanan işlevselliği sağlar. Ayrıca bir programla birlikte gelir pwscoreŞifre karmaşıklığını kontrol etmek için tasarlanmıştır. Yukarıda kredileri kontrol etmek için kullandık.
Yarar pwscore den okur stdin. Sadece yardımcı programı çalıştırın ve şifrenizi yazın; bir hata veya 0'dan 100'e kadar bir değer görüntüleyecektir.

Şifre kalite puanı parametreyle ilgilidir minlen yapılandırma dosyasında. Genel olarak 50'nin altındaki puanlar "normal şifre", üzerindeki puanlar ise "güçlü şifre" olarak değerlendiriliyor. Kalite kontrollerini geçen herhangi bir şifre (özellikle zorunlu doğrulama) cracklib) sözlük saldırılarına dayanıklı olmalı ve ayarıyla 50'nin üzerinde puana sahip bir şifre minlen varsayılan olarak bile brute force saldırılar.

Sonuç

Ayar pwquality – Kullanım zahmetine kıyasla kolay ve basittir cracklib doğrudan dosya düzenleme ile pam. Bu kılavuzda Red Hat 7, CentOS 7 ve hatta Ubuntu sistemlerinde şifre politikaları ayarlarken ihtiyaç duyacağınız her şeyi ele aldık. Ayrıca nadiren ayrıntılı olarak yazılan kredi kavramından da bahsettik, bu nedenle bu konu daha önce karşılaşmamış olanlar için genellikle belirsiz kaldı.

Kaynaklar:

pwquality kılavuz sayfası
pam_pwquality kılavuz sayfası
pwscore kılavuz sayfası

Yararlı linkler:

Güvenli Parolaları Seçmek – Bruce Schneier
Lorrie Faith Cranor, CMU'daki şifre çalışmalarını anlatıyor
Entropi ile ilgili meşhur xkcd karikatürü

Kaynak: habr.com

Yorum ekle