எல்.எஃப்.சி.ஏ: லினக்ஸ் கணினி பாதுகாப்பை மேம்படுத்துவது எப்படி - பகுதி 20


நாம் அனைவரும் அறிந்தபடி, ரூட் பயனர் ராஜா மற்றும் லினக்ஸ் கணினியில் வரம்பற்ற சலுகைகளைப் பெறுகிறார். இருப்பினும் ரூட் அல்லாத பயனர்கள் அடிப்படை பணிகளுக்கு மட்டுமே. கூடுதலாக, சூடோ பயனர்களுக்கு குறிப்பிட்ட உயர்ந்த பணிகளைச் செய்வதற்கு ரூட் பயனரால் பொருத்தமாக கருதப்படும் ஒரு குறிப்பிட்ட அளவு ரூட் சலுகைகள் மட்டுமே வழங்கப்படுகின்றன.

வழக்கமான பயனர்கள் வளங்களுக்கான கட்டுப்பாடற்ற அணுகலைக் கொண்டிருக்கும்போது அல்லது தற்செயலாக வேரூன்றும்போது சிக்கல்கள் எழுகின்றன. இது கடுமையான பாதுகாப்பு அபாயமாகும், இது மீறல்கள், விரும்பத்தகாத மாற்றங்கள் மற்றும் மோசமான சூழ்நிலையில், கணினியை செயலிழக்கச் செய்யலாம். கோப்புகளுக்கு குறைந்த பாதுகாப்பான கோப்பு அனுமதிகள் இருக்கும்போது மற்றொரு ஆபத்து உள்ளது. எடுத்துக்காட்டாக, உலகளாவிய பயனர்களுக்கான எழுத்து அனுமதிகளுடன் துவக்க கோப்புகளை எளிதில் மாற்றியமைக்கலாம் அல்லது சிதைக்கலாம், இதன் விளைவாக உடைந்த அமைப்பு ஏற்படும்.

[நீங்கள் விரும்பலாம்: தரவு மற்றும் லினக்ஸைப் பாதுகாப்பதற்கான பயனுள்ள உதவிக்குறிப்புகள்]

உடல், நெட்வொர்க் மற்றும் தரவு பாதுகாப்பை நாங்கள் செயல்படுத்த முடியும் என்றாலும், தீங்கிழைக்கும் பயனர் பாதுகாப்பு நடவடிக்கைகளைத் தவிர்த்து, அத்தகைய பாதுகாப்பு ஓட்டைகளைப் பயன்படுத்திக் கொள்ளலாம். இந்த காரணத்திற்காகவே கோப்பு முறைமை பாதுகாப்பை தீவிரமாக எடுத்துக்கொள்ள வேண்டும். கோப்புகளை அணுகுவதற்கான பாதுகாப்பு நடவடிக்கைகளைத் தவிர்ப்பதில் கடும் தூக்குதலைச் செய்ய வேண்டிய தீங்கிழைக்கும் ஊழியர்களிடமிருந்து தாக்குதல்கள் அல்லது உள் அச்சுறுத்தல்களை எதிர்கொள்ளும் போது இது கூடுதல் பாதுகாப்பு அடுக்கை வழங்குகிறது.

கணினி பாதுகாப்பில், பின்வரும் முக்கிய புள்ளிகளில் கவனம் செலுத்துவோம்:

  • அணுகல் உரிமைகள் - பயனர் மற்றும் குழு அனுமதிகள்.
  • PAM தொகுதி மூலம் கடவுச்சொல் கொள்கைகளை செயல்படுத்தவும்.

அணுகல் உரிமைகள் - பயனர் மற்றும் குழு பிரிப்பு

லினக்ஸில் உள்ள அனைத்தும் ஒரு கோப்பாக கருதப்படுவதை நீங்கள் கேள்விப்பட்டிருக்க வேண்டும். அது இல்லையென்றால், இது ஒரு செயல்முறை. லினக்ஸ் கணினியில் உள்ள ஒவ்வொரு கோப்பும் ஒரு பயனர் மற்றும் குழு பயனருக்கு சொந்தமானது. இது 3 பயனர் வகைகளுக்கான கோப்பு அனுமதிகளையும் கொண்டுள்ளது: பயனர் (யு), குழு (கிராம்) மற்றும் பிற (ஓ). ஒவ்வொரு பயனர் வகைக்கும் அனுமதிகள் படிக்க, எழுத மற்றும் செயல்படுத்த (rwx) இல் குறிப்பிடப்படுகின்றன.

