ഡെബിയൻ 8 ജെസ്സിയിൽ സിസ്കോ റൂട്ടറിനൊപ്പം TACACS+ ന്റെ ഇൻസ്റ്റാളേഷനും കോൺഫിഗറേഷനും


സാങ്കേതികവിദ്യ ഇന്ന് നെറ്റ്uവർക്കിംഗ് ഉപകരണങ്ങളെയും ആ നെറ്റ്uവർക്കിംഗ് ഉപകരണങ്ങളുടെ ശരിയായ കോൺഫിഗറേഷനെയും വളരെയധികം ആശ്രയിക്കുന്നു. കോൺഫിഗറേഷൻ മാറ്റങ്ങൾ നടപ്പിലാക്കുന്നതിന് മുമ്പ് സമഗ്രമായി പരിശോധിക്കപ്പെടുക മാത്രമല്ല, മാറ്റങ്ങൾ വരുത്താൻ അധികാരമുള്ള വ്യക്തികളാണ് കോൺഫിഗറേഷൻ മാറ്റങ്ങൾ വരുത്തുന്നത് എന്ന് ഉറപ്പുവരുത്താനും മാറ്റങ്ങൾ ലോഗ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കാനും അഡ്മിനിസ്ട്രേറ്റർമാർ ചുമതലപ്പെട്ടിരിക്കുന്നു.

ഈ സുരക്ഷാ തത്വം AAA (ട്രിപ്പിൾ-A) അല്ലെങ്കിൽ ഓതന്റിക്കേഷൻ, ഓതറൈസേഷൻ, അക്കൗണ്ടിംഗ് എന്നിങ്ങനെ അറിയപ്പെടുന്നു. അഡ്uമിനിസ്uട്രേറ്റർമാർക്ക് ഉപകരണങ്ങളിലേക്കും ആ ഉപകരണങ്ങൾ സേവിക്കുന്ന നെറ്റ്uവർക്കുകളിലേക്കും ആക്uസസ് സുരക്ഷിതമാക്കുന്നതിന് AAA ഫംഗ്uഷണാലിറ്റി വാഗ്ദാനം ചെയ്യുന്ന രണ്ട് പ്രമുഖ സിസ്റ്റങ്ങളുണ്ട്.

RADIUS (റിമോട്ട് ആക്uസസ് ഡയൽ-ഇൻ യൂസർ സർവീസ്), TACACS+ (ടെർമിനൽ ആക്uസസ് കൺട്രോളർ ആക്uസസ്-കൺട്രോൾ സിസ്റ്റം പ്ലസ്).

TACACS പരമ്പരാഗതമായി ഉപകരണ അഡ്മിനിസ്ട്രേഷനായി ഉപയോഗിക്കുന്ന TACACS ന് വിപരീതമായ നെറ്റ്uവർക്ക് ആക്uസസ് ചെയ്യുന്നതിന് ഉപയോക്താക്കളെ പ്രാമാണീകരിക്കുന്നതിന് റേഡിയസ് പരമ്പരാഗതമായി ഉപയോഗിക്കുന്നു. ഈ രണ്ട് പ്രോട്ടോക്കോളുകളും തമ്മിലുള്ള വലിയ വ്യത്യാസങ്ങളിലൊന്ന്, AAA ഫംഗ്ഷനുകളെ സ്വതന്ത്ര ഫംഗ്ഷനുകളായി വേർതിരിക്കുന്നതിനുള്ള TACACS-നുള്ള കഴിവാണ്.

