ലിനക്സിൽ SSH സേവനം സുരക്ഷിതമാക്കാൻ പോർട്ട് നോക്കിംഗ് എങ്ങനെ ഉപയോഗിക്കാം


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

SSH സേവനം സുരക്ഷിതമാക്കുക എന്നതാണ് പോർട്ട് മുട്ടിന് പിന്നിലെ യുക്തി. പ്രകടന ആവശ്യങ്ങൾക്കായി, ഞങ്ങൾ ഉബുണ്ടു 18.04 ഉപയോഗിക്കും.

ഘട്ടം 1: knockd ഇൻസ്റ്റാൾ ചെയ്ത് കോൺഫിഗർ ചെയ്യുക

ആരംഭിക്കുന്നതിന്, നിങ്ങളുടെ Linux സിസ്റ്റത്തിലേക്ക് ലോഗിൻ ചെയ്uത് കാണിച്ചിരിക്കുന്നതുപോലെ knockd ഡെമൺ ഇൻസ്റ്റാൾ ചെയ്യുക.

$ sudo apt install knockd

ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, നിങ്ങളുടെ vim കമാൻഡ്-ലൈൻ ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് knockd.conf കോൺഫിഗറേഷൻ തുറക്കുക.

$ sudo vim /etc/knockd.conf

ഡിഫോൾട്ട് കോൺഫിഗറേഷൻ ഫയൽ ഇനിപ്പറയുന്ന രീതിയിൽ ദൃശ്യമാകുന്നു.

[openSSH] വിഭാഗത്തിന് കീഴിൽ, ഞങ്ങൾ ഡിഫോൾട്ട് നോക്കിംഗ് സീക്വൻസ് – 7000,8000,9000 – മറ്റെന്തെങ്കിലും മാറ്റേണ്ടതുണ്ട്. കാരണം, ഈ മൂല്യങ്ങൾ ഇതിനകം അറിയാവുന്നതും നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ സുരക്ഷയിൽ വിട്ടുവീഴ്ച ചെയ്യാവുന്നതുമാണ്.

പരിശോധനാ ആവശ്യങ്ങൾക്കായി, ഞങ്ങൾ മൂല്യങ്ങൾ 10005, 10006, 10007 എന്നിങ്ങനെ സജ്ജീകരിച്ചിരിക്കുന്നു. ഒരു ക്ലയന്റ് സിസ്റ്റത്തിൽ നിന്ന് SSH പോർട്ട് തുറക്കാൻ ഉപയോഗിക്കുന്ന ക്രമമാണിത്.

മൂന്നാമത്തെ വരിയിൽ – കമാൻഡിൽ തുടങ്ങി, /sbin/iptables കമാൻഡിന് ശേഷം INPUT-ന് മുമ്പായി -A -I ആയി മാറ്റുക. .

അവസാനമായി, [closeSSH] വിഭാഗത്തിന് കീഴിൽ, വീണ്ടും, ഡിഫോൾട്ട് സീക്വൻസ് നിങ്ങളുടെ ഇഷ്ടപ്പെട്ട ചോയിസിലേക്ക് മാറ്റുക. ഉപയോക്താവ് പൂർത്തിയാക്കി സെർവറിൽ നിന്ന് ലോഗ് ഔട്ട് ചെയ്uതുകഴിഞ്ഞാൽ SSH കണക്ഷൻ അടയ്uക്കാൻ ഉപയോഗിക്കുന്ന ക്രമമാണിത്.

ഞങ്ങളുടെ പൂർണ്ണമായ കോൺഫിഗറേഷൻ ഇതാ.

നിങ്ങൾ ചെയ്തുകഴിഞ്ഞാൽ, മാറ്റങ്ങൾ സംരക്ഷിച്ച് പുറത്തുകടക്കുക.

നമുക്ക് പരിഷ്കരിക്കേണ്ട മറ്റൊരു കോൺഫിഗറേഷൻ /etc/default/knockd ആണ്. ഒരിക്കൽ കൂടി, നിങ്ങളുടെ ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് അത് തുറക്കുക.

$ sudo vim /etc/default/knockd

START_KNOCKD=0 എന്ന വരി കണ്ടെത്തുക. അത് കമന്റ് ചെയ്uത് മൂല്യം 1 ആയി സജ്ജമാക്കുക.

അടുത്തതായി, KNOCKD_OPTS=”-i eth1” എന്ന വരിയിലേക്ക് പോകുക, അത് കമന്റ് ചെയ്യാതിരിക്കുക, നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ സജീവ നെറ്റ്uവർക്ക് ഇന്റർഫേസ് ഉപയോഗിച്ച് സ്ഥിരസ്ഥിതി eth1 മൂല്യം മാറ്റിസ്ഥാപിക്കുക. നിങ്ങളുടെ നെറ്റ്uവർക്ക് ഇന്റർഫേസ് പരിശോധിക്കുന്നതിന് ifconfig കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

ഞങ്ങളുടെ സിസ്റ്റത്തിന്, enp0s3 ഒരു സജീവ നെറ്റ്uവർക്ക് കാർഡാണ്.

പൂർണ്ണമായ കോൺഫിഗറേഷൻ കാണിച്ചിരിക്കുന്നത് പോലെയാണ്.

മാറ്റങ്ങൾ സംരക്ഷിച്ച് പുറത്തുകടക്കുക.

തുടർന്ന് കാണിച്ചിരിക്കുന്നതുപോലെ knockd deemon ആരംഭിച്ച് പ്രവർത്തനക്ഷമമാക്കുക.

$ sudo systemctl start knockd
$ sudo systemctl enable knockd

knockd demon-ന്റെ നില പരിശോധിക്കാൻ, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ sudo systemctl status knockd

