ഫ്രീബിഎസ്ഡിയിൽ ഓപ്പൺ പോർട്ടുകൾ കണ്ടെത്തുന്നതിനുള്ള 15 ഉപയോഗപ്രദമായ സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് ഉദാഹരണങ്ങൾ


ഫ്രീബിഎസ്ഡിയിൽ നെറ്റ്uവർക്കും സിസ്റ്റം ഓപ്പൺ സോക്കറ്റുകളും പ്രദർശിപ്പിക്കുന്നതിന് ഉപയോഗിക്കുന്ന ഒരു ബഹുമുഖ കമാൻഡ് ലൈൻ യൂട്ടിലിറ്റിയാണ് സോക്ക്സ്റ്റാറ്റ്. പ്രധാനമായും, ഫ്രീബിഎസ്ഡിയിൽ സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് സ്ഥിരസ്ഥിതിയായി ഇൻസ്റ്റാൾ ചെയ്യപ്പെടുന്നു, കൂടാതെ ഒരു ഫ്രീബിഎസ്ഡി സിസ്റ്റത്തിൽ ഒരു നിശ്ചിത നെറ്റ്uവർക്ക് പോർട്ട് തുറന്ന പ്രോസസ്സുകളുടെ പേര് പ്രദർശിപ്പിക്കുന്നതിന് ഇത് സാധാരണയായി ഉപയോഗിക്കുന്നു.

എന്നിരുന്നാലും, സോക്ക്സ്റ്റാറ്റിന് പ്രോട്ടോക്കോൾ പതിപ്പ് (രണ്ട് ഐപി പതിപ്പുകളും) അടിസ്ഥാനമാക്കി ഓപ്പൺ സോക്കറ്റുകൾ ലിസ്റ്റുചെയ്യാനാകും, കണക്ഷന്റെ അവസ്ഥയും ഒരു ഡെമൺ അല്ലെങ്കിൽ ഒരു പ്രോഗ്രാം ബൈൻഡ് ചെയ്യുന്നതും ശ്രദ്ധിക്കുന്നതുമായ പോർട്ടുകൾ.

ഇതിന് ഇന്റർ-പ്രോസസ് കമ്മ്യൂണിക്കേഷൻ സോക്കറ്റുകളും പ്രദർശിപ്പിക്കാൻ കഴിയും, സാധാരണയായി Unix ഡൊമെയ്ൻ സോക്കറ്റുകൾ അല്ലെങ്കിൽ IPC എന്നറിയപ്പെടുന്നു. സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് awk യൂട്ടിലിറ്റിയുമായി സംയോജിപ്പിച്ച് പ്രാദേശിക നെറ്റ്uവർക്കിംഗ് സ്റ്റാക്കിനുള്ള ശക്തമായ ഉപകരണമാണെന്ന് തെളിയിക്കുന്നു.

സോക്കറ്റിന്റെ ഉടമയായ ഉപയോക്താവിനെയോ നെറ്റ്uവർക്ക് സോക്കറ്റിന്റെ ഫയൽ വിവരണത്തെയോ സോക്കറ്റ് തുറന്ന പ്രക്രിയയുടെ PIDയെയോ അടിസ്ഥാനമാക്കി തുറന്ന കണക്ഷനുള്ള ഫലങ്ങൾ ഇതിന് ചുരുക്കാൻ കഴിയും.

ഈ ഗൈഡിൽ, ഫ്രീബിഎസ്ഡിയിലെ സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് ലൈൻ നെറ്റ്uവർക്കിംഗ് യൂട്ടിലിറ്റിയുടെ ചില സാധാരണ ഉപയോഗ ഉദാഹരണങ്ങൾ ഞങ്ങൾ പട്ടികപ്പെടുത്തും, മാത്രമല്ല വളരെ ശക്തവുമാണ്.

  1. FreeBSD 11.1 ഇൻസ്റ്റലേഷൻ ഗൈഡ്

1. ഫ്രീബിഎസ്ഡിയിൽ തുറന്ന എല്ലാ പോർട്ടുകളും ലിസ്റ്റ് ചെയ്യുക

ഓപ്uഷനുകളോ സ്വിച്ചുകളോ ഇല്ലാതെ ലളിതമായി എക്uസിക്യൂട്ട് ചെയ്uതാൽ, താഴെയുള്ള സ്uക്രീൻഷോട്ടിൽ ചിത്രീകരിച്ചിരിക്കുന്നതുപോലെ സോക്ക്uസ്റ്റാറ്റ് കമാൻഡ് ഒരു ഫ്രീബിഎസ്ഡി സിസ്റ്റത്തിൽ തുറന്ന എല്ലാ സോക്കറ്റുകളും പ്രദർശിപ്പിക്കും.