rwx        rwx	     rwx
User       Group     Others

முன்பு பார்த்தபடி, ls கட்டளையில் காட்டப்பட்டுள்ளபடி.

$ ls -l

மறுபரிசீலனை செய்ய, அனுமதிகள் பொதுவாக ஒன்பது எழுத்துகளால் குறிக்கப்படுகின்றன. முதல் மூன்று எழுத்துக்கள் கோப்பை வைத்திருக்கும் உண்மையான பயனரின் அணுகல் உரிமைகளைக் குறிக்கின்றன. இரண்டாவது தொகுப்பு எழுத்துக்கள் கோப்பின் குழு உரிமையாளரின் அனுமதிகளைக் குறிக்கும். இறுதியாக, பிற அல்லது உலகளாவிய பயனர்களுக்கான கடைசி தொகுப்பு. இந்த எழுத்துக்கள் நிரந்தரமாக படிக்க, எழுத, இயக்க (rwx) வரிசையில் உள்ளன.

அனுமதிகளுக்குப் பிறகு, எங்களிடம் பயனர் மற்றும் குழு உரிமைகள் உள்ளன, அதைத் தொடர்ந்து கோப்பு அல்லது அடைவு அளவு, மாற்றியமைக்கப்பட்ட தேதி மற்றும் கடைசியாக கோப்பின் பெயர்.

கோப்பு/அடைவு அனுமதிகள் மற்றும் உரிமைகளை மாற்றுதல்

கோப்புகள் மற்றும் கோப்பகங்களின் பயனர் அனுமதிகள் பொருத்தமாக கருதப்படலாம். கட்டைவிரல் விதி என்பது குறைந்தபட்ச சலுகை பாதுகாப்புக் கொள்கையைப் பயன்படுத்துவதாகும். எளிமையாகச் சொன்னால், பயனர்கள் குறைந்தபட்ச அணுகல் உரிமைகள் அல்லது வேலையைச் செய்ய தேவையான அனுமதிகளைப் பெறுவதை உறுதிசெய்க.

குறைந்த பட்ச சலுகைகளின் கொள்கை பயனர்களை சில பாத்திரங்களுக்கு மட்டுமே கட்டுப்படுத்துகிறது, அவ்வாறு செய்வதன் மூலம், குறைந்த நெம்புகோல் பயனர் கணக்கை மேம்படுத்துவதன் மூலம் தாக்குபவர்கள் முக்கியமான தரவை அணுகும் மற்றும் மாற்றும் அபாயத்தை குறைக்கிறது. இது தாக்குதல் மேற்பரப்பைக் குறைக்கிறது மற்றும் தாக்குபவர் உங்கள் கணினியைக் கட்டுப்படுத்தினால் தீம்பொருள் பரப்புதலைக் கட்டுப்படுத்துகிறது.

எனவே, ஒரு பயனர் ஒரு கோப்பு அல்லது கோப்பகத்தின் உள்ளடக்கங்களை மட்டுமே பார்க்க வேண்டும் என்றால், அவர்களுக்கு இயக்க அல்லது அனுமதிகளை வழங்கக்கூடாது. மிக அடிப்படையான மட்டத்தில், பணிகளைச் செய்வதற்கு பயனருக்குத் தேவையான குறைந்தபட்ச அனுமதிகளையும் உரிமைகளையும் மட்டுமே வழங்குங்கள். அடிப்படை லினக்ஸ் கட்டளைகள் தலைப்பில் chmod மற்றும் chown கட்டளைகளைப் பயன்படுத்தி கோப்புகள்/கோப்பகங்களில் பயனர் அனுமதிகள் மற்றும் உரிமைகளை எவ்வாறு மாற்றுவது என்பதை நாங்கள் கையாண்டுள்ளோம்.

