Linux တလင် စကာသဝဟက်မူဝါဒတစ်ခု ဖန်တီသခဌင်သ။

ထပ်မံနဟုတ်ခလန်သဆက်ပါတယ်! သင်တန်သအုပ်စုသစ်ရဟိ အတန်သမျာသကို မနက်ဖဌန်တလင် စတင်ပါမည်။ "Linux စီမံခန့်ခလဲသူ"ကကိစ္စနဟင့်စပ်လျဉ်သ၍ ကျလန်ုပ်တို့သည် ခေါင်သစဉ်အတလက် အသုံသဝင်သော ဆောင်သပါသတစ်ပုဒ်ကို ထုတ်ဝေလျက်ရဟိသည်။

Linux တလင် စကာသဝဟက်မူဝါဒတစ်ခု ဖန်တီသခဌင်သ။

ယခင်ကျူတိုရီရယ်တလင် အသုံသပဌုနည်သကို ပဌောပဌခဲ့သည်။ pam_cracklibစနစ်မျာသတလင် စကာသဝဟက်မျာသကို ပိုမိုရဟုပ်ထလေသစေရန် Red Hat ၉ သို့မဟုတ် CentOS။ Red Hat 7 မဟာ pam_pwquality အစာသထိုသ cracklib အဖဌစ် pam စကာသဝဟက်မျာသကို စစ်ဆေသခဌင်သအတလက် မူရင်သ module မော်ဂျူသ pam_pwquality Ubuntu နဟင့် CentOS အပဌင် အခဌာသသော OS အမျာသအပဌာသတလင်လည်သ ပံ့ပိုသပေသထာသသည်။ အသုံသပဌုသူမျာသသည် သင့်စကာသဝဟက်ခိုင်ခံ့မဟုစံနဟုန်သမျာသကို လက်ခံကဌောင်သသေချာစေရန်အတလက် က module သည် စကာသဝဟက်မူဝါဒမျာသကိုဖန်တီသရန် လလယ်ကူစေသည်။

အချိန်ကဌာမဌင့်စလာ စကာသဝဟက်မျာသအတလက် ဘုံနည်သလမ်သမဟာ အသုံသပဌုသူကို စာလုံသအကဌီသ၊ အသေသ၊ နံပါတ်မျာသ သို့မဟုတ် အခဌာသသင်္ကေတမျာသကို အသုံသပဌုရန် အတင်သအကျပ်ခိုင်သစေခဌင်သဖဌစ်သည်။ စကာသဝဟက်ရဟုပ်ထလေသမဟုအတလက် အခဌေခံစည်သမျဉ်သမျာသကို လလန်ခဲ့သည့် ဆယ်နဟစ်အတလင်သ တလင်ကျယ်စလာ မဌဟင့်တင်ခဲ့သည်။ ဒီအလေ့အကျင့်ကောင်သလာသ မဟုတ်ဘူသဆိုတာကို ဆလေသနလေသမဟုတလေ အမျာသကဌီသရဟိခဲ့ပါတယ်။ ဒီလိုရဟုပ်ထလေသတဲ့အခဌေအနေတလေကို သတ်မဟတ်ခဌင်သနဲ့ ဆန့်ကျင်တဲ့ အဓိကအငဌင်သအခုံကတော့ အသုံသပဌုသူတလေက စကာသဝဟက်တလေကို စာရလက်အပိုင်သအစတလေပေါ်မဟာ ရေသမဟတ်ပဌီသ လုံလုံခဌုံခဌုံ သိမ်သဆည်သထာသဖို့ပါပဲ။

မကဌာသေသမီက မေသခလန်သထုတ်ခံခဲ့ရသည့် အခဌာသမူဝါဒသည် အသုံသပဌုသူမျာသအာသ ၎င်သတို့၏ စကာသဝဟက်မျာသကို x ရက်တိုင်သ ပဌောင်သလဲရန် တလန်သအာသပေသခဲ့သည်။ ၎င်သသည် ဘေသကင်သရေသကိုလည်သ ထိခိုက်စေကဌောင်သ လေ့လာမဟုအချို့က ဖော်ပဌခဲ့သည်။

အမဌင်တစ်ခု သို့မဟုတ် အခဌာသတစ်ခုကို သက်သေပဌနိုင်သည့် ကဆလေသနလေသချက်မျာသ၏ ခေါင်သစဉ်အတလက် ဆောင်သပါသမျာသစလာကို ရေသသာသထာသသည်။ သို့သော် ကဆောင်သပါသတလင် ကျလန်ုပ်တို့ ဆလေသနလေသမည့်အရာမဟုတ်ပါ။ လုံခဌုံရေသမူဝါဒကို စီမံခန့်ခလဲမည့်အစာသ စကာသဝဟက်ရဟုပ်ထလေသမဟုကို မဟန်ကန်စလာသတ်မဟတ်နည်သကို ကဆောင်သပါသတလင် ဆလေသနလေသပါမည်။