AAA ഫംഗ്uഷനുകളുടെ TACACS വേർതിരിക്കുന്നതിന്റെ പ്രയോജനം, ചില കമാൻഡുകൾ എക്uസിക്യൂട്ട് ചെയ്യാനുള്ള ഉപയോക്താവിന്റെ കഴിവ് നിയന്ത്രിക്കാൻ കഴിയും എന്നതാണ്. നെറ്റ്uവർക്കിംഗ് സ്റ്റാഫിനോ മറ്റ് ഐടി അഡ്uമിനിസ്uട്രേറ്റർമാർക്കോ വളരെ ഗ്രാനുലാർ തലത്തിൽ വ്യത്യസ്ത കമാൻഡ് പ്രത്യേകാവകാശങ്ങൾ നൽകാൻ ആഗ്രഹിക്കുന്ന ഓർഗനൈസേഷനുകൾക്ക് ഇത് വളരെ പ്രയോജനകരമാണ്.

ഈ ലേഖനം ഒരു TACACS+ സിസ്റ്റമായി പ്രവർത്തിക്കാൻ ഒരു ഡെബിയൻ സിസ്റ്റം സജ്ജീകരിക്കുന്നതിലൂടെ നടക്കും.

  1. Debian 8 ഇൻസ്റ്റാൾ ചെയ്യുകയും നെറ്റ്uവർക്ക് കണക്റ്റിവിറ്റി ഉപയോഗിച്ച് കോൺഫിഗർ ചെയ്യുകയും ചെയ്യുന്നു. ഡെബിയൻ 8
  2. എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം എന്നതിനെക്കുറിച്ചുള്ള ഈ ലേഖനം വായിക്കുക
  3. സിസ്കോ നെറ്റ്uവർക്ക് സ്വിച്ച് 2940 (മറ്റ് മിക്ക സിസ്uകോ ഉപകരണങ്ങളും പ്രവർത്തിക്കും, എന്നാൽ സ്വിച്ച്/റൂട്ടറിലെ കമാൻഡുകൾ വ്യത്യാസപ്പെടാം).

ഡെബിയൻ 8-ൽ TACACS+ സോഫ്റ്റ്uവെയറിന്റെ ഇൻസ്റ്റാളേഷൻ

ഈ പുതിയ TACACS സെർവർ സജ്ജീകരിക്കുന്നതിനുള്ള ആദ്യ പടി റിപ്പോസിറ്ററികളിൽ നിന്ന് സോഫ്റ്റ്uവെയർ സ്വന്തമാക്കുക എന്നതാണ്. 'apt' കമാൻഡ് ഉപയോഗിച്ച് ഇത് എളുപ്പത്തിൽ പൂർത്തിയാക്കാനാകും.

# apt-get install tacacs+

മുകളിലുള്ള കമാൻഡ് പോർട്ട് 49-ൽ സെർവർ സേവനം ഇൻസ്റ്റാൾ ചെയ്യുകയും ആരംഭിക്കുകയും ചെയ്യും. നിരവധി യൂട്ടിലിറ്റികൾ ഉപയോഗിച്ച് ഇത് സ്ഥിരീകരിക്കാൻ കഴിയും.

# lsof -i :49
# netstat -ltp | grep tac

ഈ സിസ്റ്റത്തിലെ പോർട്ട് 49-ൽ TACACS ശ്രവിക്കുന്നുണ്ടെന്ന് സൂചിപ്പിക്കുന്ന ഒരു ലൈൻ ഈ രണ്ട് കമാൻഡുകളും നൽകണം.

ഈ സമയത്ത് TACACS ഈ മെഷീനിലെ കണക്ഷനുകൾക്കായി ശ്രദ്ധിക്കുന്നു. ഇപ്പോൾ TACACS സേവനവും ഉപയോക്താക്കളും കോൺഫിഗർ ചെയ്യാനുള്ള സമയമായി.

TACACS സേവനവും ഉപയോക്താക്കളും കോൺഫിഗർ ചെയ്യുന്നു