# sockstat

സോക്ക്സ്റ്റാറ്റ് ഔട്ട്പുട്ടിൽ പ്രദർശിപ്പിച്ചിരിക്കുന്ന മൂല്യങ്ങൾ ഇങ്ങനെ വിവരിച്ചിരിക്കുന്നു:

  • USER : സോക്കറ്റിന്റെ ഉടമ (ഉപയോക്തൃ അക്കൗണ്ട്).
  • COMMAND : സോക്കറ്റ് തുറന്ന കമാൻഡ്.
  • PID : സോക്കറ്റിന്റെ ഉടമസ്ഥതയിലുള്ള കമാൻഡിന്റെ പ്രോസസ്സ് ഐഡി.
  • FD : സോക്കറ്റിന്റെ ഫയൽ ഡിസ്ക്രിപ്റ്റർ നമ്പർ.
  • PROTO : UNIX സോക്കറ്റുകൾക്കുള്ള unix ഡൊമെയ്ൻ സോക്കറ്റുകളുടെ (ഡാറ്റാഗ്രാം, സ്ട്രീം അല്ലെങ്കിൽ seqpac) തുറന്ന സോക്കറ്റ് അല്ലെങ്കിൽ സോക്കറ്റ് തരവുമായി ബന്ധപ്പെട്ട ഗതാഗത പ്രോട്ടോക്കോൾ (സാധാരണയായി TCP/UDP).
  • പ്രാദേശിക വിലാസം : ഇത് ഐപി അധിഷ്ഠിത സോക്കറ്റുകൾക്കായുള്ള പ്രാദേശിക ഐപി വിലാസത്തെ പ്രതിനിധീകരിക്കുന്നു. Unix സോക്കറ്റുകളുടെ കാര്യത്തിൽ, അത് സോക്കറ്റിൽ ഘടിപ്പിച്ചിരിക്കുന്ന എൻഡ്uപോയിന്റ് ഫയൽനാമത്തെ പ്രതിനിധീകരിക്കുന്നു. \?? നൊട്ടേഷൻ സൂചിപ്പിക്കുന്നത് സോക്കറ്റ് എൻഡ്uപോയിന്റ് തിരിച്ചറിയാനോ സ്ഥാപിക്കാനോ കഴിഞ്ഞില്ല എന്നാണ്.
  • വിദേശ വിലാസം : സോക്കറ്റ് ബന്ധിപ്പിച്ചിരിക്കുന്ന വിദൂര IP വിലാസം.

2. ലിസ്uറ്റണിംഗ് അല്ലെങ്കിൽ തുറന്ന പോർട്ടുകൾ ഫ്രീബിഎസ്ഡിയിൽ

-l ഫ്ലാഗ് ഉപയോഗിച്ച് എക്സിക്യൂട്ട് ചെയ്uതാൽ, സോക്ക്uസ്റ്റാറ്റ് കമാൻഡ് നെറ്റ്uവർക്കിംഗ് സ്റ്റാക്കിൽ തുറന്നിരിക്കുന്ന എല്ലാ ലിസണിംഗ് സോക്കറ്റുകളും സിസ്റ്റത്തിലെ ഏതെങ്കിലും തരത്തിലുള്ള പ്രാദേശിക ഡാറ്റ പ്രോസസ്സിംഗിൽ ഉൾപ്പെട്ടിരിക്കുന്ന എല്ലാ തുറന്ന unix ഡൊമെയ്uൻ സോക്കറ്റുകളും അല്ലെങ്കിൽ പേരുള്ള പൈപ്പുകളും പ്രദർശിപ്പിക്കും.

# sockstat -l

3. FreeBSD-യിൽ IPv4 തുറന്ന പോർട്ടുകൾ ലിസ്റ്റ് ചെയ്യുക

IPv4 പ്രോട്ടോക്കോളിനായി മാത്രം തുറന്നിരിക്കുന്ന എല്ലാ സോക്കറ്റുകളും പ്രദർശിപ്പിക്കുന്നതിന്, ചുവടെയുള്ള ഉദാഹരണത്തിൽ നിർദ്ദേശിച്ചിരിക്കുന്നതുപോലെ, -4 ഫ്ലാഗ് ഉപയോഗിച്ച് കമാൻഡ് നൽകുക.

