రౌటర్లో OpenVPN సెట్టింగ్లు రీబూట్ తర్వాత తిరిగి వస్తాయి: జనరేటర్ను సరిచేయండి
ప్రతి బూట్లో OpenVPN కాన్ఫిగరేషన్ను తిరిగి నిర్మించే ఫర్మ్వేర్ మీ మార్పులను పారేస్తుంది. జనరేటర్ హుక్ను ప్యాచ్ చేయండి, ఆపై ఒక రీబూట్ తర్వాత సృష్టించిన ఫైల్ను పోల్చండి.
వినియోగదారు రౌటర్ లేదా NAS లోని ఫర్మ్వేర్ తరచుగా ప్రతి ప్రారంభంలో తన OpenVPN కాన్ఫిగరేషన్ను తిరిగి నిర్మిస్తుంది, కాబట్టి మీరు జోడించే సూచన సరిగ్గా తదుపరి బూట్ వరకు మాత్రమే నిలుస్తుంది. వెబ్ ఫారమ్లో టైప్ చేసిన కీలకు కూడా ఇదే వర్తిస్తుంది, అక్కడ నిల్వ చేసిన విలువ సేవ్ చేసిన తర్వాత వికృతమై తిరిగి రావచ్చు. ఈ లక్షణాలలో ఏదీ మార్పు తిరస్కరించబడిందని అర్థం కాదు. సవరణ ఫర్మ్వేర్ అవుట్పుట్గా పరిగణించే ఫైల్లోకి చేరిందని, శాశ్వత స్థలం బూట్ క్రమంలో ఒక అడుగు ముందుందని అర్థం.
సవరించిన ఫైల్ మళ్లీ ఎందుకు సృష్టించబడుతుంది
ప్రారంభ స్క్రిప్ట్ టెంప్లేట్ నుండి సర్వర్ కాన్ఫిగరేషన్ను కలిపి ఆపై డీమన్ను ప్రారంభిస్తుంది, ఇది రెండర్ చేసిన ఫైల్ను మూలం కాకుండా బిల్డ్ ఆర్టిఫ్యాక్ట్గా మారుస్తుంది. ప్రారంభం తర్వాత జోడించిన ఏదీ ఆ స్క్రిప్ట్ తదుపరి రన్కు కనిపించదు. రెండవ నమూనా మరింత సూక్ష్మమైనది: వెబ్ ఇంటర్ఫేస్లో కీ మరియు సర్టిఫికెట్ ఇన్పుట్లు ఎస్కేప్ చేసిన రూపంలో నిల్వ చేయబడతాయి, ఫారమ్ను సేవ్ చేయడం ఆ ఎస్కేప్ టెక్స్ట్ను డీమన్ చదివే ఫైల్లోకి నెట్టవచ్చు. ఏ విధంగా అయినా, రెండర్ చేసిన కాన్ఫిగరేషన్ శాశ్వత మార్పుకు తప్పు స్థలం.
బూట్ క్రమం ఏమి రాస్తుంది, ఎప్పుడు రాస్తుంది అని చూడండి. సమాధానం దాదాపు ఎప్పుడూ ఫర్మ్వేర్లోని init లేదా ఆటోరన్ డైరెక్టరీలో ఉన్న స్క్రిప్ట్.
స్క్రిప్ట్ ఫైల్ను నిర్మించే చోటే సూచనను చేర్చండి
QTS పరికరాలు డీమన్ను ప్రారంభించే init స్క్రిప్ట్ లోపల OpenVPN సర్వర్ కాన్ఫిగరేషన్ను తిరిగి సృష్టిస్తాయి, కాబట్టి సవరణ అక్కడే జరగాలి. సృష్టించిన ఫైల్ను సవరించడం బదులు ప్రారంభ కమాండ్కు సరిగ్గా ముందు జోడింపును జోడించండి.
sed -i '/daemon_mgr/i echo client-config-dir clientconfig >>/etc/openvpn/server.conf' /etc/init.d/vpn_openvpn.sh
grep -c client-config-dir /etc/openvpn/server.confలైన్ నంబర్లు బిల్డ్ల మధ్య మారుతాయి కాబట్టి, కదలని కమాండ్కు చొప్పును యాంకర్ చేయండి. init స్క్రిప్ట్ స్వయంగా బూట్ సమయంలో భర్తీ చేయబడుతుంది కాబట్టి, సిస్టమ్ ప్రారంభమైన ప్రతిసారీ ఫర్మ్వేర్ ఆటోరన్ హుక్ నుండి మార్పు తిరిగి జారీ చేయాలి. ఒక రీబూట్ తర్వాత సృష్టించిన ఫైల్లో సంఘటనలను లెక్కించండి: ఒక లైన్ ప్యాచ్ పనిచేసిందని, రెండు లైన్లు హుక్ ఒకసారి కంటే ఎక్కువసార్లు నడుస్తున్నదని అర్థం. రెట్టింపు రన్ను విడిగా పరిశోధించండి, ఎందుకంటే అది మాయమైన మార్పు లాంటి అదే లోపం కాదు.
ఎస్కేప్ చేసిన కీలను నిల్వ చేసిన ఫారమ్ను సరిచేయండి
Asus శైలి పేజీలలో సర్టిఫికెట్ మరియు కీ ఇన్పుట్లు ఎస్కేప్ చేసిన టెక్స్ట్ను చూపుతాయి, సంబంధం లేని సర్దుబాటు తర్వాత సేవ్ చేయడం ఆ యూనిట్లను తిరిగి డిస్క్కు రాయవచ్చు. డీకోడ్ చేసిన కాపీ నుండి పని చేయండి మరియు అన్ని సవరణలు సిద్ధమైన తర్వాత ఒకసారి మాత్రమే సేవ్ చేయండి.
openssl dhparam -out dh2048.pem 2048
grep -n "BEGIN DH PARAMETERS" dh2048.pemకొత్త పరామితి సెట్ను మార్చేటప్పుడు, లేబుల్ కీ శరీరాన్ని అడిగితే base64 పేలోడ్ను మాత్రమే అతికించండి, ఫీల్డ్ పూర్తి PEM బ్లాక్ను ఆశించినప్పుడు మాత్రమే ఆర్మర్ లైన్లను ఉంచండి. ఇప్పటికే ఎస్కేప్ రూపంలో సేవ్ చేసిన పేజీని పునరుద్ధరించడం సాధారణంగా ప్రభావిత ఇన్పుట్లను ఖాళీ చేసి వర్తింపజేయడం, ఇది ఫర్మ్వేర్ను వాటిని తిరిగి నిర్మించడానికి అనుమతిస్తుంది. 2048 బిట్లకు మించిన ఏదైనా వర్క్స్టేషన్లో సృష్టించండి, ఎందుకంటే రౌటర్ ఎంట్రోపీ సరఫరా ఆపరేషన్ను నెమ్మదిగా మరియు కొన్నిసార్లు నమ్మదగని విధంగా చేస్తుంది. పరామితి ఫైల్ను ఫ్యాక్టరీ రీసెట్ తర్వాత కూడా చేరుకోగల స్థలంలో ఉంచండి.
నవీకరణల తర్వాత మళ్లీ తనిఖీ చేయండి
ఫర్మ్వేర్ నవీకరణలు init స్క్రిప్ట్లను భర్తీ చేస్తాయి మరియు ఆటోరన్ డైరెక్టరీని తొలగించవచ్చు, కాబట్టి ప్యాచ్ తిరిగి ఇన్స్టాల్ చేసి తిరిగి పరీక్షించాలి. తిరిగి సృష్టించిన ఫైల్ను మీరు ఉంచిన కాపీతో పోల్చి సూచన సరిగ్గా ఒకసారి ఉందని నిర్ధారించండి. వెబ్ ఇంటర్ఫేస్లో కనిపించే విలువ డీమన్ దాన్ని పొందిందనడానికి సాక్ష్యం కాదు, ఎందుకంటే పేజీ నిల్వ చేసిన ఫీల్డ్లను చదువుతుంది. ప్యాచ్ కమాండ్ మరియు ఫర్మ్వేర్ వెర్షన్ను నిర్వహణ గమనికలలో రాయండి, తదుపరి నవీకరణ వాటిని ముందుకు తీసుకెళ్తుంది.
ఆపై క్లయింట్ను కనెక్ట్ చేసి పుష్ చేసిన ఎంపిక కోసం సర్వర్ లాగ్ను చదవండి. ఫారమ్లో మాత్రమే ఉన్న సెట్టింగ్ ఎవరూ పరీక్షించని సెట్టింగ్.