கணினி நிர்வாகிக்கு அனுமதிகளை நிர்வகிக்க எளிதான நேரம் இருக்க, முழு அடைவுகளுக்கும் சிறப்பு அனுமதிகள் அல்லது அணுகல் உரிமைகள் வழங்கப்படலாம். ஒரு கோப்பு அல்லது கோப்பகத்தை நீக்குவதையும் மாற்றுவதையும் கட்டுப்படுத்த பயன்படுத்தக்கூடிய சிறப்பு அனுமதிகளில் ஒன்று ஒட்டும் பிட் ஆகும்.

கணினி அல்லது நெட்வொர்க்கில் உள்ள அனைத்து பயனர்களால் பகிரப்பட்ட கோப்பகத்தை அணுகக்கூடிய சூழ்நிலையில், சில பயனர்கள் கோப்பகத்திற்குள் உள்ள கோப்புகளை நீக்க அல்லது மாற்றக்கூடிய ஆபத்து உள்ளது. அடைவு உள்ளடக்கங்களின் ஒருமைப்பாட்டை நீங்கள் பராமரிக்க விரும்பினால் இது விரும்பத்தகாதது. இந்த இடத்தில் தான் ஒட்டும் பிட் வருகிறது.

ஒரு ஒட்டும் பிட் என்பது ஒரு கோப்பு அல்லது முழு கோப்பகத்தில் அமைக்கப்பட்ட ஒரு சிறப்பு கோப்பு அனுமதி. அந்த கோப்பு/கோப்பகத்தின் உரிமையாளருக்கு மட்டுமே கோப்பு அல்லது அடைவு உள்ளடக்கங்களை நீக்க அல்லது மாற்றுவதற்கான அனுமதியை இது வழங்குகிறது. வேறு எந்த பயனரும் கோப்பு/கோப்பகத்தை நீக்கவோ மாற்றவோ முடியாது. இது t இன் குறியீட்டு மதிப்பையும் 1000 இன் எண் மதிப்பையும் கொண்டுள்ளது.

ஒரு கோப்பகத்தில் ஒட்டும் பிட்டை இயக்க, பின்வருமாறு chmod கட்டளையைப் பயன்படுத்தவும்:

$ chmod +t directory_name

கீழேயுள்ள எடுத்துக்காட்டில், சோதனை என்று அழைக்கப்படும் கோப்பகத்தில் ஒரு ஒட்டும் பிட்டைப் பயன்படுத்தியுள்ளோம். ஒரு கோப்பகத்தின் விஷயத்தில், அனைத்து உள்ளடக்கங்களும் ஒட்டும் பிட் அனுமதிகளைப் பெறும். Ls -ld கட்டளையைப் பயன்படுத்தி ஒட்டும் பிட் அனுமதிகளை நீங்கள் சரிபார்க்கலாம். கோப்பு அனுமதிகளின் முடிவில் t சின்னத்தை கவனிக்க மறக்காதீர்கள்.

$ ls -ld test

மற்றொரு பயனர் கோப்பகத்தை நீக்க அல்லது கோப்பகத்திற்குள் கோப்பை மாற்ற முயற்சித்தால், அவர்கள் அனுமதி மறுக்கப்பட்ட பிழையுடன் வரவேற்கப்படுகிறார்கள்.

அதுதான் குச்சி பிட் கோப்பு அனுமதியின் சுருக்கம்.

SUID (பயனர் ஐடியை அமைத்தல்) என்பது மற்றொரு சிறப்பு கோப்பு அனுமதி, இது மற்றொரு வழக்கமான பயனரை கோப்பு உரிமையாளரின் கோப்பு அனுமதிகளுடன் கோப்பை இயக்க அனுமதிக்கிறது. இது வழக்கமாக குறியீட்டு மதிப்பு கள் பயனரின் கோப்பு அனுமதிகளின் ஒரு x க்கு பதிலாக குறிக்கப்படுகிறது, இது இயக்க அனுமதிகளை குறிக்கிறது. SUID இன் எண் மதிப்பு 4000 ஆகும்.