# sockstat -4

4. FreeBSD-യിൽ IPv6 തുറന്ന പോർട്ടുകൾ ലിസ്റ്റ് ചെയ്യുക

IPv4 പതിപ്പിന് സമാനമായി, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് നൽകിക്കൊണ്ട് നിങ്ങൾക്ക് IPv6-ന് വേണ്ടി തുറന്ന നെറ്റ്uവർക്ക് സോക്കറ്റുകൾ പ്രദർശിപ്പിക്കാനും കഴിയും.

# sockstat -6

5. FreeBSD-യിൽ TCP അല്ലെങ്കിൽ UDP തുറന്ന പോർട്ടുകൾ ലിസ്റ്റ് ചെയ്യുക

TCP അല്ലെങ്കിൽ UDP പോലുള്ള ഒരു നിർദ്ദിഷ്uട നെറ്റ്uവർക്ക് പ്രോട്ടോക്കോൾ അടിസ്ഥാനമാക്കി മാത്രം നെറ്റ്uവർക്ക് സോക്കറ്റുകൾ പ്രദർശിപ്പിക്കുന്നതിന്, -P ഫ്ലാഗ് ഉപയോഗിക്കുക, തുടർന്ന് പ്രോട്ടോക്കോളിന്റെ ആർഗ്യുമെന്റ് നാമം.

/etc/protocols ഫയലിന്റെ ഉള്ളടക്കം പരിശോധിച്ച് പ്രോട്ടോക്കോൾ പേരുകൾ കണ്ടെത്താനാകും. നിലവിൽ, ICMP പ്രോട്ടോക്കോൾ സോക്ക്സ്റ്റാറ്റ് ടൂൾ പിന്തുണയ്ക്കുന്നില്ല.

# sockstat -P tcp
# sockstat -P udp

രണ്ട് പ്രോട്ടോക്കോളുകളും ചെയിൻ ചെയ്യുക.

# sockstat –P tcp,udp

6. TCP, UDP സ്പെസിഫിക് പോർട്ട് നമ്പറുകൾ ലിസ്റ്റ് ചെയ്യുക

ലോക്കൽ അല്ലെങ്കിൽ റിമോട്ട് പോർട്ട് നമ്പറിനെ അടിസ്ഥാനമാക്കി എല്ലാ TCP അല്ലെങ്കിൽ UDP IP തുറന്ന സോക്കറ്റുകളും പ്രദർശിപ്പിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, താഴെയുള്ള സ്ക്രീൻഷോട്ടിൽ ചിത്രീകരിച്ചിരിക്കുന്നതുപോലെ താഴെയുള്ള കമാൻഡ് ഫ്ലാഗുകളും വാക്യഘടനയും ഉപയോഗിക്കുക.

# sockstat -P tcp -p 443             [Show TCP HTTPS Port]
# sockstat -P udp -p 53              [Show UDP DNS Port] 
# sockstat -P tcp -p 443,53,80,21    [Show Both TCP and UDP]

7. ഫ്രീബിഎസ്ഡിയിൽ തുറന്നതും ബന്ധിപ്പിച്ചതുമായ പോർട്ടുകളുടെ ലിസ്റ്റ്

തുറന്നതും ബന്ധിപ്പിച്ചതുമായ എല്ലാ സോക്കറ്റുകളും പ്രദർശിപ്പിക്കുന്നതിന്, -c ഫ്ലാഗ് ഉപയോഗിക്കുക. താഴെയുള്ള സാമ്പിളുകളിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, കമാൻഡുകൾ നൽകിക്കൊണ്ട് നിങ്ങൾക്ക് എല്ലാ HTTPS കണക്റ്റുചെയ്uത സോക്കറ്റുകളും അല്ലെങ്കിൽ എല്ലാ TCP കണക്റ്റുചെയ്uത സോക്കറ്റുകളും ലിസ്റ്റുചെയ്യാനാകും.

# sockstat -P tcp -p 443 -c
# sockstat -P tcp -c

8. ഫ്രീബിഎസ്ഡിയിൽ നെറ്റ്uവർക്ക് ലിസണിംഗ് പോർട്ടുകൾ ലിസ്റ്റ് ചെയ്യുക