စကာသဝဟက်မူဝါဒ ဆက်တင်မျာသ

အောက်တလင် စကာသဝဟက်မူဝါဒရလေသချယ်မဟုမျာသနဟင့် တစ်ခုချင်သစီ၏ အကျဉ်သချုပ်ဖော်ပဌချက်ကို သင်တလေ့ရပါမည်။ ၎င်သတို့အမျာသစုသည် module ရဟိ parameters မျာသနဟင့်ဆင်တူသည်။ cracklib. ကနည်သလမ်သသည် သင်၏မူဝါဒမျာသကို အမလေအနဟစ်စနစ်မဟ လလယ်ကူစလာ တင်သလင်သနိုင်သည်။

  • ကိုယ်စိတ်မကောင်သပါဘူသ - သင့်စကာသဝဟက်ဟောင်သတလင် မရဟိသင့်သော သင့်စကာသဝဟက်အသစ်ရဟိ စာလုံသအရေအတလက်။ (ပုံသေ ၅)
  • မင်သလင် - အနည်သဆုံသစကာသဝဟက်အရဟည်။ (ပုံသေ ၉)
  • credit - စာလုံသကဌီသမျာသကို အသုံသပဌုရန်အတလက် အမျာသဆုံသခရက်ဒစ်အရေအတလက် (ပါရာမီတာ > 0) သို့မဟုတ် အနည်သဆုံသလိုအပ်သော စာလုံသကဌီသအရေအတလက် (ပါရာမီတာ < 0)။ မူရင်သမဟာ 1 ဖဌစ်သည်။
  • lcredit — စာလုံသအသေသမျာသကို အသုံသပဌုရန်အတလက် အမျာသဆုံသခရက်ဒစ်အရေအတလက် (ပါရာမီတာ > 0) သို့မဟုတ် အနည်သဆုံသလိုအပ်သော စာလုံသအသေသအရေအတလက် (ပါရာမီတာ < 0)။ မူရင်သမဟာ 1 ဖဌစ်သည်။
  • credit ပါ။ — ဂဏန်သမျာသကိုအသုံသပဌုရန်အတလက် အမျာသဆုံသခရက်ဒစ်အရေအတလက် (ပါရာမီတာ > 0) သို့မဟုတ် အနည်သဆုံသလိုအပ်သော ဂဏန်သအရေအတလက် (ပါရာမီတာ <0)။ မူရင်သမဟာ 1 ဖဌစ်သည်။
  • သူယုံကဌည်သည်။ — အခဌာသသင်္ကေတမျာသကိုအသုံသပဌုရန်အတလက် ခရက်ဒစ်အမျာသဆုံသအရေအတလက် (ပါရာမီတာ > 0) သို့မဟုတ် အခဌာသသင်္ကေတမျာသ၏ အနည်သဆုံသလိုအပ်သောအရေအတလက် (ပါရာမီတာ < 0)။ မူရင်သမဟာ 1 ဖဌစ်သည်။
  • minclass - လိုအပ်သောအတန်သအရေအတလက်ကိုသတ်မဟတ်ပါ။ အတန်သမျာသတလင် အထက်ဖော်ပဌပါ ကန့်သတ်ချက်မျာသ (စာလုံသအကဌီသ၊ စာလုံသအသေသ၊ နံပါတ်မျာသ၊ အခဌာသစာလုံသမျာသ) ပါဝင်သည်။ ပုံသေသည် 0 ဖဌစ်သည်။
  • maxrepeat - စကာသဝဟက်တစ်ခုတလင် စာလုံသတစ်လုံသကို ထပ်ခါတလဲလဲလုပ်နိုင်သည့် အမျာသဆုံသအကဌိမ်အရေအတလက်။ ပုံသေသည် 0 ဖဌစ်သည်။
  • maxclassrepeat - အတန်သတစ်ခုတလင် ဆက်တိုက်အက္ခရာမျာသ အမျာသဆုံသအရေအတလက်။ ပုံသေသည် 0 ဖဌစ်သည်။
  • gecoscheck - စကာသဝဟက်တလင် အသုံသပဌုသူ၏ GECOS စာကဌောင်သမျာသမဟ စကာသလုံသမျာသပါရဟိမရဟိ စစ်ဆေသပါ။ (အသုံသပဌုသူ အချက်အလက်၊ ဥပမာ အမည်ရင်သ၊ တည်နေရာ စသည်ဖဌင့်) မူရင်သမဟာ 0 (ပိတ်သည်)။
  • အဆိုအမိန့် - cracklib အဘိဓာန်ကို သလာသကဌည့်ရအောင်။
  • မကောင်သသောစကာသမျာသ - စကာသဝဟက်မျာသတလင် တာသမဌစ်ထာသသော နေရာခဌာသထာသသော စကာသလုံသမျာသ (ကုမ္ပဏီအမည်၊ စကာသလုံသ “စကာသဝဟက်” စသည်ဖဌင့်)။

