இல் முந்தைய இடுகை ஃபயர்வாலாக செயல்பட IPTables இன் உள்ளமைவைக் கண்டோம். இப்போது அந்த ஸ்கிரிப்ட்களை எவ்வாறு உருவாக்குவது என்பதைக் காணலாம், இதனால் கணினி தொடங்கும் போது விதிகள் தானாகவே செயல்படுத்தப்படும், மேலும் அந்த விதிகளை ஒரு கணம் எவ்வாறு அகற்றலாம் அல்லது நிறுத்தலாம்.
ஸ்கிரிப்டைச் செய்வதற்கும், அது எப்படி இருக்கிறது என்பதைக் காண்பிப்பதற்கும் முன், NAT மற்றும் இந்த உபகரணத்துடன் நாம் என்ன செய்ய விரும்புகிறோம் என்ற கருத்தைப் பற்றி கொஞ்சம் பேசலாம்.
NAT மற்றும் உதாரணத்தின் சூழல்.
NAT பற்றி நாம் பேசும்போது, இதை இரண்டு ரூட்டிங் மூலம் குழப்பலாம், ஏனெனில் இருவரும் இரண்டு வெவ்வேறு நெட்வொர்க்குகளை ஒருவருக்கொருவர் இணைக்கும் பொறுப்பில் உள்ளனர். வித்தியாசம் என்னவென்றால், ஒரு உள்ளூர் நெட்வொர்க்கிலிருந்து இன்னொரு இடத்திற்கு செல்ல ரூட்டிங் பயன்படுத்தப்படுகிறது, மேலும் இந்த மற்ற பிணையம் ஒரு திசைவியுடன் இணைக்கப்பட்டு இணையத்திற்கு வெளியே செல்ல முடியும்.
அதேசமயம், நாங்கள் NAT ஐப் பற்றி பேசும்போது, உள்ளூர் அல்லது தனியார் நெட்வொர்க்கிலிருந்து பொது நெட்வொர்க் அல்லது இணையத்திற்கு பாக்கெட்டுகளை திசை திருப்புவது பற்றி பேசுகிறோம். இது இணையத்திற்குச் செல்லும் பொது ஐபியை வைப்பதன் மூலம் பாக்கெட்டுகளை மறைப்பதன் மூலம் இதைச் செய்கிறது. அதாவது, எங்களுக்கு ஒரு திசைவி தேவையில்லை, ஏனென்றால் பொது ஐபி நேரடியாக குனு / லினக்ஸுடன் கணினியால் வைக்கப்படுகிறது.
உள்ளூர் நெட்வொர்க்கிலிருந்து இணையத்திற்குச் செல்ல எங்கள் லினக்ஸை ஒரு திசைவி / ஃபயர்வாலாகப் பயன்படுத்துகிறோம் என்ற முழக்கத்துடன் இதைச் செய்வோம். ஆனால் இங்கே இரண்டு காட்சிகள் தோன்றலாம்.
- எங்கள் லினக்ஸ் சேவை வழங்குநரின் திசைவி மற்றும் உள்ளூர் பிணையத்திற்கு இடையில் உள்ளது.
இந்த வழக்கில், திசைவி மற்றும் எங்கள் லினக்ஸ் இடையே ஒரு பிணையம் இருக்கும், மற்றும் லினக்ஸ் மற்றும் உள்ளூர் நெட்வொர்க்கிற்கு இடையில் மற்றொரு வேறுபட்ட பிணையம் இருக்கும். இதன் பொருள் என்னவென்றால், எங்கள் திசைவி NAT ஐ செய்ய வேண்டியதில்லை, விளக்கப்பட்டுள்ளபடி எளிய போக்குவரத்து ரூட்டிங் மூலம் முந்தைய இடுகை அது நன்றாக இருக்கும்.
- எங்கள் லினக்ஸ் உள்ளூர் நெட்வொர்க்குடன் இணைக்கப்பட்ட ஒரு இடைமுகத்தைக் கொண்டுள்ளது, மற்ற இடைமுகத்தின் மூலம் அது நேரடியாக ஒரு பொது ஐபி பெறுகிறது.
இதன் பொருள் பாக்கெட்டுகள் இணையத்தை அடைய எங்கள் லினக்ஸ் NAT செய்ய வேண்டும்.
இந்த சிறிய ஆய்வகத்தின் நோக்கங்களுக்காக, எங்கள் லினக்ஸ் ஒரு பொது ஐபியை நேரடியாகப் பெறுகிறது, இதனால் NAT இன் விளைவுகளை சோதிக்க முடியும்.
NAT செய்ய நாம் தொடரியல் பயன்படுத்துகிறோம்
iptables -t nat -A போஸ்ட்ரொட்டிங் -O eth1 -j MASQUERADE
எத்தனை என்பது பொது ஐபி பெறும் இடைமுகம், அதாவது நாம் இணையத்திற்குச் செல்லும் இடம்.
ஐப்டேபிள்ஸ் ஸ்கிரிப்டை உருவாக்குகிறது
அப்படியானால்: 172.26.0.0 எங்கள் உள்ளூர் நெட்வொர்க் மற்றும் 81.2.3.4 என்பது இணையத்திற்கு செல்லும் பொது ஐபி ஆகும். (இது ஒரு நிலையான ஐபி). எனக்கு இடைமுகங்கள் eth0 (உள்ளூர் பிணையம்) உள்ளது
eth1 (பொது நெட்வொர்க்).
இது அடிப்படையில் /etc/init.d/firestop இலிருந்து அழைக்கக்கூடிய ஸ்கிரிப்டை உருவாக்குவதைக் கொண்டுள்ளது (எடுத்துக்காட்டாக). இந்த ஸ்கிரிப்டிலிருந்து எந்தவொரு கணினி டீமானையும் போலவே, எங்கள் உள்ளமைவின் நிலையைத் தொடங்கலாம், நிறுத்தலாம் அல்லது சரிபார்க்கலாம்.
எனது IPTABLES விதிகள் உள்ளன என்று வைத்துக்கொள்வோம்:
#! / bin / bash # எனது வீட்டின் ஃபயர்வால். # கோப்பு பெயர் / etc / firewall_on # Jlcmux Twitter ஆல்: lJlcmux # # அடிப்படைக் கொள்கை. iptables -P INPOUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP # #NAT இன்டர்நெட்டை eth0 முதல் eth1 iptables வரை பகிர்ந்து கொள்ள -t nat -A POSTROUTING -O eth1 -j SNAT - to-source 81.2.3.4 # # எனது iptables ஆல் தொடங்கப்பட்ட உள்வரும் இணைப்புகளை அனுமதிக்கவும் - ஒரு FORWARD -m state --state ESTABLISHED, RELATED -j ACCEPT # # அங்கீகரிக்கப்பட்ட வெளிச்செல்லும் போக்குவரத்து iptables -A FORWARD -i eth0 -o eth1 -p tcp --dport 80 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p tcp --dport 443 -j ACCEPT iptables -A FORWARD -i eth0 -o eth1 -p udp --dport 53 -j ACCEPT
விளக்கம்:
ஸ்கிரிப்ட் அடிப்படையில் பின்வருவனவற்றை செய்கிறது:
- முதலில் அனைத்து வழிசெலுத்தல், இணைப்புகள் மற்றும் போக்குவரத்தை கட்டுப்படுத்துங்கள். (அடிப்படை ஃபயர்வால் கொள்கைகள்)
- இலக்கு eth1 உடன் NAT ஐ உருவாக்கவும். எங்களிடம் நிலையான பொது ஐபி இருப்பதைக் குறிக்கிறது "81.2.3.4"
- என்னால் தொடங்கப்பட்ட இணைப்புகளின் பாக்கெட்டுகளைப் பெற தேவையான துறைமுகங்களை இது திறக்கிறது.
- வெளிச்செல்லும் HTTP, HTTPS மற்றும் DNS போக்குவரத்தை ஏற்றுக்கொள்கிறது.
செல்லவும் எங்கள் கருவிகளைப் பயன்படுத்த விரும்பினால், நாங்கள் வரிகளை மீண்டும் செய்து, FORWARD ஐ INPUT அல்லது OUTPUT என மாற்ற வேண்டும்.
ஸ்கிரிப்டை ரத்துசெய்.
இப்போது நாம் மேலே உள்ள அனைத்தையும் மீறி கணினியை சுத்தமாக விட்டுவிடும் ஒரு ஸ்கிரிப்டை உருவாக்கப் போகிறோம். (சோதனை நோக்கங்களுக்காக அல்லது ஃபயர்வாலை அணைக்க விரும்புகிறோம்).
#! / bin / bash # எனது வீட்டின் ஃபயர்வால். # கோப்பு பெயர் / etc / firewall_off # Jlcmux Twitter ஆல்: lJlcmux # # iptables விதிகளை நீக்குதல் -F # # இயல்புநிலை கொள்கைகளைப் பயன்படுத்துதல் (அனைத்து போக்குவரத்தும் ஏற்றுக்கொள்ளப்பட்டது) iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT
தானியங்கு.
இப்போது நாம் ஸ்கிரிப்டை உள்ளே உருவாக்க வேண்டும் /etc/init.d/ சேவை தானாகவே தொடங்குகிறது, மேலும் அதை நாங்கள் மிகவும் வசதியான முறையில் நிர்வகிக்க முடியும்.
#! / bin / bash # எனது வீட்டின் ஃபயர்வால். # கோப்பு பெயர் /etc/init.d/ ஃபயர்வால் # Jlcmux Twitter ஆல்: lJlcmux case start 1 தொடக்கத்தில்) / etc / firewall_on ;; நிறுத்து) / etc / firewall_off ;; நிலை) iptables -L ;; *) எதிரொலி "தவறான தொடரியல். செல்லுபடியாகும் = /etc/init.d/ ஃபயர்வால் தொடக்க | நிறுத்து | நிலை ;; esac
விளக்கம்:
இந்த கடைசி ஸ்கிரிப்டை நாங்கள் வைத்தோம் /etc/init.d/ பெயருடன் ஃபயர்வால். எனவே ஃபயர்வாலை நிர்வகிக்க விரும்பினால் கட்டளையைப் பயன்படுத்தலாம் /etc/init.d/ ஃபயர்வால் தொடக்கம். அதே வழியில் நாம் அதை நிறுத்தலாம் அல்லது மாநிலத்தைப் பார்க்கலாம்.
இப்போது நாம் கோப்பை திருத்தப் போகிறோம் /etc/rc.local நாங்கள் இதைப் போன்றவற்றை வைக்கிறோம்: /etc/init.d/ ஃபயர்வால் தொடக்கம் கணினியுடன் தொடங்க.
அத்துடன். இது இரண்டாம் பகுதி. இது உங்கள் அனைவருக்கும் எதையாவது கொண்டு வரும் என்று நம்புகிறேன். அடுத்ததாக ப்ராக்ஸி மற்றும் ஐடிஎஸ் ஆகியவற்றைக் காண்கிறோம்.
நீங்கள் டெபியனைப் பயன்படுத்துகிறீர்கள் என்றால், ரெப்போவில் (ஐப்டேபிள்ஸ்-பெர்சிஸ்டன்ட்) ஒரு தொகுப்பு உள்ளது, அது சரியாகச் செய்கிறது, இது தற்போதைய விதிகளை /etc/iptables/rules.v4 அல்லது v6 இல் நீங்கள் பயன்படுத்துவதைப் பொறுத்து நீக்குகிறது, பின்னர் அவை உங்களுக்குப் பொருந்தும் நீங்கள் கணினியை உயர்த்தும்போது.
நடைமுறையில், ஒரு வழக்கமான ஐப்டேபிள்ஸ் ஃபயர்வாலின் உள்ளமைவை சுத்தம் செய்ய (மற்றும் NAT ஐப் பயன்படுத்துவது எனது பார்வையில் இருந்து இருக்காது), பெரும்பாலான சந்தர்ப்பங்களில் ஒரு விதி பறிப்பு மற்றும் இயல்புநிலை கொள்கைகளை ACCEPT க்கு மீட்டமைப்பது போதுமானது.
ஆனால் கோட்பாட்டில், எனக்குத் தெரிந்தவரை, இது தவிர நீங்கள் இயல்புநிலை அல்லாத சரங்களை அழித்து கவுண்டர்களை மீட்டமைக்க வேண்டும். "வடிகட்டி" தவிர வேறு அட்டவணைகள் உள்ளன என்பதை மனதில் கொண்டு மேற்கொள்ளப்பட வேண்டிய நடவடிக்கைகள் (இதற்காக "/ proc / net / ip_tables_names" கோப்பைப் படிக்க வேண்டியது அவசியம்).
மூலம், நெட்வொர்க் இருப்பதற்கு முன்பே ஃபயர்வால் ஏற்கனவே இருக்க வேண்டும் என்று மரபுவழி கூறுகிறது. மற்ற லினக்ஸ் கணினிகளில் இது எவ்வாறு அடையப்படுகிறது என்று எனக்குத் தெரியவில்லை, ஆனால் டெபியன்களில் ஸ்கிரிப்டைத் தழுவி "/etc/network/if-pre-up.d/" கோப்பகத்தில் அமைக்கலாம்.
அனைவருக்கும் நல்ல ஃபயர்வால். 😉
வணக்கம், இடுகை மிகவும் நல்லது. முழு 2 தொகுதிகளையும் படித்திருக்கிறேன்.
அடுத்ததுக்காக காத்திருக்கிறது
எனது அறியாமையிலிருந்து ஒரு கேள்வி, நாங்கள் ஐப்டேபிள்களுடன் தொடர்கிறோம், ஆனால் பல கர்னல் பதிப்புகளுக்கு நம்மிடம் nftables உள்ளன, நான் ஏற்கனவே சோதித்து வருகிறேன், கேள்விகள், iptables ஐப் பொறுத்தவரை nftables ஏதேனும் பீட்டா? ஐப்டேபிள்ஸ் அதிக நேரம் தொடர்ந்து பயன்படுத்தப்படுமா?
நன்றி.
nftables இல் iptables, ip6tables, arptables மற்றும் ebtables இன் அனைத்து செயல்பாடுகளும் அடங்கும், இவை அனைத்தும் கர்னல்ஸ்பேஸ் மற்றும் யூசர்ஸ்பேஸ் இரண்டிலும் ஒரு புதிய உள்கட்டமைப்பைப் பயன்படுத்துகின்றன, இது சிறந்த செயல்திறன் மற்றும் மேம்பட்ட செயல்பாட்டை உறுதி செய்கிறது. nftables iptables மற்றும் குறிப்பிடப்பட்ட பிற எல்லா கருவிகளையும் மாற்றும், ஆனால் தற்போதைக்கு அல்ல, குறைந்தபட்சம் nftables இன் பரவலான பயன்பாடு இருக்கும் வரை அல்ல.
மிகவும் நல்ல பதிவு, இது மிகவும் நன்றாக விளக்கப்பட்டுள்ளதால் நான் மேலும் படிக்க விரும்பினேன் .. வாழ்த்துக்கள் பெரும் பங்களிப்புக்கு நன்றி
வணக்கம்! இரண்டு இடுகைகளும் மிகவும் நல்லது.
ஒரு பங்களிப்பாக இந்த பகுதியில் நீங்கள் இறுதியில் சேர்க்கலாம்:
"இப்போது நாம் /etc/rc.local கோப்பைத் திருத்தப் போகிறோம்: /etc/init.d/firestop தொடங்குங்கள், இதனால் அது கணினியுடன் தொடங்குகிறது."
இதை rc.local இல் சேர்க்கவும்.
[-x /etc/init.d/ ஃபயர்வால்] என்றால்; பிறகு
/etc/init.d/ ஃபயர்வால் தொடக்கம்
fi
இதன் பொருள் "ஃபயர்வால்" மரணதண்டனை அனுமதிகள் இருந்தால், அதை இயக்கவும், இல்லையென்றால்.
"ஃபயர்வால்" தொடங்கக்கூடாது என்று நீங்கள் விரும்பினால், நீங்கள் அனுமதிகளை அகற்ற வேண்டும்.
எடுத்துக்காட்டாக: chmod + x /etc/init.d/ ஃபயர்வால்
ஒவ்வொரு தொடக்கத்திலும் அதை இயக்க ... அல்லது
chmod -x /etc/init.d/ ஃபயர்வால்
அதை முழுமையாக முடக்க.
நன்றி!