OpenVPN இன் பல --up ஸ்கிரிப்ட் எச்சரிக்கை: ஒன்று மட்டுமே இயங்குகிறது
இரண்டு up வரிகளை மறுவரிசைப்படுத்தினால் இரண்டும் இயங்காது. OpenVPN ஒவ்வொரு கட்டத்திற்கும் ஒரு கட்டளையை வைத்திருக்கிறது, எனவே இரண்டு வரையறைகளையும் கண்டுபிடித்து வேலைக்கு ஒரே நுழைவுப் புள்ளியைக் கொடுங்கள்.
பல ஸ்கிரிப்ட் எச்சரிக்கை அட்டவணைப்படுத்தல் பற்றிய புகார் போலத் தெரிகிறது, எனவே வெளிப்படையான தீர்வு அது மறையும் வரை வரிகளை மறுவரிசைப்படுத்துவதாகும். ஆனால் இது அட்டவணைப்படுத்தல் புகார் அல்ல. பிந்தைய --up வரையறை அந்தக் கட்டத்திற்காக ஏற்கனவே சேமிக்கப்பட்ட கட்டளையை மாற்றுகிறது, மேலும் பகுப்பான் அதைச் சொல்கிறது, அதாவது உங்கள் இரண்டு ஸ்கிரிப்ட்களில் சரியாக ஒன்று மட்டுமே எப்போதாவது இயங்கியுள்ளது. மற்றொன்று அதன் பின்னால் வரிசையில் இல்லை; அது போய்விட்டது.
எனவே கொடியதாக இல்லாவிட்டாலும் இந்த எச்சரிக்கை கவனம் பெறத் தகுந்தது: இது முன்னறிவிப்பது அமைதியாக நடப்பதை நிறுத்திய DNS புதுப்பிப்பு அல்லது பாதை மாற்றம்.
எச்சரிக்கை வரிசை பற்றியது அல்ல
OpenVPN up கட்டத்திற்காக ஒரே பயனர் ஸ்கிரிப்ட் கட்டளையை வைத்திருக்கிறது. பகுப்பான் மற்றொரு வரையறையைக் கண்டால், சுயவிவரத்திலிருந்து, சேர்க்கப்பட்ட கோப்பிலிருந்து அல்லது கட்டளை வரியிலிருந்து, ஏற்கனவே வைத்திருந்ததை மாற்றி எச்சரிக்கையை வெளியிடுகிறது. எதுவும் இணைக்கப்படவில்லை, எதுவும் இருமுறை இயங்கவில்லை, வரிசை பற்றிய கேள்வியே இல்லை. தப்பிப்பிழைப்பது பகுப்பான் கடைசியாகப் பார்த்த கட்டளை, எனவே ஒரு வரியை நகர்த்தினால் வெற்றியாளர் மாறலாம், மற்ற ஸ்கிரிப்ட் இறந்த நிலையில் இருக்கும்.
இதே முறை மற்ற ஸ்கிரிப்ட் கட்டங்களுக்கும் பொருந்தும்: ஒவ்வொன்றுக்கும் ஒரு கட்டளை. இரண்டு வேலைகளும் நடக்க வேண்டும் என்றால், பட்டியல் போலத் தோன்றும் இரண்டு அறிவுறுத்தல்கள் அல்ல, ஒரே நுழைவுப் புள்ளி தேவை.
உண்மையான தொடக்கத்தில் இரண்டு வரையறைகளையும் கண்டுபிடிக்கவும்
நீங்கள் திருத்திய சுயவிவரத்திலிருந்து அல்ல, டீமன் உண்மையில் பெற்றதிலிருந்து தொடங்குங்கள். ps -ef மற்றும் யூனிட்டின் ExecStart கட்டளை வரியைக் காட்டுகின்றன, அதில் கொள்கலன் நுழைவுப் புள்ளி அல்லது மேலுறையிலிருந்து --up சேர்க்கப்படலாம்; விநியோகத்தின் init கோப்பும் அதையே செய்யலாம். systemctl cat openvpn-server@server சேவை தானே என்ன சேர்க்கிறது என்பதை வெளிப்படுத்துகிறது, மற்றும் உள்ளமைவு அடைவில் மீள்சுழற்சி grep கோப்பு மட்ட வரையறைகளைக் கண்டுபிடிக்கிறது. நகல்கள் பொதுவாக வெவ்வேறு அடுக்குகளிலிருந்து வருகின்றன, அதனால்தான் ஒரு கோப்பைத் திருத்துவது எதையும் மாற்றாது.
ஸ்கிரிப்டை வேறு அடைவுக்கு நகலெடுப்பது அல்லது பெயரை மாற்றுவதும் ஒரு அறிவுறுத்தலை நீக்காது. பகுப்பான் கோப்புகளை அல்ல, வரையறைகளை எண்ணுகிறது.
ஒரே hook வேலையைச் சொந்தமாகக் கொள்ளட்டும்
நிலையான தீர்வு, இரண்டு செயல்களையும் வேண்டுமென்றே தேர்ந்த வரிசையில் இயக்கும் ஒரே அனுப்புநர். set -eu கொண்ட சிறிய shell ஸ்கிரிப்ட் தேவையான ஒருங்கிணைப்பையும் பின்னர் உள்ளூர் செயலையும் அழைத்து, அளவுரு எல்லைகள் தப்பிப்பிழைக்க "$@" ஐ அனுப்புவதால், நடத்தை சரிபார்க்கக்கூடிய ஒரே இடத்தில் இருக்கிறது. அளவுருக்களை அனுப்புவது அவற்றைப் பாதுகாக்கிறது மட்டுமே; இரண்டு உதவியாளர்களும் ஒரே இடைமுகத்தை எதிர்பார்க்கிறார்கள் என்பதை அது நிரூபிக்காது, எனவே ஒவ்வொன்றின் ஒப்பந்தத்தையும் படியுங்கள். தோல்வி என்ன செய்ய வேண்டும், பகுதி மாற்றங்களை மீளச் செய்ய வேண்டுமா என்பதை முடிவு செய்யுங்கள்.
தொடக்கி ஆதரவளிக்கும் நீட்டிப்பு hook வழங்கினால், கையால் கட்டப்பட்ட சங்கிலியை விட அதை விரும்புங்கள். கொள்கலன் படிமம் அல்லது விற்பனையாளர் தொகுப்பில் கூடுதல் வேலைக்கு ஆவணப்படுத்தப்பட்ட இடம் பெரும்பாலும் இருக்கும், அதைப் பயன்படுத்துவது மேம்படுத்தல் உங்கள் அனுப்புநரை மேலெழுதுவதைத் தடுக்கிறது.
சுத்தம் தொடர்புடைய down கட்டத்திற்குரியது. DNS ஐ மீண்டும் எழுதும் அல்லது பாதைகளைச் சேர்க்கும் up செயலுக்கு ஆவணப்படுத்தப்பட்ட மீளல் தேவை, மேலும் தொடக்கத்தை மட்டும் கையாளும் அனுப்புநர் பாதி வடிவமைப்பு.
அமைதியை மட்டுமல்ல, ஒருங்கிணைப்பை உறுதிப்படுத்துங்கள்
நகல் எச்சரிக்கையை நீக்குவது எளிய பகுதி; ஒருங்கிணைப்பு இன்னும் வேலை செய்ய வேண்டும். இணைந்த பிறகு resolvectl status மூலம் அல்லது /etc/resolv.conf படிப்பதன் மூலம் தீர்ப்பான் நிலையைச் சரிபார்த்து, ip route மூலம் பாதைகளை உறுதிப்படுத்துங்கள். பிறகு இணைப்பைத் துண்டித்து மீண்டும் இணையுங்கள், ஏனெனில் அவசரமாக இணைக்கப்பட்ட hook முந்தைய அமர்விலிருந்து ஏதாவது விட்டுச் செல்கிறது. journalctl -u openvpn-server@server -b உங்கள் அனுப்புநர் இயங்கியதா, என்ன அச்சிட்டது என்பதைக் காட்டுகிறது.
hook இன் சிறப்புரிமைகளை இருக்க வேண்டிய இடத்திலேயே வைத்திருங்கள். script-security ஐ உயர்த்துவது அல்லது டீமனை அதிக உரிமைகளுடன் இயக்குவது மாற்றப்பட்ட hook க்கான தீர்வு அல்ல; இது எதிர்கால ஒவ்வொரு ஸ்கிரிப்டும், தாக்குபவர் பெயரிடும் ஸ்கிரிப்டும் என்ன செய்ய முடியும் என்பதை விரிவுபடுத்துகிறது.
தீர்வு உண்மையானது என்பதற்கான அறிகுறி பதிவில் அமைதி அல்ல. DNS பதில், பாதைப் பதிவு மற்றும் சுத்தம் ஆகியவை இரண்டு மறு இணைப்புகளுக்குப் பிறகும் சரியாக இயங்குவதே அது.