எஸ்ஜிஐடி, (குழு ஐடியை அமைத்தல்) ஒரு வழக்கமான பயனரை கோப்பு குழு உரிமையாளரின் குழு அனுமதிகளைப் பெற அனுமதிக்கிறது. அனுமதிகளை இயக்க x ஐ விட, கோப்பு அனுமதிகளின் குழு பகுதியில் ஒரு கள் ஐ நீங்கள் காண்பீர்கள். எஸ்ஜிஐடியின் எண் மதிப்பு 2000 ஆகும்.

அவை எவ்வளவு வசதியானவையாக மாறினாலும், SUID மற்றும் SGID அனுமதிகள் பாதுகாப்பு அபாயங்களுடன் தொடர்புடையவை, மேலும் அவை எல்லா விலையிலும் தவிர்க்கப்பட வேண்டும். வழக்கமான பயனர்களுக்கு அவர்கள் சிறப்பு சலுகைகளை வழங்குவதே இதற்குக் காரணம். ஒரு வழக்கமான பயனராக காட்டிக்கொள்ளும் ஒரு ஊடுருவும் ரூட் பயனருக்கு சொந்தமான ஒரு இயங்கக்கூடிய கோப்பில் ஒரு SUID பிட் அமைக்கப்பட்டிருந்தால், அவர்கள் அந்த ஓட்டை பயன்படுத்தி கணினியை சுரண்டலாம்.

லினக்ஸில் அமைக்கப்பட்ட SUID பிட் கொண்ட அனைத்து கோப்புகளையும் கண்டுபிடிக்க, கண்டுபிடிப்பு கட்டளையை ரூட் பயனராக இயக்கவும்.

$ find / -perm -4000 type -f

கோப்பகங்கள் இயங்குவதற்கு:

$ find / -perm -4000 type -d

SGID பிட் செட் ரன் கொண்ட அனைத்து கோப்புகளையும் கண்டுபிடிக்க:

$ find / -perm -2000 type -f

கோப்பகங்கள் இயக்க:

$ find / -perm -2000 type -d

ஒரு கோப்பில் SUID பிட்டை அகற்ற, காட்டப்பட்டுள்ளபடி chmod கட்டளையை இயக்கவும்:

$ chmod u-s /path/to/file

ஒரு கோப்பில் SGID பிட்டை அகற்ற கட்டளையை இயக்கவும்:

$ chmod g-s filename /path/to/file

பயனர்கள் பலவீனமான கடவுச்சொற்களை அமைப்பது வழக்கமல்ல. உள்நுழைவின் போது அவற்றை மறந்துவிடாமல் இருக்க ஒரு நல்ல எண் குறுகிய, தெளிவான மற்றும் எளிதில் யூகிக்கக்கூடிய கடவுச்சொற்களை அமைக்கிறது. வசதியானதாக இருக்கும்போது, முரட்டுத்தனமான தாக்குதல் ஸ்கிரிப்ட்களைப் பயன்படுத்தி பலவீனமான கடவுச்சொற்களை எளிதில் மீறலாம்.

பிஏஎம் தொகுதி (செருகக்கூடிய அங்கீகார தொகுதி) என்பது லினக்ஸ் கணினிகளில் கடவுச்சொல் கொள்கைகளை செயல்படுத்த கணினி நிர்வாகிகளை அனுமதிக்கும் ஒரு தொகுதி ஆகும். இதை நிறைவேற்ற, உங்களுக்கு libpam_pwquality நூலகத்தால் வழங்கப்பட்ட pam_pwquality தொகுதி தேவை. Pam_pwquality தொகுதி ஒரு விதிமுறைகள் மற்றும் கணினி அகராதிக்கு எதிராக கடவுச்சொல்லின் வலிமையை சரிபார்க்கிறது மற்றும் பலவீனமான கடவுச்சொல் தேர்வுகளை சுட்டிக்காட்டுகிறது.

உபுண்டு 18.04 மற்றும் பிற பதிப்புகளில் pam_pwquality தொகுதியை நிறுவ, இயக்கவும்:

$ sudo apt install libpam_pwquality

RHEL/CentOS 8 க்கு, கட்டளையை இயக்கவும்:

$ sudo dnf install libpwquality