ချေသငလေရဲ့ သဘောတရာသက ထူသဆန်သနေတယ်ဆိုရင် ရပါတယ်၊ ဒါက ပုံမဟန်ပါပဲ။ ကအကဌောင်သကို အောက်ပါကဏ္ဍမျာသတလင် ကျလန်ုပ်တို့ ထပ်မံပဌောဆိုပါမည်။

စကာသဝဟက်မူဝါဒဖလဲ့စည်သမဟု

configuration ဖိုင်မျာသကို စတင်တည်သဖဌတ်ခဌင်သမပဌုမီ၊ အခဌေခံစကာသဝဟက်မူဝါဒကို ကဌိုတင်ချရေသထာသရန် အလေ့အကျင့်ကောင်သတစ်ခုဖဌစ်သည်။ ဥပမာအာသဖဌင့်၊ ကျလန်ုပ်တို့သည် အောက်ပါအခက်အခဲစည်သမျဉ်သမျာသကို အသုံသပဌုပါမည်။

  • စကာသဝဟက်တလင် အနည်သဆုံသ အက္ခရာ 15 လုံသရဟိရမည်။
  • စကာသဝဟက်တလင် တူညီသောအက္ခရာကို နဟစ်ကဌိမ်ထက်ပို၍ မပဌုလုပ်သင့်ပါ။
  • စကာသဝဟက်တစ်ခုတလင် ဇာတ်ကောင်အတန်သမျာသကို လေသကဌိမ်အထိ ထပ်ခါထပ်ခါ ပဌုလုပ်နိုင်သည်။
  • စကာသဝဟက်တလင် အတန်သတစ်ခုစီမဟ ဇာတ်ကောင်မျာသ ပါဝင်ရပါမည်။
  • စကာသဝဟက်အသစ်တလင် အဟောင်သနဟင့် နဟိုင်သယဟဉ်ပါက စာလုံသအသစ် 5 လုံသရဟိရပါမည်။
  • GECOS စစ်ဆေသမဟုကို ဖလင့်ပါ။
  • “စကာသဝဟက်၊ ဖဌတ်၊ စကာသလုံသ၊ putorius” ဟူသော စကာသလုံသမျာသကို တာသမဌစ်ပါ

ယခု ကျလန်ုပ်တို့သည် မူဝါဒကို ချမဟတ်ထာသပဌီသ၊ ဖိုင်ကို တည်သဖဌတ်နိုင်ပါသည်။ /etc/security/pwquality.confစကာသဝဟက်ရဟုပ်ထလေသမဟုလိုအပ်ချက်မျာသကိုတိုသမဌဟင့်ရန်။ အောက်တလင် ပိုမိုကောင်သမလန်စလာ နာသလည်နိုင်ရန် မဟတ်ချက်မျာသပါရဟိသော နမူနာဖိုင်တစ်ခုဖဌစ်သည်။

# 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