ശ്രവിക്കുന്ന അവസ്ഥയിൽ തുറന്നിരിക്കുന്ന എല്ലാ TCP സോക്കറ്റുകളും ലിസ്റ്റുചെയ്യുന്നതിന്, ചുവടെയുള്ള ഉദാഹരണത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ -l, -s ഫ്ലാഗുകൾ കൂട്ടിച്ചേർക്കുക. കണക്ഷനില്ലാത്ത പ്രോട്ടോക്കോൾ ആയതിനാൽ, കണക്ഷന്റെ അവസ്ഥയെക്കുറിച്ചുള്ള ഒരു വിവരവും UDP പരിപാലിക്കുന്നില്ല.

UDP തുറന്ന സോക്കറ്റുകൾ അവയുടെ അവസ്ഥ ഉപയോഗിച്ച് പ്രദർശിപ്പിക്കാൻ കഴിയില്ല, കാരണം udp പ്രോട്ടോക്കോൾ ഡാറ്റ അയയ്uക്കാനും സ്വീകരിക്കാനും ഡാറ്റാഗ്രാമുകൾ ഉപയോഗിക്കുന്നു, കൂടാതെ കണക്ഷന്റെ അവസ്ഥ നിർണ്ണയിക്കാൻ ബിൽഡ്-ഇൻ മെക്കാനിസം ഇല്ല.

# sockstat -46 -l -s

9. യുണിക്സ് സോക്കറ്റുകളും പേരുള്ള പൈപ്പുകളും ലിസ്റ്റ് ചെയ്യുക

Unix ഡൊമെയ്ൻ സോക്കറ്റുകളും അതുപോലെ തന്നെ പേരിട്ടിരിക്കുന്ന പൈപ്പുകൾ പോലെയുള്ള പ്രാദേശിക ഇന്റർ-പ്രോസസ് കമ്മ്യൂണിക്കേഷന്റെ മറ്റ് രൂപങ്ങളും താഴെയുള്ള ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ, -u ഫ്ലാഗ് ഉപയോഗിച്ച് സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് വഴി പ്രദർശിപ്പിക്കാൻ കഴിയും.

# sockstat -u

10. FreeBSD-യിലെ ആപ്ലിക്കേഷൻ വഴി തുറന്ന പോർട്ടുകൾ ലിസ്റ്റ് ചെയ്യുക

സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് ഔട്ട്പുട്ട് ഗ്രെപ് യൂട്ടിലിറ്റി വഴി ഫിൽട്ടർ ചെയ്യാവുന്നതാണ്, ഒരു പ്രത്യേക ആപ്ലിക്കേഷനോ കമാൻഡോ തുറന്ന പോർട്ടുകളുടെ ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കും.

Nginx വെബ് സെർവറുമായി ബന്ധപ്പെട്ട എല്ലാ സോക്കറ്റുകളും ലിസ്റ്റുചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെന്ന് കരുതുക, ടാസ്uക് നേടുന്നതിന് നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് നൽകാം.

# sockstat -46 | grep nginx

Nginx വെബ് സെർവറുമായി ബന്ധിപ്പിച്ചിട്ടുള്ള കണക്റ്റുചെയ്uത സോക്കറ്റുകൾ മാത്രം പ്രദർശിപ്പിക്കുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ് നൽകുക.

# sockstat -46 -c| grep nginx

11. HTTPS കണക്റ്റഡ് പ്രോട്ടോക്കോളുകൾ ലിസ്റ്റ് ചെയ്യുക

ചുവടെയുള്ള കമാൻഡ് പ്രവർത്തിപ്പിച്ച് ഓരോ കണക്ഷന്റെയും അവസ്ഥയ്uക്കൊപ്പം HTTPS പ്രോട്ടോക്കോളുമായി ബന്ധപ്പെട്ട എല്ലാ കണക്റ്റുചെയ്uത സോക്കറ്റുകളും നിങ്ങൾക്ക് ലിസ്റ്റുചെയ്യാനാകും.

# sockstat -46 -s -P TCP -p 443 -c

12. HTTP റിമോട്ട് സോക്കറ്റുകൾ ലിസ്റ്റ് ചെയ്യുക

HTTP പ്രോട്ടോക്കോളുമായി ബന്ധപ്പെട്ട എല്ലാ റിമോട്ട് സോക്കറ്റുകളും ലിസ്റ്റുചെയ്യുന്നതിന്, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് കോമ്പിനേഷനുകളിലൊന്ന് പ്രവർത്തിപ്പിക്കാം.