സെർവറിന് ഒന്നിലധികം വിലാസങ്ങൾ ഉണ്ടെങ്കിൽ, നിർദ്ദിഷ്ട ഐപി വിലാസങ്ങളിലേക്ക് സേവനങ്ങൾ ബന്ധിപ്പിക്കുന്നത് പൊതുവെ നല്ല ആശയമാണ്. ഈ ടാസ്ക്ക് നിർവ്വഹിക്കുന്നതിന്, ഒരു IP വിലാസം വ്യക്തമാക്കുന്നതിന് ഡിഫോൾട്ട് ഡെമൺ ഓപ്ഷനുകൾ പരിഷ്കരിക്കാവുന്നതാണ്.

# nano /etc/default/tacacs+

TACACS സിസ്റ്റം ആരംഭിക്കേണ്ട എല്ലാ ഡെമൺ ക്രമീകരണങ്ങളും ഈ ഫയൽ വ്യക്തമാക്കുന്നു. ഡിഫോൾട്ട് ഇൻസ്റ്റലേഷൻ കോൺഫിഗറേഷൻ ഫയൽ മാത്രമേ വ്യക്തമാക്കുകയുള്ളൂ. ഈ ഫയലിലേക്ക് ഒരു ‘-B’ ആർഗ്യുമെന്റ് ചേർക്കുന്നതിലൂടെ, TACACS-ന് കേൾക്കാൻ ഒരു നിർദ്ദിഷ്ട IP വിലാസം ഉപയോഗിക്കാം.

DAEMON_OPTS="-C /etc/tacacs+/tac_plus.conf " - Original Line
DAEMON_OPTS="-C /etc/tacacs+/tac_plus.conf -B X.X.X.X " - New line, where X.X.X.X is the IP address to listen on

ഡെബിയനിലെ പ്രത്യേക കുറിപ്പ്: ചില കാരണങ്ങളാൽ പുതിയ ഡെമൺ ഓപ്ഷനുകൾ വായിക്കാൻ TACACS+ സേവനം പുനരാരംഭിക്കാൻ ശ്രമിക്കുന്നത് പരാജയപ്പെട്ടു (സർവീസ് tacacs_plus റീസ്റ്റാർട്ട് വഴി).

init സ്ക്രിപ്റ്റ് വഴി TACACS ആരംഭിക്കുമ്പോഴാണ് ഇവിടെ പ്രശ്uനം ഉണ്ടാകുന്നത്, PID സ്ഥിരമായി \PIDFILE=/var/run/tac_plus.pid ആയി സജ്ജീകരിച്ചിരിക്കുന്നു, എന്നിരുന്നാലും \-B X.X.X.X ഒരു ഡെമൺ ഓപ്ഷനായി വ്യക്തമാക്കുമ്പോൾ, pid ഫയലിന്റെ പേര് \/var/run/tac_plus.pid.X.X.X.X എന്നാക്കി മാറ്റി.

ഇതൊരു ബഗ് ആണോ അല്ലയോ എന്ന് എനിക്ക് പൂർണ്ണമായി ഉറപ്പില്ല, പക്ഷേ സാഹചര്യത്തെ താൽക്കാലികമായി നേരിടാൻ, \PIDFILE=/var/run/tac_plus.pid.X.X.X.X എന്ന ലൈൻ മാറ്റി ഒരാൾക്ക് init സ്ക്രിപ്റ്റിൽ PIDFILE സ്വമേധയാ സജ്ജമാക്കാൻ കഴിയും. ഇവിടെ X.X.X.X എന്നത് TACACS ശ്രവിക്കുകയും തുടർന്ന് സേവനം ആരംഭിക്കുകയും ചെയ്യേണ്ട IP വിലാസമാണ്:

# service tacacs_plus start

സേവനം പുനരാരംഭിക്കുമ്പോൾ, TACACS സേവനം ശരിയായ IP വിലാസത്തിലാണ് കേൾക്കുന്നതെന്ന് സ്ഥിരീകരിക്കാൻ lsof കമാൻഡ് വീണ്ടും ഉപയോഗിക്കാം.

# lsof -i :49