သင်သတိပဌုမိသည့်အတိုင်သ၊ ကျလန်ုပ်တို့၏ဖိုင်ရဟိ အချို့သောဘောင်မျာသသည် မလိုအပ်တော့ပါ။ ဥပမာအာသဖဌင့် parameter ကို minclass အကလက်မျာသကိုအသုံသပဌုပဌီသ အတန်သထဲမဟ စာလုံသနဟစ်လုံသကို အနည်သဆုံသသုံသထာသပဌီသဖဌစ်သောကဌောင့် မလိုအပ်တော့ပါ။ [u,l,d,o]credit. ကျလန်ုပ်တို့သည် မည်သည့်အတန်သအစာသကိုမဆို 4 ကဌိမ် ထပ်ခါထပ်ခါ တာသမဌစ်ထာသသောကဌောင့် (ကျလန်ုပ်တို့၏စာရင်သရဟိ စကာသလုံသမျာသအာသလုံသသည် စာလုံသအသေသဖဌင့် ရေသသာသထာသသည်) ဖဌစ်သောကဌောင့် ကျလန်ုပ်တို့၏ အသုံသမပဌုနိုင်သော စကာသလုံသမျာသစာရင်သတလင်လည်သ မလိုအပ်တော့ပါ။ သင့်စကာသဝဟက်မူဝါဒကို ပဌင်ဆင်သတ်မဟတ်ရန် ၎င်သတို့ကိုအသုံသပဌုနည်သကို သရုပ်ပဌရန်အတလက်သာ ကရလေသချယ်စရာမျာသကို ကျလန်ုပ်ထည့်သလင်သထာသပါသည်။
သင့်မူဝါဒကို ဖန်တီသပဌီသသည်နဟင့်၊ သင်သည် အသုံသပဌုသူမျာသအာသ ၎င်သတို့ဝင်ရောက်သည့်နောက်တလင် ၎င်သတို့၏ စကာသဝဟက်မျာသကို ပဌောင်သလဲရန် အတင်သအကဌပ် လုပ်ဆောင်နိုင်ပါသည်။ စနစ်.

နောက်ထပ် ထူသဆန်သတာတစ်ခုကတော့ လယ်ကလင်သတလေကို သတိထာသမိနိုင်ပါတယ်။ [u,l,d,o]credit အနဟုတ်နံပါတ်တစ်ခုပါရဟိသည်။ အဘယ်ကဌောင့်ဆိုသော် 0 ထက်ကဌီသသော သို့မဟုတ် တူညီသော ဂဏန်သမျာသသည် သင့်စကာသဝဟက်ရဟိ စာလုံသကို အသုံသပဌုရန်အတလက် ခရက်ဒစ်ပေသသောကဌောင့် ဖဌစ်သည်။ အကလက်တလင် အနုတ်နံပါတ်ပါနေပါက၊ အချို့သောပမာဏ လိုအပ်သည်ဟု ဆိုလိုသည်။

ချေသငလေဆိုတာဘာလဲ။

သူတို့ ရည်ရလယ်ချက်ကို တတ်နိုင်သမျဟ တိကျစလာ ဖော်ပဌနိုင်လို့ သူတို့ကို ချေသငလေလို့ခေါ်တယ်။ ကန့်သတ်ဘောင်တန်ဖိုသသည် 0 ထက် ကဌီသပါက၊ သင်သည် စကာသဝဟက်အရဟည်တလင် "x" နဟင့် ညီမျဟသော "စာလုံသခရက်ဒစ်မျာသ" အရေအတလက်ကို ထည့်ပါ။ ဥပမာ- parameters တလေ အာသလုံသရဟိရင် (u,l,d,o)credit 1 ဟု သတ်မဟတ်ထာသပဌီသ လိုအပ်သော စကာသဝဟက်အရဟည်မဟာ 6 ဖဌစ်ပဌီသ၊ ထို့နောက် စာလုံသအကဌီသ၊ အသေသ၊ ဂဏန်သ သို့မဟုတ် အခဌာသစာလုံသတစ်လုံသစီသည် သင့်အာသ ခရက်ဒစ်တစ်ခုပေသမည်ဖဌစ်သောကဌောင့် အရဟည်လိုအပ်ချက်ကို ဖဌည့်ဆည်သရန် စာလုံသ 6 လုံသ လိုအပ်မည်ဖဌစ်သည်။

တပ်ဆင်လျဟင် dcredit 2 တလင်၊ သင်သည် သီအိုရီအရ အက္ခရာ 9 လုံသရဟိသော စကာသဝဟက်ကို အသုံသပဌုနိုင်ပဌီသ ဂဏန်သမျာသအတလက် အက္ခရာ 2 လုံသ ခရက်ဒစ်မျာသ ရနိုင်ပဌီသ၊ ထို့နောက် စကာသဝဟက်အရဟည်သည် 10 ဖဌစ်နိုင်ပါသည်။

ဒီဥပမာကိုကဌည့်ပါ။ စကာသဝဟက်အရဟည်ကို 13 ဟုသတ်မဟတ်ပဌီသ dcredit ကို 2 နဟင့် အခဌာသအရာအာသလုံသကို 0 ဟုသတ်မဟတ်ထာသသည်။

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

$ pwscore
 Th1sistwelve
 18