ഘട്ടം 2: ഫയർവാളിൽ SSH പോർട്ട് 22 അടയ്ക്കുക

ഒന്നുകിൽ ssh സേവനത്തിലേക്കുള്ള പ്രവേശനം അനുവദിക്കുകയോ നിരസിക്കുകയോ ചെയ്യുക എന്നതാണ് knockd സേവനത്തിന്റെ ലക്ഷ്യം എന്നതിനാൽ, ഞങ്ങൾ ഫയർവാളിൽ ssh പോർട്ട് അടയ്ക്കാൻ പോകുന്നു. എന്നാൽ ആദ്യം, നമുക്ക് UFW ഫയർവാളിന്റെ നില പരിശോധിക്കാം.

$ sudo ufw status numbered

ഔട്ട്uപുട്ടിൽ നിന്ന്, യഥാക്രമം 5, 9 എന്നീ നമ്പറുകളുള്ള IPv4, IPv6 പ്രോട്ടോക്കോളുകളിൽ SSH പോർട്ട് 22 തുറന്നിരിക്കുന്നതായി നമുക്ക് വ്യക്തമായി കാണാൻ കഴിയും.

കാണിച്ചിരിക്കുന്നതുപോലെ ഈ രണ്ട് നിയമങ്ങളും ഞങ്ങൾ ഇല്ലാതാക്കേണ്ടതുണ്ട്, ഉയർന്ന മൂല്യത്തിൽ നിന്ന് ആരംഭിക്കുന്നു - അതായത് 9.

$ sudo ufw delete 9
$ sudo ufw delete 5

ഇപ്പോൾ, നിങ്ങൾ സെർവറിലേക്ക് വിദൂരമായി ലോഗിൻ ചെയ്യാൻ ശ്രമിക്കുകയാണെങ്കിൽ, കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങൾക്ക് ഒരു കണക്ഷൻ ടൈംഔട്ട് പിശക് ലഭിക്കും.

ഘട്ടം 3: SSH സെർവറിലേക്ക് കണക്റ്റുചെയ്യാൻ ഒരു നോക്ക് ക്ലയന്റ് കോൺഫിഗർ ചെയ്യുക

അവസാന ഘട്ടത്തിൽ, ഞങ്ങൾ ഒരു ക്ലയന്റ് കോൺഫിഗർ ചെയ്യുകയും സെർവറിൽ കോൺഫിഗർ ചെയ്ത നോക്ക് സീക്വൻസ് അയച്ച് ലോഗിൻ ചെയ്യാൻ ശ്രമിക്കുകയും ചെയ്യും.

എന്നാൽ ആദ്യം, നിങ്ങൾ സെർവറിൽ ചെയ്തതുപോലെ knockd deemon ഇൻസ്റ്റാൾ ചെയ്യുക.

$ sudo apt install knockd

ഇൻസ്റ്റലേഷൻ പൂർത്തിയായിക്കഴിഞ്ഞാൽ, കാണിച്ചിരിക്കുന്ന വാക്യഘടന ഉപയോഗിച്ച് നോക്ക് സീക്വൻസ് അയയ്ക്കുക

$ knock -v server_ip knock_sequence

ഞങ്ങളുടെ കാര്യത്തിൽ, ഇത് വിവർത്തനം ചെയ്യുന്നു:

$ knock -v 192.168.2.105 10005 10006 10007

നിങ്ങളുടെ ക്രമം അനുസരിച്ച്, ഞങ്ങളുടെ പക്കലുള്ളതിന് സമാനമായ ഔട്ട്പുട്ട് നിങ്ങൾക്ക് ലഭിക്കണം. നോക്ക് ശ്രമങ്ങൾ വിജയിച്ചതായി ഇത് കാണിക്കുന്നു.

ഈ ഘട്ടത്തിൽ, നിങ്ങൾ SSH ഉപയോഗിച്ച് സെർവറിലേക്ക് വിജയകരമായി ലോഗിൻ ചെയ്യാൻ കഴിയുന്ന അവസ്ഥയിലായിരിക്കണം.

റിമോട്ട് സെർവറിൽ നിങ്ങളുടെ ജോലി ചെയ്തുകഴിഞ്ഞാൽ, ക്ലോസിംഗ് നോക്ക് സീക്വൻസ് അയച്ചുകൊണ്ട് SSH പോർട്ട് ക്ലോസ് ചെയ്യുക.

$ knock -v 192.168.2.105 10007 10006 10005

പ്രദർശിപ്പിച്ചതുപോലെ സെർവറിലേക്ക് ലോഗിൻ ചെയ്യാനുള്ള ഏതൊരു ശ്രമവും പരാജയപ്പെടും.

നിങ്ങളുടെ സെർവറിൽ SSH സേവനം സുരക്ഷിതമാക്കാൻ പോർട്ട് മുട്ടിംഗ് എങ്ങനെ പ്രയോജനപ്പെടുത്താം എന്നതിനെക്കുറിച്ചുള്ള ഈ ഗൈഡ് ഇത് പൊതിഞ്ഞു. SSH കീ ജോഡികൾ ഉപയോഗിച്ച് പാസ്uവേഡ് SSH പ്രാമാണീകരണം കോൺഫിഗർ ചെയ്യുന്നതാണ് മികച്ചതും എളുപ്പവുമായ ഒരു സമീപനം. സ്വകാര്യ കീ ഉള്ള ഉപയോക്താവിന് മാത്രമേ പബ്ലിക് കീ സംഭരിച്ചിരിക്കുന്ന സെർവർ ഉപയോഗിച്ച് പ്രാമാണീകരിക്കാൻ കഴിയൂ എന്ന് ഇത് ഉറപ്പാക്കുന്നു.