മുകളിൽ കാണുന്നത് പോലെ, മുകളിലുള്ള TACACS ഡിഫോൾട്ട് ഫയലിൽ സജ്ജീകരിച്ചിരിക്കുന്ന ഒരു നിർദ്ദിഷ്ട IP വിലാസത്തിൽ ഒരു IP വിലാസത്തിൽ TACACS കേൾക്കുന്നു. ഈ ഘട്ടത്തിൽ ഉപയോക്താക്കളും നിർദ്ദിഷ്ട കമാൻഡ് സെറ്റുകളും സൃഷ്ടിക്കേണ്ടതുണ്ട്.

ഈ വിവരങ്ങൾ നിയന്ത്രിക്കുന്നത് മറ്റൊരു ഫയലാണ്: ‘/etc/tacacs+/tac_plus.conf‘. ഉചിതമായ മാറ്റങ്ങൾ വരുത്താൻ ഒരു ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് ഈ ഫയൽ തുറക്കുക.

# nano /etc/tacacs+/tac_plus.conf

എല്ലാ TACACS സ്പെസിഫിക്കേഷനുകളും (ഉപയോക്തൃ അനുമതികൾ, ആക്സസ് കൺട്രോൾ ലിസ്റ്റുകൾ, ഹോസ്റ്റ് കീകൾ മുതലായവ) വസിക്കേണ്ടത് ഈ ഫയൽ ആണ്. ആദ്യം സൃഷ്ടിക്കേണ്ടത് നെറ്റ്uവർക്ക് ഉപകരണങ്ങൾക്കുള്ള ഒരു കീയാണ്.

ഈ ഘട്ടത്തിൽ വളരെയധികം വഴക്കമുണ്ട്. എല്ലാ നെറ്റ്uവർക്ക് ഉപകരണങ്ങൾക്കും ഒരൊറ്റ കീ കോൺഫിഗർ ചെയ്യാം അല്ലെങ്കിൽ ഓരോ ഉപകരണത്തിനും ഒന്നിലധികം കീകൾ കോൺഫിഗർ ചെയ്യാം. ഓപ്ഷൻ ഉപയോക്താവിന്റെതാണ്, എന്നാൽ ഈ ഗൈഡ് ലാളിത്യത്തിനായി ഒരൊറ്റ കീ ഉപയോഗിക്കും.

key = "super_secret_TACACS+_key"

ഒരു കീ കോൺഫിഗർ ചെയ്തുകഴിഞ്ഞാൽ, ഉപയോക്താക്കൾക്ക് പിന്നീട് അസൈൻ ചെയ്യപ്പെടുന്ന അനുമതികൾ നിർണ്ണയിക്കുന്ന ഗ്രൂപ്പുകൾ നിർമ്മിക്കണം. ഗ്രൂപ്പുകൾ സൃഷ്ടിക്കുന്നത് അനുമതികളുടെ ഡെലിഗേഷൻ വളരെ എളുപ്പമാക്കുന്നു. പൂർണ്ണ അഡ്മിനിസ്ട്രേറ്റർ അവകാശങ്ങൾ നൽകുന്നതിനുള്ള ഒരു ഉദാഹരണം ചുവടെയുണ്ട്.

group = admins {
        default service = permit
        service = exec {
                priv-lvl = 15
        }
}

  1. ഗ്രൂപ്പ് പേര് നിർണ്ണയിക്കുന്നത് \ഗ്രൂപ്പ് = അഡ്മിൻസ് എന്ന വരിയാണ്, അഡ്uമിനുകൾ ഗ്രൂപ്പിന്റെ പേര്.
  2. ഒരു കമാൻഡ് വ്യക്തമായി നിരസിച്ചിട്ടില്ലെങ്കിൽ, അത് പരോക്ഷമായി അനുവദിക്കുക എന്ന് \default service = permit ലൈൻ സൂചിപ്പിക്കുന്നു.
  3. \service = exec {priv-lvl = 15 } ഒരു Cisco ഉപകരണത്തിൽ എക്uസിക് മോഡിൽ പ്രിവിലേജ് ലെവൽ 15 അനുവദിക്കുന്നു (സിസ്കോ ഉപകരണങ്ങളിൽ പ്രിവിലേജ് ലെവൽ 15 ആണ് ഏറ്റവും ഉയർന്നത്).