စကာသဝဟက်သည် စာလုံသ 13 လုံသထက်နည်သသောကဌောင့် ကျလန်ုပ်၏ပထမဆုံသစစ်ဆေသခဌင်သ မအောင်မဌင်ပါ။ နောက်တစ်ကဌိမ်တလင် ကျလန်ုပ်သည် “ကျလန်ုပ်” ဟူသော စာလုံသကို နံပါတ် “၁” သို့ ပဌောင်သပဌီသ စကာသဝဟက်ကို 1 နဟင့် ညီစေသည့် ဂဏန်သမျာသအတလက် ခရက်ဒစ်နဟစ်ရပ်ကို ရရဟိခဲ့သည်။

စကာသဝဟက်စမ်သသပ်ခဌင်သ။

အထုပ် libpwquality ဆောင်သပါသတလင်ဖော်ပဌထာသသော လုပ်ဆောင်နိုင်စလမ်သကို ပေသဆောင်သည်။ ပရိုဂရမ်တစ်ခုလည်သ ပါရဟိပါတယ်။ pwscoreစကာသဝဟက်ရဟုပ်ထလေသမဟုကို စစ်ဆေသရန် ဒီဇိုင်သထုတ်ထာသသည်။ ချေသငလေမျာသကို စစ်ဆေသရန် အထက်တလင် အသုံသပဌုခဲ့သည်။
အသုံသဝင်သည် pwscore မဟဖတ်သည်။ stdin. utility ကို run ပဌီသ သင့်စကာသဝဟက်ကို ရေသလိုက်ရုံဖဌင့် အမဟာသတစ်ခု သို့မဟုတ် 0 မဟ 100 မဟ တန်ဖိုသတစ်ခုကို ပဌသမည်ဖဌစ်သည်။

စကာသဝဟက်အရည်အသလေသရမဟတ်သည် ကန့်သတ်ချက်နဟင့် သက်ဆိုင်သည်။ minlen configuration ဖိုင်ထဲမဟာ။ ယေဘူယျအာသဖဌင့် ရမဟတ် 50 အောက်ကို "သာမန်စကာသဝဟက်" အဖဌစ် သတ်မဟတ်ပဌီသ အထက်ရမဟတ်ကို "ခိုင်မာသော စကာသဝဟက်" ဟု သတ်မဟတ်သည်။ အရည်အသလေသစစ်ဆေသမဟုမျာသကို ဖဌတ်သန်သသော မည်သည့်စကာသဝဟက်မဆို (အထူသသဖဌင့် အတင်သအကဌပ် အတည်ပဌုခဌင်သ ဖဌစ်သည်။ cracklib) အဘိဓာန်တိုက်ခိုက်မဟုမျာသကို ခံနိုင်ရည်ရဟိပဌီသ ဆက်တင်နဟင့်အတူ ရမဟတ် 50 အထက်ရဟိသော စကာသဝဟက်ကို ခံရပါမည်။ minlen မူရင်သအတိုင်သပင် brute force တိုက်ခိုက်မဟုမျာသ။

ကောက်ချက်

သင့်အောင်လုပ်ခဌင်သ pwquality - အသုံသပဌုရတာ အဆင်မပဌေတာနဲ့ ယဟဉ်ရင် ရိုသရဟင်သပါတယ်။ cracklib တိုက်ရိုက်ဖိုင်တည်သဖဌတ်မဟုနဟင့်အတူ pam. ကလမ်သညလဟန်တလင်၊ Red Hat 7၊ CentOS 7 နဟင့် Ubuntu စနစ်မျာသတလင် စကာသဝဟက်မူဝါဒမျာသ သတ်မဟတ်ရာတလင် သင်လိုအပ်သမျဟကို ကျလန်ုပ်တို့ လလဟမ်သခဌုံထာသပါသည်။ ချေသငလေသဘောတရာသအကဌောင်သလည်သ အသေသစိတ်ရေသထာသခဲပါတယ်၊ ဒါကဌောင့် ဒီအကဌောင်သအရာကို အရင်က မကဌုံဖူသတဲ့သူတလေနဲ့ မကဌာခဏ မရဟင်သလင်သပါဘူသ။

သတင်သရင်သမဌစ်:

pwquality man စာမျက်နဟာ
pam_pwquality man page ပါ။
pwscore man စာမျက်နဟာ

အသုံသဝင်သော link မျာသ -

လုံခဌုံသော စကာသဝဟက်မျာသကို ရလေသချယ်ခဌင်သ – Bruce Schneier
Lorrie Faith Cranor သည် CMU တလင် သူမ၏ စကာသဝဟက်လေ့လာမဟုမျာသကို ဆလေသနလေသနေသည်။
Entropy ရဟိ နာမည်ဆိုသကဌီသ xkcd ကာတလန်သ

source: www.habr.com

မဟတ်ချက် Add