ಕ್ಲೈಂಟ್ ಹುಕ್ ಅಥವಾ ಸರ್ವರ್ ಹುಕ್? OpenVPN ಸ್ಕ್ರಿಪ್ಟ್ ಎಲ್ಲಿ ಚಲಿಸುತ್ತದೆ
ಸರ್ವರ್ ಕಾನ್ಫಿಗ್ನಲ್ಲಿ ಇರುವ ಸ್ಕ್ರಿಪ್ಟ್ ಪಾಥ್ ಸರ್ವರ್ನಲ್ಲಿನ ಪಾಥ್. ಕೆಲಸ ಮಾಡಬೇಕಾದ ಯಂತ್ರದ ಆಧಾರದ ಮೇಲೆ ಹುಕ್ ಆಯ್ಕೆಮಾಡಿ, ಮತ್ತು push ಲ್ಯಾಪ್ಟಾಪ್ನಲ್ಲಿ ಕೋಡ್ ಚಲಾಯಿಸುತ್ತದೆ ಎಂಬ ನಿರೀಕ್ಷೆ ಬಿಡಿ.
ಕೆಲಸ ಸ್ಪಷ್ಟವಾಗಿದೆ: ಲ್ಯಾಪ್ಟಾಪ್ ಸಂಪರ್ಕಗೊಂಡಾಗ ಲ್ಯಾಪ್ಟಾಪ್ನಲ್ಲಿ ಏನೋ ಬದಲಾಗಬೇಕು. ಸಂಪಾದಿಸುತ್ತಿರುವ ಕಾನ್ಫಿಗರೇಶನ್ ಸರ್ವರ್ಗೆ ಸೇರಿದ್ದು, ಮತ್ತು ಸರಿಯಾಗಿ ಅಲ್ಲಿಯೇ ಊಹೆ ಮುರಿಯುತ್ತದೆ. ಸರ್ವರ್ ಫೈಲ್ನಲ್ಲಿನ ಪಾಥ್ ಆ ಸರ್ವರ್ನಲ್ಲಿನ ಫೈಲ್ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಮತ್ತು ಎಷ್ಟೇ push ಮಾಡಿದರೂ ಯಾವ ಪ್ರಕ್ರಿಯೆ ಅದನ್ನು ಚಲಾಯಿಸುತ್ತದೆ ಎಂಬುದು ಬದಲಾಗುವುದಿಲ್ಲ. ಎರಡು ಹುಕ್ಗಳ ನಡುವಿನ ಆಯ್ಕೆ ಮುಖ್ಯವಾಗಿ ಕೆಲಸ ಯಾವ ಯಂತ್ರದ್ದು ಎಂದು ನಿರ್ಧರಿಸುವುದು ಮತ್ತು ಅದರಿಂದ ಬರುವ ಮಿತಿಗಳನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುವುದು.
ಎರಡು ಯಂತ್ರಗಳು, ಮೊದಲು ಉತ್ತರಿಸಬೇಕಾದ ಎರಡು ಪ್ರಶ್ನೆಗಳು
ಸ್ಥಿತಿ ಬದಲಾವಣೆ ಎಲ್ಲಿ ಆಗಬೇಕು ಎಂದು ಕೇಳಿ, ನಂತರ ಅದಕ್ಕೆ ಯಾವ ಘಟನೆ ಹೊಂದುತ್ತದೆ ಎಂದು ಕೇಳಿ. ಬದಲಾವಣೆಯು ಪ್ರತಿ-ಬಳಕೆದಾರ ಅಧಿಕಾರ ಅಥವಾ ಪ್ರತಿ-ಕ್ಲೈಂಟ್ ಕಾನ್ಫಿಗರೇಶನ್ ನಿರ್ಧಾರವಾಗಿದ್ದರೆ, ಬಳಕೆದಾರ ಡೈರೆಕ್ಟರಿ ತಿಳಿದಿರುವಲ್ಲಿಗೆ ಸೇರುತ್ತದೆ: ಸರ್ವರ್ಗೆ. ಬದಲಾವಣೆಯು ಮಾರ್ಗವಾಗಿದ್ದರೆ, resolver ಸೆಟ್ಟಿಂಗ್ ಅಥವಾ ಎಂಡ್ಪಾಯಿಂಟ್ನಲ್ಲಿನ ಸ್ಥಳೀಯ ಸಹಾಯಕವಾಗಿದ್ದರೆ, ಅದು ಎಂಡ್ಪಾಯಿಂಟ್ಗೆ ಸೇರುತ್ತದೆ, ಮತ್ತು ಎಂಡ್ಪಾಯಿಂಟ್ ಮಾತ್ರ ಅದನ್ನು ಮಾಡಬಲ್ಲದು.
ಈ ಎರಡು ಪ್ರಶ್ನೆಗಳಿಗೆ ವಿರುದ್ಧ ಕ್ರಮದಲ್ಲಿ ಉತ್ತರಿಸುವುದೇ ಜನರು Windows ಲ್ಯಾಪ್ಟಾಪ್ಗೆ ಬ್ಯಾಚ್ ಫೈಲ್ push ಮಾಡಲು ಪ್ರಯತ್ನಿಸುವ ಸ್ಥಿತಿಗೆ ತಲುಪುವ ದಾರಿ. ಸರ್ವರ್ಗೆ ಯಾರು ಸಂಪರ್ಕಿಸಿದರು ಎಂದು ತಿಳಿದಿದೆ; ಲ್ಯಾಪ್ಟಾಪ್ಗೆ ತನ್ನದೇ ನೆಟ್ವರ್ಕ್ ಸ್ಟ್ಯಾಕ್ ಹೇಗಿದೆ ಎಂದು ತಿಳಿದಿದೆ. ಎರಡರಲ್ಲಿ ಒಂದಕ್ಕೂ ಇನ್ನೊಂದರ ಮಾಹಿತಿ ಇಲ್ಲ, ಮತ್ತು ಪ್ರಯತ್ನ ಸಾಮಾನ್ಯವಾಗಿ ಸ್ಪಷ್ಟ ದೋಷದ ಬದಲು ಸದ್ದಿಲ್ಲದೆ ವಿಫಲವಾಗುತ್ತದೆ.
ಎರಡಕ್ಕೂ ಮೊದಲು ಮೂರನೇ ಪ್ರಶ್ನೆ ಕೇಳುವುದು ಯೋಗ್ಯ: ನೀವು ಬಯಸುವ ಹುಕ್ ಅನ್ನು ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಎಲ್ಲಾದರೂ ನೀಡುತ್ತದೆಯೇ? ತನ್ನದೇ ಕಾನ್ಫಿಗರೇಶನ್ ಉತ್ಪಾದಿಸುವ ಸಾಧನವು ಅದೇ ಘಟನೆ ಹೆಸರುಗಳನ್ನು ನೀಡದಿರಬಹುದು, ಮತ್ತು .ovpn ಫೈಲ್ ಆಮದು ಮಾಡುವ ಡೆಸ್ಕ್ಟಾಪ್ ಕ್ಲೈಂಟ್ ಫೈಲ್ ಬರೆಯಲಾದ ಕ್ಲೈಂಟೇ ಆಗಿರಬೇಕೆಂದಿಲ್ಲ. ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಅನ್ನು ಮೊದಲು ಖಚಿತಪಡಿಸುವುದು ಅಲ್ಲಿ ಇಲ್ಲದ ಹುಕ್ ಸುತ್ತ ವಿನ್ಯಾಸ ಮಾಡುವುದನ್ನು ತಪ್ಪಿಸುತ್ತದೆ. ನಿಮ್ಮ ಮುಂದಿರುವ ಯಂತ್ರಕ್ಕೆ ಯಾವ ದಾಖಲೆ ನಿಜವಾಗಿ ಅನ್ವಯವಾಗುತ್ತದೆ ಎಂಬುದನ್ನೂ ಅದು ಹೇಳುತ್ತದೆ.
ಸರ್ವರ್ ಕಡೆಯ ಆಯ್ಕೆ: ಪ್ರತಿ ಸಂಪರ್ಕಕ್ಕೆ ಒಂದು ಘಟನೆ
client-connect ಸ್ಕ್ರಿಪ್ಟ್ ದೃಢೀಕೃತ ಕ್ಲೈಂಟ್ ಸಂಪರ್ಕಿಸಿದಾಗ ಸರ್ವರ್ನ ಪ್ರಕ್ರಿಯೆ ಸಂದರ್ಭದಲ್ಲಿ ಚಲಿಸುತ್ತದೆ, ಮತ್ತು common name ಹಾಗೂ ನಿಗದಿಪಡಿಸಿದ ವಿಳಾಸದಂತಹ ದಾಖಲಿತ ಸಂಪರ್ಕ ವಿವರಗಳನ್ನು ಪಡೆಯುತ್ತದೆ. ಪ್ರತಿ-ಕ್ಲೈಂಟ್ ಕಾನ್ಫಿಗರೇಶನ್ ತುಣುಕು ಬರೆಯಲು, ನೀತಿ ನಿರ್ಧಾರ ಜಾರಿಗೊಳಿಸಲು ಅಥವಾ ಸರ್ವರ್ ಒಡೆತನದ ಸ್ಥಿತಿ ದಾಖಲಿಸಲು ಇದು ಸರಿಯಾದ ಸ್ಥಳ.
ಜನರು ತಪ್ಪಿಸಿಕೊಳ್ಳುವ ವ್ಯತ್ಯಾಸವೆಂದರೆ ಆ ಹುಕ್ ಮತ್ತು ಸರ್ವರ್ನ up ಹುಕ್ ನಡುವಿನ ವ್ಯತ್ಯಾಸ. ಸರ್ವರ್ ತನ್ನ ಟನೆಲ್ ಸಾಧನ ತೆರೆದಾಗ up ಹುಕ್ ಪ್ರಚೋದನೆಗೊಳ್ಳುತ್ತದೆ, ಇದು ಬಹು-ಕ್ಲೈಂಟ್ ಸರ್ವರ್ನಲ್ಲಿ ಡೀಮನ್ ಪ್ರಾರಂಭದಲ್ಲಿ ಒಮ್ಮೆ ಸಂಭವಿಸುತ್ತದೆ. ಇದು ಪ್ರತಿ-ಲಾಗಿನ್ ಘಟನೆ ಅಲ್ಲ, ಮತ್ತು ಅಲ್ಲಿ ಇಡುವ ಕೋಡ್ ಬಳಕೆದಾರರು ಸಂಪರ್ಕಿಸಿದಾಗ ಅಲ್ಲ, ಸೇವೆ ಪ್ರಾರಂಭವಾದಾಗ ಚಲಿಸುತ್ತದೆ.
ವೆಬ್ ಇಂಟರ್ಫೇಸ್ ಇರುವ ಸಾಧನದಲ್ಲಿ, ಉತ್ಪಾದಿತ ಡೀಮನ್ ಫೈಲ್ಗಳನ್ನು ಸಂಪಾದಿಸುವ ಬದಲು ಬೆಂಬಲಿತ ವಿಸ್ತರಣೆ ಕಾರ್ಯವಿಧಾನ ಬಳಸಿ. ಉತ್ಪಾದಿತ ಫೈಲ್ಗಳು ಮುಂದಿನ ಉಳಿಸುವಿಕೆಯಲ್ಲಿ ಮತ್ತೆ ಬರೆಯಲಾಗುತ್ತವೆ, ಮತ್ತು ಆ ಮರುಬರವಣಿಗೆ ನಿಮ್ಮ ಬದಲಾವಣೆಯನ್ನು ಅತ್ಯಂತ ಕೆಟ್ಟ ಕ್ಷಣದಲ್ಲಿ ಸದ್ದಿಲ್ಲದೆ ತೆಗೆದುಹಾಕುತ್ತದೆ. ವಿಸ್ತರಣೆ ಪಠ್ಯದ ಪ್ರತಿಯನ್ನು ಸಾಧನದ ಹೊರಗೆ ಇಡಿ, ಇದರಿಂದ ಫರ್ಮ್ವೇರ್ ನವೀಕರಣವೂ ಉದ್ದೇಶ ಕಳೆದುಕೊಳ್ಳದು.
ಕ್ಲೈಂಟ್ ಕಡೆಯ ಆಯ್ಕೆ: ಸ್ಥಳೀಯವಾಗಿ ಚಲಿಸಬೇಕಾದ ಕೆಲಸ
ಸಮುದಾಯ ಕ್ಲೈಂಟ್ ಟನೆಲ್ ಸಾಧನ ಮೇಲೆ ಬಂದಾಗ ಮತ್ತು ಮತ್ತೆ ಮಾರ್ಗಗಳು ಸ್ಥಾಪನೆಯಾದಾಗ ಸ್ಥಳೀಯ ಸ್ಕ್ರಿಪ್ಟ್ ಚಲಾಯಿಸಬಹುದು. ಇವು ಎರಡು ವಿಭಿನ್ನ ಕ್ಷಣಗಳು, ಮತ್ತು ತಪ್ಪಾದದನ್ನು ಆಯ್ಕೆ ಮಾಡಿದರೆ ಸಹಾಯಕವು ಅವಲಂಬಿಸಿರುವ ಮಾರ್ಗ ಇರುವ ಮೊದಲೇ ಪ್ರಾರಂಭವಾಗುವ ಸಾಂಪ್ರದಾಯಿಕ ರೇಸ್ ಉಂಟಾಗುತ್ತದೆ.
ಸಹಾಯಕವು ಆ ಕ್ಲೈಂಟ್ನಲ್ಲಿ ಇರಬೇಕು, ಕ್ಲೈಂಟ್ ಚಲಾಯಿಸುವ ಖಾತೆಗೆ ಓದಲು ಮತ್ತು ಚಲಾಯಿಸಲು ಸಾಧ್ಯವಾಗಬೇಕು, ಮತ್ತು ಸ್ಪಷ್ಟ script-security ಸೆಟ್ಟಿಂಗ್ನಿಂದ ಅನುಮತಿಸಲ್ಪಡಬೇಕು. ನೀವು ಕ್ಲೈಂಟ್ ಅನ್ನು ನಿರ್ವಾಹಕರಾಗಿ ಪ್ರಾರಂಭಿಸಿದಾಗ ಕೆಲಸ ಮಾಡುವ ಸ್ಕ್ರಿಪ್ಟ್, ಲಾಗಿನ್ಗೆ ಮೊದಲಿನ ಸೇವೆ ಅಥವಾ ಇನ್ನೊಬ್ಬ ಬಳಕೆದಾರರ ಅವಧಿಯ ಬಗ್ಗೆ ಏನನ್ನೂ ಹೇಳುವುದಿಲ್ಲ.
ಹೆಸರಿಸುವಿಕೆಯೂ ಮುಖ್ಯ. up ಹುಕ್ ಸಾಧನ ರಚನೆಗೆ ಮತ್ತು route-up ಮಾರ್ಗ ಸ್ಥಾಪನೆಗೆ ಹೊಂದುತ್ತದೆ, ಆದರೆ ಖಾಸಗಿ ನೆಟ್ವರ್ಕ್ ತಲುಪಲು ಸಾಧ್ಯವಾಗಬೇಕಾದ ಕೆಲಸವು, ಸಾಧನ ರಚನೆ ಎಂದರೆ ಪ್ರತಿ ಮಾರ್ಗ, resolver ನಮೂದು ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಸಿದ್ಧ ಎಂದು ಊಹಿಸುವ ಬದಲು ತಲುಪುವಿಕೆಯನ್ನು ಪರಿಶೀಲಿಸಬೇಕು.
ಚಲಾಯಿಸಬಹುದಾದ ಕೋಡ್ push ಮಾಡುವುದು ಆಯ್ಕೆಗಳಲ್ಲಿ ಏಕೆ ಇಲ್ಲ
push ಮಾಡಿದ ಆಯ್ಕೆಗಳು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಸೀಮಿತಗೊಳಿಸಲಾಗಿದೆ, ಮತ್ತು ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಚಲಾಯಿಸುವ ಆಯ್ಕೆಗಳು ಸರ್ವರ್ ಕಳುಹಿಸಲು ಅನುಮತಿಸದ ವರ್ಗಗಳಲ್ಲಿವೆ. ಆ ಮಿತಿ ಇರುವುದು ಏಕೆಂದರೆ ಪರ್ಯಾಯವು ರಾಜಿ ಆದ ಅಥವಾ ತಪ್ಪಾಗಿ ಕಾನ್ಫಿಗರ್ ಆದ ಸರ್ವರ್ಗೆ ಯಾವಾಗಲಾದರೂ ಸಂಪರ್ಕಿಸುವ ಪ್ರತಿ ಕ್ಲೈಂಟ್ನಲ್ಲಿ ಅನಿಯಂತ್ರಿತ ಆಜ್ಞೆಗಳನ್ನು ಚಲಾಯಿಸಲು ಅವಕಾಶ ನೀಡುತ್ತಿತ್ತು.
ಸ್ಥಳೀಯವಾಗಿ ಸ್ಕ್ರಿಪ್ಟ್ ಚಲಾಯಿಸುವಿಕೆ ಸಕ್ರಿಯಗೊಳಿಸುವುದು ಅದನ್ನು ಬದಲಿಸುವುದಿಲ್ಲ. ನಿಮ್ಮ script-security ಸೆಟ್ಟಿಂಗ್ ನೀವು ಆಯ್ಕೆ ಮಾಡಿದ ಸ್ಥಳೀಯ ಸ್ಕ್ರಿಪ್ಟ್ಗಳಿಗೆ ಅನುಮತಿ ನೀಡುತ್ತದೆ; ಅದು ಸರ್ವರ್ಗೆ ಹೊಸದನ್ನು ಪೂರೈಸುವ ಅಧಿಕಾರ ನೀಡುವುದಿಲ್ಲ.
ಗುರಿ ಕೇವಲ VPN ಮಾರ್ಗಗಳನ್ನು ಸ್ಥಾಪಿಸುವುದಾದರೆ, ದೂರದ ಚಲಾವಣೆ ಯೋಜನೆ ಕಲ್ಪಿಸುವ ಬದಲು ಬೆಂಬಲಿತ ಮಾರ್ಗ ಕಾನ್ಫಿಗರೇಶನ್ ಬಳಸಿ. ಗುರಿಗೆ ನಿಜವಾಗಿ ಸ್ಥಳೀಯ ಕೋಡ್ ಬೇಕಾದರೆ, ಸಂಸ್ಥೆಯ ಎಂಡ್ಪಾಯಿಂಟ್ ನಿರ್ವಹಣಾ ಪರಿಕರಗಳ ಮೂಲಕ ಅದನ್ನು ವಿತರಿಸಿ ಮತ್ತು ಬಳಕೆದಾರರ ವಿಶೇಷಾಧಿಕಾರಗಳೊಂದಿಗೆ ಚಲಿಸುವ ಇತರ ಯಾವುದೇ ತಂತ್ರಾಂಶದಂತೆ ಅದನ್ನು ಪರಿಶೀಲಿಸಿ.
ಎರಡೂ ಹುಕ್ಗಳಲ್ಲಿ ಯಾವುದನ್ನೂ ನಂಬುವ ಮೊದಲು ಏನನ್ನು ಪರಿಶೀಲಿಸಬೇಕು
ಪ್ರತಿ ಹುಕ್ಗೆ ನಾಲ್ಕು ವಿಷಯಗಳನ್ನು ಬರೆಯಿರಿ: ಯಂತ್ರ, ಘಟನೆಯ ಹೆಸರು, ಅದು ಚಲಿಸುವ ಖಾತೆ, ಮತ್ತು ಅದು ಉತ್ಪಾದಿಸಬೇಕಾದ ಸ್ಥಿತಿ ಬದಲಾವಣೆ. ನಂತರ ಸಂಪರ್ಕ, ಮರುಸಂಪರ್ಕ ಮತ್ತು ಸ್ವಚ್ಛಗೊಳಿಸುವ ಹಾದಿಯನ್ನು ಪರೀಕ್ಷಿಸಿ, ಏಕೆಂದರೆ ಮರುಸಂಪರ್ಕದಲ್ಲಿ ಸ್ಥಿತಿ ಸೋರುವ ಹುಕ್ ಎಂದೂ ಚಲಿಸದ ಹುಕ್ಗಿಂತ ಕೆಟ್ಟದು.
ನಿಜವಾಗಿ ಅದನ್ನು ಚಲಾಯಿಸುವ ಖಾತೆಯ ಅಡಿಯಲ್ಲಿ, ನಿಜವಾಗಿ ಚಲಿಸುವ ಕ್ಷಣದಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ. openvpn(8) ಕೈಪಿಡಿ ಎರಡೂ ಹುಕ್ ಕುಟುಂಬಗಳು ಮತ್ತು push ಮಿತಿಗಳನ್ನು ದಾಖಲಿಸುತ್ತದೆ; ನೀವು ನಿಯೋಜಿಸುವ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಅವುಗಳನ್ನು ಎಲ್ಲಾದರೂ ಒದಗಿಸುತ್ತದೆಯೇ ಎಂದು ದಾಖಲಿಸುತ್ತದೆ. ಸಂವಾದಾತ್ಮಕ ನಿರ್ವಾಹಕ ಟರ್ಮಿನಲ್ನಲ್ಲಿ ಯಶಸ್ವಿಯಾಗುವ ಸ್ಕ್ರಿಪ್ಟ್ ಒಂದು ಊಹೆ, ಪರಿಶೀಲನೆ ಅಲ್ಲ.