ഇപ്പോൾ അഡ്മിൻ ഗ്രൂപ്പിലേക്ക് ഒരു ഉപയോക്താവിനെ നിയോഗിക്കേണ്ടതുണ്ട്.

user = rob {
       member = admins
       login = des mjth124WPZapY
}

  1. ഉപയോക്താവ് = rob എന്ന ഖണ്ഡിക റോബിന്റെ ഉപയോക്തൃനാമം ചില ഉറവിടങ്ങൾ ആക്സസ് ചെയ്യാൻ അനുവദിക്കുന്നു.
  2. ഈ ഉപയോക്താവിന് എന്താണ് ചെയ്യാൻ അധികാരമുള്ളത് എന്നതിന്റെ ഒരു ലിസ്uറ്റിങ്ങിനായി \member = admins TACACS+ നോട് അഡ്uമിൻസ് എന്ന് വിളിക്കപ്പെടുന്ന മുൻ ഗ്രൂപ്പിനെ റഫർ ചെയ്യാൻ പറയുന്നു.
  3. അവസാന വരി, \login = des mjth124WPZapY എന്നത് ഈ ഉപയോക്താവിന് ആധികാരികമാക്കാനുള്ള ഒരു എൻക്രിപ്റ്റ് ചെയ്ത പാസ്uവേഡാണ് (ഈ സൂപ്പർ \സങ്കീർണ്ണമായ പാസ്uവേഡ് ഉദാഹരണം കണ്ടുപിടിക്കാൻ ഒരു ക്രാക്കർ ഉപയോഗിക്കാൻ മടിക്കേണ്ടതില്ല)!

പ്രധാനപ്പെട്ടത്: പ്ലെയിൻ-ടെക്uസ്uറ്റിന് പകരം എൻക്രിപ്റ്റ് ചെയ്uത പാസ്uവേഡുകൾ ഈ ഫയലിൽ സ്ഥാപിക്കുന്നത് പൊതുവെ ഒരു മികച്ച കീഴ്വഴക്കമാണ്, കാരണം ആരെങ്കിലും ഈ ഫയൽ വായിക്കുകയും ആക്uസസ്സ് ഉണ്ടാകാതിരിക്കുകയും ചെയ്uത സാഹചര്യത്തിൽ ഇത് ഒരു ചെറിയ സുരക്ഷ നൽകുന്നു.

കോൺഫിഗറേഷൻ ഫയലിലെ വേൾഡ് റീഡ് ആക്uസസ്സ് എങ്കിലും നീക്കം ചെയ്യുക എന്നതാണ് ഇതിനുള്ള നല്ലൊരു പ്രതിരോധ നടപടി. ഇനിപ്പറയുന്ന കമാൻഡ് വഴി ഇത് നടപ്പിലാക്കാൻ കഴിയും:

# chmod o-r /etc/tacacs+/tac_plus.conf
# service tacacs_plus reload

ഈ ഘട്ടത്തിൽ നെറ്റ്uവർക്ക് ഉപകരണങ്ങളിൽ നിന്നുള്ള കണക്ഷനുകൾക്കായി സെർവർ സൈഡ് തയ്യാറാണ്. നമുക്ക് ഇപ്പോൾ സിസ്uകോ സ്വിച്ചിലേക്ക് പോകാം, ഈ ഡെബിയൻ TACACS+ സെർവറുമായി ആശയവിനിമയം നടത്താൻ അത് കോൺഫിഗർ ചെയ്യാം.