രണ്ട് OpenVPN പാക്കറ്റ് പാതകൾക്കുള്ള Shorewall സോണുകൾ
എൻക്രിപ്റ്റ് ചെയ്ത OpenVPN ഗതാഗതം ഡീക്രിപ്റ്റ് ചെയ്ത ക്ലയന്റ് ട്രാഫിക്കിൽ നിന്ന് വേർതിരിക്കുക, ടണലിന് സ്വന്തം സോൺ നൽകുക, ക്ലയന്റിന് ആവശ്യമുള്ള ഒരേയൊരു സേവനം മാത്രം അനുവദിക്കുക.
രണ്ട് പാക്കറ്റ് പ്രവാഹങ്ങൾ OpenVPN അവസാനിപ്പിക്കുന്ന Shorewall ഗേറ്റ്വേയിലൂടെ കടന്നുപോകുന്നു, അവയിൽ ഒരെണ്ണം മാത്രമാണ് എൻക്രിപ്റ്റ് ചെയ്തിരിക്കുന്നത്. ആദ്യത്തേത് ഇന്റർനെറ്റിന് അഭിമുഖമായ ഇന്റർഫേസിലെ VPN ശ്രോതാവിലേക്കുള്ള ക്ലയന്റിന്റെ ഗതാഗതമാണ്. രണ്ടാമത്തേത് ടണൽ ഇന്റർഫേസിൽ നിന്ന് പുറത്തുവരുന്ന ഡീക്രിപ്റ്റ് ചെയ്ത അഭ്യർത്ഥന ആണ്, അത് ഓഫീസ് സർവറിലേക്കോ ഗേറ്റ്വേയിലെ സേവനത്തിലേക്കോ പോകുന്നു. നയം തിരുത്തുന്നതിന് മുമ്പ് രണ്ടും ചിത്രീകരിക്കുക, കാരണം ആദ്യത്തേതിനെ തൃപ്തിപ്പെടുത്തുന്ന നിയമം രണ്ടാമത്തേതിന് ഒന്നും ചെയ്യുന്നില്ല.
നയം തിരുത്തുന്നതിന് മുമ്പ് രണ്ട് പ്രവാഹങ്ങളും വരയ്ക്കുക
പ്രവാഹങ്ങളെ ഉറവിടം, ലക്ഷ്യം, പ്രോട്ടോക്കോൾ, പോർട്ട് എന്നിവയുള്ള വരികളായി എഴുതുക. പുറം പാതയിൽ ഉറവിടം ക്ലയന്റിന്റെ പൊതു വിലാസവും ലക്ഷ്യം ഗേറ്റ്വേയുടെ ശ്രവണ പോർട്ടുമാണ്; Shorewall ഇതിനെ ഇന്റർനെറ്റിൽ നിന്ന് ഫയർവാളിലേക്കുള്ള ട്രാഫിക്കായി കണക്കാക്കുന്നു. ഉൾ പാതയിൽ ഉറവിടം ടണൽ വിലാസ ശ്രേണിയും ലക്ഷ്യം അംഗീകരിച്ച സേവനവുമാണ്. ഒരു അഡ്മിനിസ്ട്രേറ്റർ രണ്ടും പരിപാലിച്ചാലും രണ്ട് വരികളുടെ ഉടമകൾ വ്യത്യസ്തരാണ്.
| Flow | Zone relationship | What to constrain |
|---|---|---|
| Encrypted OpenVPN transport | Internet to the firewall host | The listener's actual protocol and port |
| Decrypted request to a LAN service | VPN clients to the LAN zone | One approved server and service |
| Decrypted request to the gateway | VPN clients to the firewall host | Only the local services required |
| Request to another VPN client | VPN clients to VPN clients | Denied unless deliberately required |
അഭ്യർത്ഥന ഗേറ്റ്വേയിൽ തന്നെ അവസാനിക്കുമ്പോൾ മാത്രം ഒരു വരി ചേർക്കുക, ഉദാഹരണത്തിന് റിസോൾവറിലേക്കോ അഡ്മിനിസ്ട്രേഷനിലേക്കോ ഉള്ള പ്രവേശനം. ഹോസ്റ്റിലെ സേവനം ഫോർവേഡ് ചെയ്ത പാതയല്ല, ഹോസ്റ്റ്-ഇൻപുട്ട് നയം പിന്തുടരുന്നു. ഇവ രണ്ടും കലർത്തുന്നതാണ് ഇടുങ്ങിയ ടണൽ നിയമം ഒരു അഡ്മിനിസ്ട്രേഷൻ ഇന്റർഫേസ് വെളിപ്പെടുത്തുന്നതിന് കാരണം.
ടണൽ സോണും ഇന്റർഫേസ് പരിധിയും നൽകുക
റോഡ്-വാരിയർ സോൺ /etc/shorewall/zones ഫയലിൽ പ്രഖ്യാപിക്കുന്നു, ടണൽ ഇന്റർഫേസ് /etc/shorewall/interfaces ഫയലിൽ ചേർക്കുന്നു, പുറം കണക്ഷൻ /etc/shorewall/tunnels ഫയലിൽ വിവരിക്കുന്നു. ഇൻസ്റ്റാൾ ചെയ്ത പതിപ്പിന്റെ സിന്താക്സുമായി പൊരുത്തപ്പെടുക, കാരണം നിര ക്രമവും ഓപ്ഷൻ നാമങ്ങളും പ്രധാന പതിപ്പുകൾക്കിടയിൽ മാറിയിട്ടുണ്ട്. ഗൈഡിലെ ഉദാഹരണ പോർട്ട്, ഡീമൺ യഥാർത്ഥത്തിൽ കേൾക്കുന്ന പോർട്ടിൽ നിന്ന് വ്യത്യസ്തമായ പോർട്ട് അനുവദിക്കാനുള്ള കാരണമല്ല. അക്കങ്ങൾ ഒത്തുപോകുന്നത് കൊണ്ട് മാത്രം TCP ഉം UDP ഉം പരസ്പരം മാറ്റാവുന്നതല്ല.
ഗൈഡ് ഇന്റർഫേസുകൾ tun+ ഉപയോഗിച്ച് ഗ്രൂപ്പുചെയ്യുന്നു. ഒന്നിലധികം ടണലുള്ള ഹോസ്റ്റിൽ ആ വൈൽഡ്കാർഡ് വ്യത്യസ്ത വിശ്വാസ നിലവാരമുള്ള രണ്ടാമത്തെ VPN അതേ സോണിൽ ഇടാം. പരിധി യഥാർത്ഥത്തിൽ നിലവിലുള്ള ഇന്റർഫേസുകൾക്കെതിരെ പരിശോധിക്കുക, ഇന്റർഫേസ് നാമങ്ങൾ കൈകൊണ്ട് തിരുത്തുന്നതിന് പകരം നാമകരണം കണക്ഷൻ മാനേജറുടെ ജീവിതചക്രത്തിന് കീഴിൽ നിർത്തുക.
ചരിത്രപരമായ ഗൈഡിൽ വളരെ പഴയ OpenVPN കോൺഫിഗറേഷൻ മാതൃകകൾ അടങ്ങിയിരിക്കുന്നു, അതിന്റെ ക്രിപ്റ്റോ ഉപദേശം നിലവിലെ വിന്യാസത്തിലേക്ക് പകർത്തരുത്. പകരം സോണും പ്രവാഹ മാതൃകയും കടം വാങ്ങുക. ക്രിപ്റ്റോഗ്രാഫിക് അടിസ്ഥാനം ഗേറ്റ്വേയുടെ പരിപാലിക്കുന്ന OpenVPN നയത്തിൽ നിന്ന് എടുക്കുക.
നിങ്ങൾ വർഗ്ഗീകരിച്ച പാത മാത്രം അനുവദിക്കുക
VPN സോണിൽ നിന്ന് LAN ലേക്കുള്ള വിശാലമായ അനുവാദം ഒരു തുടക്ക രേഖാചിത്രമാണ്, പൂർത്തിയായ നയമല്ല. അനുവദിച്ച ക്ലയന്റ് ഉറവിടം, യഥാർത്ഥ സേവന വിലാസം, പ്രോട്ടോക്കോൾ, പോർട്ട് എന്നിവ എഴുതുക. തുടർന്ന് അതിന് മുകളിലുള്ള നിയമങ്ങളും സോണിന്റെ സ്ഥിരസ്ഥിതിയും വായിക്കുക, കാരണം ഇടുങ്ങിയ കൂട്ടിച്ചേർക്കൽ ഇതിനകം പൊരുത്തപ്പെടുന്ന വിശാലമായ അനുവാദം റദ്ദാക്കുന്നില്ല. ഗേറ്റ്വേ ഹോസ്റ്റിലേക്കുള്ള ട്രാഫിക് അതിലൂടെ ഫോർവേഡ് ചെയ്യുന്ന ട്രാഫിക്കിൽ നിന്ന് വേറിട്ട ബന്ധമാണ്.
ക്ലയന്റ്-തൊട്ട്-ക്ലയന്റ് ട്രാഫിക്കിന് സ്വന്തം തീരുമാനം വേണം. OpenVPN ന്റെ client-to-client ഉം Shorewall ന്റെ routeback ഉം ക്ലയന്റുകൾ പരസ്പരം എത്താൻ കഴിയുന്നതിൽ സ്വാധീനം ചെലുത്തുന്നു, ഒരു LAN ആപ്ലിക്കേഷൻ പ്രവർത്തിക്കാൻ വേണ്ടി മാത്രം ഇവയൊന്നും പ്രവർത്തനക്ഷമമാക്കരുത്. പരിശോധിക്കുന്നതിന് മുമ്പ് വേർതിരിവ് എവിടെ നടപ്പാക്കുന്നുവെന്ന് തീരുമാനിക്കുക.
മറുപടി പാത അതേ പ്ലാനിൽ നിർത്തുക. സേവനമോ അതിന്റെ റൗട്ടറോ ട്രാഫിക് ടണൽ ശ്രേണിയിലേക്ക് എങ്ങനെ തിരികെ അയക്കാമെന്ന് അറിയണം, അല്ലെങ്കിൽ രൂപകൽപ്പന ഉറവിടം ബോധപൂർവ്വം ഉദ്ദേശിച്ച പരിധിക്കുള്ളിൽ വിവർത്തനം ചെയ്യണം.
സാധൂകരിക്കുക, തുടർന്ന് രണ്ട് പാതകളും തെളിയിക്കുക
എന്തും പുനരാരംഭിക്കുന്നതിന് മുമ്പ് കോൺഫിഗറേഷൻ സാധൂകരിക്കുക, പുതിയ നയം തെറ്റാണെങ്കിൽ എന്നതിനായി സ്വതന്ത്ര അഡ്മിനിസ്ട്രേറ്റീവ് സെഷൻ തുറന്ന് വയ്ക്കുക.
shorewall check
വൃത്തിയുള്ള പരിശോധനയ്ക്ക് ശേഷം കോൺഫിഗറേഷൻ പ്രയോഗിക്കുക, Shorewall എന്താണ് ലോഡ് ചെയ്തതെന്ന് വീണ്ടും വായിക്കുക. ഈ വായനകൾ ഫയൽ പറയുന്നതായി തോന്നുന്നതല്ല, പ്രവർത്തിക്കുന്ന നയം വിവരിക്കുന്നു.
shorewall show zones
ip route get 192.168.10.20
ഒരേ ക്ലയന്റിൽ നിന്ന് പുതുതായി അനുവദിച്ച ഒരു അഭ്യർത്ഥനയും ബോധപൂർവ്വം നിരസിച്ച ഒരു അഭ്യർത്ഥനയും പരീക്ഷിക്കുക. വിജയകരമായ OpenVPN ഹാൻഡ്ഷേക്ക് ബാഹ്യ കൈമാറ്റം മാത്രം തെളിയിക്കുന്നു; അനുവദിച്ച സേവനവും നിരസിച്ച വിഭവവും നിങ്ങൾ ഉദ്ദേശിച്ച ആന്തരിക നയം തെളിയിക്കുന്നു. തുടർന്ന് ക്ലയന്റ് വീണ്ടും ബന്ധിപ്പിച്ച് ആവർത്തിക്കുക, കാരണം ടണൽ ഇന്റർഫേസിന്റെ പേരും വിലാസവും സെഷനുകൾക്കിടയിൽ മാറാം. ഫലം വ്യത്യസ്തമാണെങ്കിൽ നിയമം വിശാലമാക്കുന്നതിന് പകരം സോൺ പരിധി ശരിയാക്കുക.