# sockstat -46 -c | egrep '80|443' | awk '{print $7}' | uniq -c | sort -nr
# sockstat -46 -c -p 80,443 | grep -v ADDRESS|awk '{print $7}' | uniq -c | sort -nr

13. IP വിലാസങ്ങൾ വഴി ഏറ്റവും ഉയർന്ന HTTP അഭ്യർത്ഥനകൾ കണ്ടെത്തുക

ഓരോ റിമോട്ട് ഐപി വിലാസവും എത്ര എച്ച്ടിടിപി കണക്ഷനുകൾ അഭ്യർത്ഥിച്ചിട്ടുണ്ടെന്ന് കണ്ടെത്തണമെങ്കിൽ, താഴെയുള്ള കമാൻഡ് നൽകുക. നിങ്ങളുടെ വെബ് സെർവർ ഏതെങ്കിലും തരത്തിലുള്ള DDOS ആക്രമണത്തിന് വിധേയമാണോ എന്ന് നിർണ്ണയിക്കണമെങ്കിൽ ഈ കമാൻഡ് വളരെ ഉപയോഗപ്രദമാകും. സംശയമുണ്ടെങ്കിൽ, ഉയർന്ന അഭ്യർത്ഥന നിരക്കുള്ള IP വിലാസങ്ങൾ നിങ്ങൾ അന്വേഷിക്കണം.

# sockstat -46 -c | egrep '80|443' | awk '{print $7}' | cut -d: -f1 | uniq -c | sort –nr

14. DNS തുറന്ന സോക്കറ്റുകൾ ലിസ്റ്റ് ചെയ്യുക

TCP ട്രാൻസ്പോർട്ട് പ്രോട്ടോക്കോൾ വഴി ആന്തരിക ക്ലയന്റുകൾക്ക് സേവനം നൽകുന്നതിനായി നിങ്ങളുടെ പരിസരത്ത് നിങ്ങൾ ഒരു കാഷിംഗ്, ഫോർവേഡ് DNS സെർവർ കോൺഫിഗർ ചെയ്തിട്ടുണ്ടെങ്കിൽ എല്ലാ സോക്കറ്റുകളുടെയും ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നു
റിസോൾവർ തുറന്ന്, ഓരോ സോക്കറ്റ് കണക്ഷന്റെയും അവസ്ഥയ്uക്കൊപ്പം, ഇനിപ്പറയുന്ന കമാൻഡ് എക്uസിക്യൂട്ട് ചെയ്യുക.

# sockstat -46 -P tcp –p 53 -s

15. ലോക്കൽ ഡൊമെയ്uനിൽ TCP DNS അന്വേഷിക്കുക

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

# dig +tcp  www.domain.com  @127.0.0.1

അത്രയേയുള്ളൂ! lsof കമാൻഡ് ലൈൻ യൂട്ടിലിറ്റികൾക്കൊപ്പം, നെറ്റ്uവർക്ക് വിവരങ്ങൾ നേടുന്നതിനും ഫ്രീബിഎസ്ഡി നെറ്റ്uവർക്കിംഗ് സ്റ്റാക്കിന്റെയും നെറ്റ്uവർക്കിംഗുമായി ബന്ധപ്പെട്ട പ്രക്രിയകളുടെയും സേവനങ്ങളുടെയും ഒന്നിലധികം വശങ്ങൾ പരിഹരിക്കുന്നതിനും ഉപയോഗിക്കുന്ന ശക്തമായ ഒരു യൂട്ടിലിറ്റിയാണ് സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് ലൈൻ.

ലിനക്സിലെ FreeBSD സോക്ക്സ്റ്റാറ്റ് കമാൻഡ് കൗണ്ടർപാർട്ടിനെ പ്രതിനിധീകരിക്കുന്നത് netstat അല്ലെങ്കിൽ പുതുതായി ss കമാൻഡ് ആണ്. വിശ്വസിച്ചാലും ഇല്ലെങ്കിലും, സോക്ക്uസ്റ്റാറ്റ് യൂട്ടിലിറ്റിയെ അടിസ്ഥാനമാക്കി, സോക്ക്uസ്റ്റാറ്റ് - സിമ്പിൾ നെറ്റ്uസ്റ്റാറ്റ് ജിയുഐ എന്ന പേരിൽ Android OS-നായി വികസിപ്പിച്ച സമാനമായ ഒരു ആപ്ലിക്കേഷൻ നിങ്ങൾക്ക് കണ്ടെത്താനാകും.