உள்ளமைவு கோப்பு பின்வரும் இடத்தில் காணப்படுகிறது:

  • டெபியன்-சிஸ்டங்களில் - /etc/pam.d/common-password
  • RedHat கணினிகளில் - /etc/pam.d/system-auth

நாங்கள் PAM உள்ளமைவு கோப்பை மாற்றத் தொடங்குவதற்கு முன், கடவுச்சொல் வயதான கட்டுப்பாடுகள் குறித்த நுண்ணறிவுகளை சேகரிப்பதை முதலில் கருத்தில் கொள்வோம்.

இவற்றை /etc/login.defs கோப்பில் காணலாம்.

கோப்பில் பின்வரும் முக்கிய கடவுச்சொல் கட்டுப்பாடுகள் உள்ளன:

  • PASS_MAX_DAYS: கடவுச்சொல்லைப் பயன்படுத்தக்கூடிய அதிகபட்ச நாட்கள்.
  • PASS_MIN_DAYS: குறைந்தபட்ச எண். கடவுச்சொல் மாற்றங்களுக்கு இடையில் அனுமதிக்கப்பட்ட நாட்கள்.
  • PASS_WARN_AGE: கடவுச்சொல் காலாவதியாகும் முன் கொடுக்கப்பட்ட நாட்கள் எச்சரிக்கை.

இயல்புநிலை மதிப்புகள் கீழே குறிக்கப்பட்டுள்ளன.

PASS_MAX_DAYS பண்புக்கூறு ஒரு பயனர் தங்கள் கடவுச்சொல்லைப் பயன்படுத்தக்கூடிய நாட்களின் எண்ணிக்கையை கட்டுப்படுத்துகிறது. இந்த மதிப்பு அடையப்படும்போது அல்லது கடவுச்சொல் காலாவதியாகும்போது, கணினியில் உள்நுழைய பயனர் தங்கள் கடவுச்சொல்லை மாற்ற நிர்பந்திக்கப்படுவார். இயல்பாக, இந்த மதிப்பு 99999 ஆக அமைக்கப்பட்டுள்ளது, இது 273 ஆண்டுகள் என மொழிபெயர்க்கப்பட்டுள்ளது. பாதுகாப்பைப் பொருத்தவரை இது பெரிதாக அர்த்தமல்ல, ஏனெனில் பயனர் தங்கள் கடவுச்சொல்லை தங்கள் வாழ்நாள் முழுவதும் தொடர்ந்து பயன்படுத்தலாம்.

இதை நீங்கள் ஒரு அர்த்தமுள்ள மதிப்பாக அமைக்கலாம், காட்டப்பட்டுள்ளபடி 30 நாட்கள் சொல்லுங்கள்.

PASS_MAX_DAYS  30

30 நாட்கள் கழிந்த பிறகு, பயனர் தங்கள் கடவுச்சொல்லை வேறு ஒன்றிற்கு மாற்ற வேண்டிய கட்டாயத்தில் உள்ளனர்.

PASS_MIN_DAYS பண்புக்கூறு பயனர்கள் தங்கள் கடவுச்சொல்லை மாற்றுவதற்கு முன்பு பயன்படுத்தக்கூடிய குறைந்தபட்ச காலத்தை உச்சரிக்கிறது. இதன் பொருள் என்ன? உதாரணமாக, இந்த மதிப்பு 15 நாட்களாக அமைக்கப்பட்டால், பயனருக்கு 15 நாட்கள் கழிப்பதற்கு முன்பு மீண்டும் கடவுச்சொல்லை மாற்ற முடியாது.

PASS_MAX_DAYS  15

PASS_WARN_AGE பண்புக்கூறு ஒரு பயனரின் கடவுச்சொல் காலாவதியாகும் முன்பே அதன் காலாவதியாகும் காலாவதியைப் பற்றிய எச்சரிக்கையைப் பெறும் நாட்களைக் குறிப்பிடுகிறது. எடுத்துக்காட்டாக, காட்டப்பட்டுள்ளபடி இதை 7 நாட்களுக்கு அமைக்கலாம்.

PASS_MAX_DAYS  7

