NetworkManager ನಲ್ಲಿ ಕಾಣೆಯಾದ VPN ರೂಟ್: ಪ್ರೊಫೈಲ್ ನೀತಿ ಅಥವಾ ಸ್ಕ್ರಿಪ್ಟ್?
ಟನೆಲ್ ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಒಂದು ಪ್ರಿಫಿಕ್ಸ್ ಎಂದಿಗೂ ಕಾಣಿಸುವುದಿಲ್ಲ. ಸಹಾಯಕ ಸ್ಕ್ರಿಪ್ಟ್ ಸೇರಿಸುವ ಮೊದಲು ಪ್ರೊಫೈಲ್ ನೀತಿ, ಪ್ಲಗಿನ್ ಡೇಟಾ ಮತ್ತು ಎರಡನೇ ರೂಟ್ ಮಾಲೀಕರ ನಡುವೆ ನಿರ್ಧರಿಸಿ.
ನೀವು ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತೀರಿ, ಟನೆಲ್ ಇಂಟರ್ಫೇಸ್ ಕಾಣಿಸುತ್ತದೆ, ಮತ್ತು ನಿಮಗೆ ಬೇಕಾದ ಒಂದು ಪ್ರಿಫಿಕ್ಸ್ ಟೇಬಲ್ನಲ್ಲಿ ಇಲ್ಲ. ಮುಂದಿನ ಹೆಜ್ಜೆ ಸಾಮಾನ್ಯವಾಗಿ ಅದನ್ನು ಸೇರಿಸುವ ಸ್ಕ್ರಿಪ್ಟ್ನ ಹುಡುಕಾಟ. ಆ ಹುಡುಕಾಟವು ಪ್ರೊಫೈಲ್ಗೆ OpenVPN ಸಹಾಯಕವನ್ನು ಅಂಟಿಸುವ ಉತ್ತರಗಳಿಗೆ ತಲುಪುತ್ತದೆ, ಮತ್ತು ಆ ಉತ್ತರಗಳಲ್ಲಿ ಅರ್ಧದಷ್ಟು ಪರಿಸ್ಥಿತಿಯನ್ನು ಸುಧಾರಿಸುವ ಬದಲು ಹದಗೆಡಿಸುತ್ತವೆ, ಏಕೆಂದರೆ ಕಾಣೆಯಾದ ರೂಟ್ಗೆ ಮೂರು ಸಂಭಾವ್ಯ ಮಾಲೀಕರಿದ್ದಾರೆ ಮತ್ತು ಅವರಲ್ಲಿ ಒಬ್ಬರು ಮಾತ್ರ ಕಾಣೆಯಾದ ಸ್ಕ್ರಿಪ್ಟ್.
ಏನನ್ನಾದರೂ ಬರೆಯುವ ಮೊದಲು ಯಾವ ಮಾಲೀಕರು ಜವಾಬ್ದಾರರು ಎಂದು ನಿರ್ಧರಿಸಿ.
ಮೂರು ಮಾಲೀಕರು, ಒಂದು ಕಾಣೆಯಾದ ಪ್ರಿಫಿಕ್ಸ್
ಯಾರೂ ಅದನ್ನು ಒದಗಿಸದ ಕಾರಣ, ಪ್ರೊಫೈಲ್ ಅದನ್ನು ನಿರಾಕರಿಸಿದ ಕಾರಣ, ಅಥವಾ ನೀವು ನೋಡದ ಸ್ಥಳದಲ್ಲಿ ಅದು ಸ್ಥಾಪನೆಯಾದ ಕಾರಣ ಪ್ರಿಫಿಕ್ಸ್ ಇಲ್ಲದಿರಬಹುದು. ಇವು ಬೇರೆ ಬೇರೆ ದೋಷಗಳು ಮತ್ತು ಅವುಗಳಿಗೆ ಬೇರೆ ಬೇರೆ ಪರಿಹಾರಗಳಿವೆ.
ಮೊದಲನೆಯದನ್ನು ಪರಿಶೀಲಿಸುವುದು ಸುಲಭ: ಸರ್ವರ್ ಅಥವಾ ಪ್ಲಗಿನ್ ಎಂದಾದರೂ ರೂಟ್ ಅನ್ನು ನೀಡಿದೆಯೇ? ಪ್ರಿಫಿಕ್ಸ್ ಸಿಗದ ಬ್ಯಾಕೆಂಡ್ ಅದನ್ನು ಸ್ಥಾಪಿಸಲಾರದು, ಮತ್ತು ಸಹಾಯಕ ಸ್ಕ್ರಿಪ್ಟ್ ಸಹಚರ ಎಂದೂ ವಿವರಿಸದ ತಲುಪುವಿಕೆಯನ್ನು ಕಲ್ಪಿಸಲಾರದು. ಎರಡನೆಯದು ಪ್ರೊಫೈಲ್ ನೀತಿ, ಅದು ಸಂಪರ್ಕವು ಇಲ್ಲದಿದ್ದರೆ ತೆಗೆದುಕೊಳ್ಳುತ್ತಿದ್ದ ರೂಟ್ಗಳನ್ನು ನಿಗ್ರಹಿಸಬಹುದು. ಮೂರನೆಯದು ಟೇಬಲ್ ಅಥವಾ ನಿಯಮ, ಅದು ಡಿಫಾಲ್ಟ್ ಲುಕಪ್ ಎಂದೂ ನೋಡದ ಸ್ಥಳದಲ್ಲಿ ರೂಟ್ ಅನ್ನು ಇರಿಸಬಹುದು.
ನಾಲ್ಕನೆಯ ಮಾಲೀಕರು ನೀವೇ, ನಂತರ: ಸಂಪರ್ಕದ ಸಮಯದಲ್ಲಿ ರೂಟ್ ಸೇರಿಸುವ ಆದರೆ ಸಂಪರ್ಕ ಕಡಿತದ ಸಮಯದಲ್ಲಿ ಅದನ್ನು ತೆಗೆಯದ ಸ್ಕ್ರಿಪ್ಟ್. ಇದು ಟನೆಲ್ಗಿಂತ ಹೆಚ್ಚು ಕಾಲ ಬದುಕುವ, ಸತ್ತ ಇಂಟರ್ಫೇಸ್ ಕಡೆ ತೋರಿಸುವ, ಮತ್ತು ಯಂತ್ರವನ್ನು ಡೀಬಗ್ ಮಾಡುವ ಮುಂದಿನ ವ್ಯಕ್ತಿಯನ್ನು ಗೊಂದಲಗೊಳಿಸುವ ಪ್ರಿಫಿಕ್ಸ್ ಅನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ.
ಏನನ್ನಾದರೂ ಸೇರಿಸುವ ಮೊದಲು ಪ್ರೊಫೈಲ್ ಓದಿ
ಉಳಿಸಿದ ಸಂಪರ್ಕದ ಸ್ವಂತ ಗುಣಲಕ್ಷಣಗಳಿಂದ ಪ್ರಾರಂಭಿಸಿ. ರಹಸ್ಯಗಳನ್ನು ಸುರಿಯದೆ ಅವುಗಳನ್ನು ಓದಿ, ಮತ್ತು ಪ್ರೊಫೈಲ್ ಹೆಸರು ಅಸ್ಪಷ್ಟವಾಗಿದ್ದರೆ UUID ಬಳಸಿ.
nmcli -f vpn.service-type,ipv4.never-default,ipv4.ignore-auto-routes,ipv4.route-table,ipv4.routes connection show office
vpn.service-type ನಿಮಗೆ ಯಾವ ಬ್ಯಾಕೆಂಡ್ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆ ಎಂದು ಹೇಳುತ್ತದೆ, ಮತ್ತು ಇದು ಮುಖ್ಯ ಏಕೆಂದರೆ ಪ್ಲಗಿನ್ ಡೇಟಾ ಬ್ಯಾಕೆಂಡ್ಗೆ ನಿರ್ದಿಷ್ಟವಾಗಿದೆ. ಒಂದು ಪ್ಲಗಿನ್ ಸ್ವೀಕರಿಸುವ ಕೀ ಇನ್ನೊಂದಕ್ಕೆ ಬೆಂಬಲಿತ ಸೂಚನೆ ಅಲ್ಲ, ಆದ್ದರಿಂದ ಬೇರೆ ಕ್ಲೈಂಟ್ನ ದಾಖಲೆಗಳಿಂದ ನಕಲಿಸಿದ ತುಣುಕು ಯಾವುದಕ್ಕೂ ಸಾಕ್ಷಿಯಲ್ಲ.
ipv4.ignore-auto-routes ಮತ್ತು ipv4.never-default ಬೇರೆ ಬೇರೆ ಪ್ರಶ್ನೆಗಳಿಗೆ ಉತ್ತರಿಸುತ್ತವೆ. ಮೊದಲನೆಯದು ಸಂಪರ್ಕವು ಇಲ್ಲದಿದ್ದರೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತಿದ್ದ ರೂಟ್ಗಳನ್ನು ನಿರಾಕರಿಸಬಹುದು, ಮತ್ತು ಎರಡನೆಯದು ಪ್ರೊಫೈಲ್ ಡಿಫಾಲ್ಟ್ ರೂಟ್ ಆಗಬಹುದೇ ಎಂದು ನಿಯಂತ್ರಿಸುತ್ತದೆ. ಸ್ವಯಂಚಾಲಿತ ರೂಟ್ಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ ಬೇರೆ ಯಾವುದನ್ನೂ ಅವಲಂಬಿಸದ ಪ್ರೊಫೈಲ್ ಸ್ವಚ್ಛವಾಗಿ ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಬಹುತೇಕ ಏನನ್ನೂ ಸ್ಥಾಪಿಸುವುದಿಲ್ಲ.
ip -4 rule show
ip -4 route show table all
ಈ ಎರಡು ಆದೇಶಗಳು ಮೂರನೆಯ ಸಾಧ್ಯತೆಯನ್ನು ನಿರ್ಣಯಿಸುತ್ತವೆ. ನಿಮ್ಮ ಪ್ರಿಫಿಕ್ಸ್ ಅನ್ನು main ನಲ್ಲಿ ಮಾತ್ರವಲ್ಲ, ಪ್ರತಿ ಟೇಬಲ್ನಲ್ಲೂ ಹುಡುಕಿ, ಮತ್ತು ನೀತಿ ನಿಯಮವು ಸಂಬಂಧಿತ ಲುಕಪ್ ಅನ್ನು ಬೇರೆಡೆಗೆ ಕಳುಹಿಸುತ್ತದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸಿ. ಪ್ರಿಫಿಕ್ಸ್ ಬೇರೆ ಟೇಬಲ್ನಲ್ಲಿದ್ದು ಯಾವುದೂ ಅದನ್ನು ನೋಡದಿದ್ದರೆ, ನಿಮ್ಮಲ್ಲಿ ಕಾಣೆಯಾದ ರೂಟ್ ಇಲ್ಲ; ಅದನ್ನು ಎಂದೂ ತಲುಪದ ಲುಕಪ್ ಇದೆ.
ಸ್ಕ್ರಿಪ್ಟ್ ಸರಿಪಡಿಸಲಾಗದ್ದು
ಸಹಾಯಕ ಸ್ಕ್ರಿಪ್ಟ್ ಸೇರಿಸುವುದು NetworkManager ನ vpn.data ಗೆ ಚಲಾಯಿಸಲು ಪ್ರೋಗ್ರಾಂ ನೀಡುತ್ತದೆ. ಇದು ನಿಜವಾದ ಕಾರ್ಯವಿಧಾನ, ಮತ್ತು ಈ ಹೆಚ್ಚಿನ ಸಂದರ್ಭಗಳಿಗೆ ಇದು ತಪ್ಪಾದದ್ದು, ಏಕೆಂದರೆ ಸ್ಕ್ರಿಪ್ಟ್ ನಿಯಂತ್ರಣವನ್ನು ಪಡೆಯುವುದು ಪ್ರೊಫೈಲ್ನ ಸ್ವಂತ ನೀತಿ ಏನನ್ನು ಸ್ವೀಕರಿಸಬೇಕೆಂದು ಈಗಾಗಲೇ ನಿರ್ಧರಿಸಿದ ನಂತರ.
OpenVPN ನ script-security ಇನ್ನೊಂದು ಪುನರಾವರ್ತಿತ ಗೊಂದಲ. ಇದು ಕ್ಲೈಂಟ್ ಯಾವ ಸ್ಕ್ರಿಪ್ಟ್ಗಳನ್ನು ಚಲಾಯಿಸಬಹುದು ಮತ್ತು ಅವುಗಳ ಪರಿಸರದಲ್ಲಿ ಏನನ್ನು ಇಡಬಹುದು ಎಂಬುದನ್ನು ನಿಯಂತ್ರಿಸುವ OpenVPN ಸೆಟ್ಟಿಂಗ್; ಮಟ್ಟ 3 ಪರಿಸರದ ಮೂಲಕ ರುಜುವಾತುಗಳನ್ನು ರವಾನಿಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದು ರೂಟಿಂಗ್ ಸರಿಪಡಿಸುವಿಕೆಯಲ್ಲ ಬದಲು ರಹಸ್ಯಗಳ ನಿರ್ವಹಣೆಯ ನಿರ್ಧಾರ. OpenVPN ಅಲ್ಲದ ಬ್ಯಾಕೆಂಡ್ ಇರುವ ಪ್ರೊಫೈಲ್ಗೆ ಅದನ್ನು ಅಂಟಿಸುವುದು, ಅಥವಾ ಯಾವ ಸ್ಕ್ರಿಪ್ಟ್ಗೂ ಅದರ ಅಗತ್ಯವಿಲ್ಲದಿದ್ದಾಗ ಅದನ್ನು ಹೆಚ್ಚಿಸುವುದು, ರೂಟ್ ಸೇರಿಸದೆ ಒಡ್ಡಿಕೆಯನ್ನು ಸೇರಿಸುತ್ತದೆ.
ನಂತರ ಮರುಪ್ರಾರಂಭದ ಪ್ರತಿಕ್ರಿಯೆ ಇದೆ. NetworkManager ಸೇವೆಯನ್ನು ಮರುಪ್ರಾರಂಭಿಸುವುದು ಪ್ರತಿ ನಿರ್ವಹಿತ ಲಿಂಕ್ ಅನ್ನು ಒಡೆದು ಮತ್ತೆ ನಿರ್ಮಿಸುತ್ತದೆ, ನೀವು ದೂರದಿಂದ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದರೆ ನೀವು ಸಂಪರ್ಕಗೊಂಡಿರುವ ಲಿಂಕ್ ಸಹ ಸೇರಿದಂತೆ. ಇದು ಅಡ್ಡಿಪಡಿಸುವ ಕ್ರಿಯೆ, ನಿರುಪದ್ರವ ರೋಗನಿರ್ಣಯವಲ್ಲ, ಮತ್ತು ಸರ್ವರ್ನಲ್ಲಿ ಇದು ಬದುಕುಳಿಯುವ ಸೆಷನ್ ಮತ್ತು ಬದುಕದಿರುವ ಸೆಷನ್ ನಡುವಿನ ವ್ಯತ್ಯಾಸವಾಗಬಹುದು.
ನಿರ್ಧಾರ, ಕ್ರಮದಲ್ಲಿ
ಕ್ರಮವಾಗಿ ಮೂರು ಪ್ರಶ್ನೆಗಳನ್ನು ಕೇಳಿ. ಸಹಚರ ಪ್ರಿಫಿಕ್ಸ್ ಒದಗಿಸಿದೆಯೇ, ಅದನ್ನು ಬ್ಯಾಕೆಂಡ್ನ ಲಾಗ್ ಅಥವಾ ಅದರ ಸ್ವಂತ ಸ್ಥಿತಿ ಔಟ್ಪುಟ್ ತೋರಿಸುತ್ತದೆ. ಹೌದಾದರೆ, ಪ್ರೊಫೈಲ್ ರೂಟ್ಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಮತ್ತು ಸ್ಥಾಪಿಸಲು ಸಂರಚಿಸಲಾಗಿದೆಯೇ, ಅಥವಾ ಅವುಗಳನ್ನು ನಿಗ್ರಹಿಸುತ್ತಿದೆಯೇ? ರೂಟ್ ಎಲ್ಲಿಯಾದರೂ ಇದ್ದರೆ, ನೀವು ಪರೀಕ್ಷಿಸುತ್ತಿರುವ ಟ್ರಾಫಿಕ್ಗೆ ಲುಕಪ್ ಮಾರ್ಗ ಸರಿಯಾಗಿದೆಯೇ?
ಮೊದಲ ಉತ್ತರ ಹೌದು, ಎರಡನೆಯದು ಹೌದು ಮತ್ತು ಮೂರನೆಯದು ಸರಿಯಾದಾಗ ಮಾತ್ರ ಪೂರಕ ಸ್ಕ್ರಿಪ್ಟ್ ಸಮರ್ಥನೀಯವಾಗುತ್ತದೆ, ಮತ್ತು ಆಗಲೂ ಬ್ಯಾಕೆಂಡ್ ರೂಟ್ ಅನ್ನು ಸ್ಥಳೀಯವಾಗಿ ಬೆಂಬಲಿಸುತ್ತದೆಯೇ ಎಂದು ಕೇಳಬೇಕು. VPN ಸೆಟ್ಟಿಂಗ್ಗಳ ಉಲ್ಲೇಖ service-type ಮತ್ತು ಪ್ಲಗಿನ್-ನಿರ್ದಿಷ್ಟ ಡೇಟಾ ನಿಘಂಟನ್ನು ದಾಖಲಿಸುತ್ತದೆ, ಮತ್ತು ಕೀ ಇದೆ ಎಂದು ಊಹಿಸುವ ಮೊದಲು ಅಲ್ಲಿಂದಲೇ ಪ್ರಾರಂಭಿಸಬೇಕು.
ಅನುಮೋದಿತ ತಿದ್ದುಪಡಿಯ ನಂತರ, ಮತ್ತೆ ಸಂಪರ್ಕಗೊಳ್ಳಿ ಮತ್ತು ಗಮ್ಯಸ್ಥಾನವನ್ನು ವಿಳಾಸದಿಂದ ನಂತರ ಹೆಸರಿನಿಂದ ಪರೀಕ್ಷಿಸಿ, ನಂತರ ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಿ ಮತ್ತೆ ಸಂಪರ್ಕಗೊಳ್ಳಿ ಸ್ಥಿತಿ ಪುನರಾವರ್ತನೀಯ ಎಂದು ದೃಢೀಕರಿಸಲು. ಒಬ್ಬ ಮಾಲೀಕ, ಒಂದು ಟೇಬಲ್, ಮತ್ತು ಟನೆಲ್ನೊಂದಿಗೆ ಮಾಯವಾಗುವ ರೂಟ್ — ಅದೇ ಅಪೇಕ್ಷಿತ ಫಲಿತಾಂಶ.