குறிப்பு: இந்த கடவுச்சொல் கட்டுப்பாடுகள் முன்பே இருக்கும் கணக்குகளுடன் இயங்காது. விதிகளை வரையறுத்த பின்னர் உருவாக்கப்பட்ட புதிய கணக்குகளுக்கு மட்டுமே அவை பயன்படுத்தப்படும்.

நீங்கள் /etc/pam.d/common-password கோப்பை திருத்துவதற்கு முன், காப்பு பிரதி ஒன்றை உருவாக்கவும். இந்த எடுத்துக்காட்டில், பொதுவான-கடவுச்சொல்.பக் காப்பு நகல் கோப்பை உருவாக்கியுள்ளோம்.

$ sudo cp /etc/pam.d/common-password /etc/pam.d/common-password.bak

பின்னர் கோப்பைத் திறக்கவும்.

$ sudo vim /etc/pam.d/common-password 

கீழே காட்டப்பட்டுள்ள வரியைக் கண்டறிக.

password        requisite          pam_pwquality.so retry=3

மறுபயன்பாட்டு விருப்பம் பிழையைப் பெறுவதற்கு முன்பு சரியான கடவுச்சொல்லை உள்ளிட வேண்டிய அதிகபட்ச எண்ணிக்கையை அமைக்கிறது. முன்னிருப்பாக, இது 3 ஆக அமைக்கப்பட்டுள்ளது. இது ஒரு விருப்பம் மற்றும் நாங்கள் பல விருப்பங்களைச் சேர்க்கப் போகிறோம்.

வரியில் பின்வரும் பண்புகளைச் சேர்க்கவும்:

minlen=10 difok=3 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 reject_username 

இந்த பண்புகளை வெளியேற்றுவோம்.

  • minlen = 10: கடவுச்சொல்லின் ஏற்றுக்கொள்ளக்கூடிய குறைந்தபட்ச அளவை அமைக்கிறது. இந்த வழக்கில், 10 எழுத்துக்கள்.
  • difok = 3: முந்தைய கடவுச்சொல்லில் இருக்கும் அதிகபட்ச எழுத்துக்கள் இதுவாகும்.
  • lcredit = -1: இது கடவுச்சொல்லில் இருக்க வேண்டிய சிறிய எழுத்துக்களின் குறைந்தபட்ச எண்ணிக்கை.
  • ucredit = -1: கடவுச்சொல்லில் இருக்க வேண்டிய சிறிய எழுத்துக்களின் அதிகபட்ச எண்ணிக்கை இது.
  • dcredit = -1: கடவுச்சொல்லில் வரையறுக்கப்பட வேண்டிய குறைந்தபட்ச எண் எழுத்துக்கள்.
  • ocredit = -1: கடவுச்சொல்லில் வரையறுக்கப்பட வேண்டிய குறைந்தபட்ச சிறப்பு எழுத்துக்கள் எ.கா. @, #, &.
  • நிராகரிக்கும் பயனர்பெயர்: கடவுச்சொல் பயனர்பெயராக இருந்தால் நேராக அல்லது தலைகீழ் வடிவத்தில் இருந்தால் கடவுச்சொல்லை நிராகரிக்க இந்த விருப்பம் தூண்டுகிறது.

கடவுச்சொல் கொள்கைகளுக்கு குறைவான புதிய பயனரை உருவாக்க முயற்சித்தால், காட்டப்பட்டுள்ள பிழைகள் போன்றவற்றை நீங்கள் சந்திக்கப் போகிறீர்கள்.

இது கணினி பாதுகாப்பு மற்றும் பொதுவாக பாதுகாப்பு அடிப்படைகள் குறித்த தலைப்பை முடிக்கிறது. முழு அத்தியாயத்திலும், உங்கள் லினக்ஸ் கணினியை ஹேக்கர்கள் அல்லது அதிருப்தி அடைந்த ஊழியர்கள் போன்ற தீங்கிழைக்கும் பயனர்களிடமிருந்து பாதுகாக்க நீங்கள் செயல்படுத்தக்கூடிய அடிப்படை பாதுகாப்பு நடவடிக்கைகள் குறித்து நாங்கள் வெளிச்சம் போட்டுள்ளோம்.