TLS ದೋಷದ ನಂತರ OpenVPN ಮತ್ತೆ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸುತ್ತದೆ: ಅದನ್ನು ನಿಲ್ಲಿಸುವುದು ಹೇಗೆ
TLS ವೈಫಲ್ಯವನ್ನು ಡಿಫಾಲ್ಟ್ ಆಗಿ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಲಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಕ್ಲೈಂಟ್ ಸುತ್ತುತ್ತದೆ ಮತ್ತು ಮೊದಲ ದೋಷ ದೃಷ್ಟಿಯಿಂದ ಮರೆಯಾಗುತ್ತದೆ. tls-exit ಅದನ್ನು ಹೊರಬರಲು ಒತ್ತಾಯಿಸುತ್ತದೆ; ಅದನ್ನು ಯಾವುದು ಮರುಪ್ರಾರಂಭಿಸುತ್ತದೆ ಎಂದು ಪರಿಶೀಲಿಸಿ.
ಕ್ಲೈಂಟ್ ಸಂಪರ್ಕಗೊಳ್ಳುತ್ತದೆ, TLS ಮಾತುಕತೆಯ ಸಮಯದಲ್ಲಿ ವಿಫಲವಾಗುತ್ತದೆ, ಕಾಯುತ್ತದೆ ಮತ್ತು ಅದೇ ಫಲಿತಾಂಶದೊಂದಿಗೆ ಅದೇ ಸರ್ವರ್ ಅನ್ನು ಮತ್ತೆ ಪ್ರಯತ್ನಿಸುತ್ತದೆ. ವಿಫಲವಾದ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮರುಪ್ರಾರಂಭಿಸುವ ಮೇಲ್ವಿಚಾರಕರ ಅಡಿಯಲ್ಲಿ, ಆ ಪ್ರಯತ್ನಗಳು ಜರ್ನಲ್ನಲ್ಲಿ ಅಂತ್ಯವಿಲ್ಲದ ಲೂಪ್ ಆಗುತ್ತವೆ, ಮತ್ತು ಮೊದಲ ರೋಗನಿರ್ಣಯದ ಸಾಲು ಕೈಗೆಟುಕದಂತೆ ಹೋಗುತ್ತದೆ. OpenVPN ಆ ಮಾತುಕತೆ ವೈಫಲ್ಯವನ್ನು ಇನ್ನೊಂದು ಪ್ರಯತ್ನದ ಬದಲು ಗೋಚರ ನಿರ್ಗಮನವಾಗಿ ಪರಿವರ್ತಿಸುವ ಆಯ್ಕೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದು ರೋಗನಿರ್ಣಯ ಮತ್ತು ಮೇಲ್ವಿಚಾರಣೆಯ ಸೆಟ್ಟಿಂಗ್, ದುರಸ್ತಿ ಅಲ್ಲ, ಆದ್ದರಿಂದ ಪ್ರಕ್ರಿಯೆಯನ್ನು ನಿಜವಾಗಿ ಕೆಳಗೆ ಉಳಿಯಲು ಬಿಡುವ ನೀತಿಯೊಂದಿಗೆ ಜೋಡಿಸಿ.
ಮೊದಲ ದೋಷವನ್ನು ಮರೆಮಾಡುವ ಚಕ್ರ
ನೀವು ನೋಡುವುದು ಒಂದು ವೈಫಲ್ಯವಲ್ಲ, ಪುನರಾವರ್ತಿತ ಬ್ಲಾಕ್: ಸಂಪರ್ಕ ಪ್ರಯತ್ನ, TLS ದೋಷ, ವಿರಾಮ ಮತ್ತು ನಂತರ ಅದೇ ಕ್ರಮ. ಪ್ರತಿ ಪುನರಾವರ್ತನೆ ಮೂಲ ಸಾಲನ್ನು ಜರ್ನಲ್ನಲ್ಲಿ ಇನ್ನಷ್ಟು ಮೇಲಕ್ಕೆ ತಳ್ಳುತ್ತದೆ. ಘಟಕವು ವೈಫಲ್ಯದಲ್ಲಿ ಮರುಪ್ರಾರಂಭವಾದರೆ, ಯಾರೂ ಕಾರಣವನ್ನು ಓದದೆ ಚಕ್ರವು ಗಂಟೆಗಳ ಕಾಲ ಮುಂದುವರಿಯಬಹುದು. ರೋಗಲಕ್ಷಣ ಲೂಪ್ ಆಗಿದೆ, ಆದರೂ ಮೂಲ ದೋಷ ಒಂದೇ ಮಾತುಕತೆ ಸಮಸ್ಯೆಯಾಗಿದೆ.
ಸಂವಾದಾತ್ಮಕ ಅವಧಿಗಳು ಇದನ್ನು ಸಹಿಸುತ್ತವೆ ಏಕೆಂದರೆ ಕ್ಷಣಿಕ ವೈಫಲ್ಯ ಮುಂದಿನ ಪ್ರಯತ್ನದಲ್ಲಿ ನಿವಾರಣೆಯಾಗಬಹುದು. ಸ್ವಯಂಚಾಲಿತ ಸಂಪರ್ಕಗಳು ಅದೇ ಆಶಾವಾದವನ್ನು ಪಡೆಯಲಾಗದು: ಮನುಷ್ಯ ಅಥವಾ ಮಾನಿಟರ್ ಸ್ಥಿತಿಯನ್ನು ನೋಡಲು ಪ್ರಕ್ರಿಯೆ ನಿಲ್ಲಬೇಕು.
ಏನನ್ನಾದರೂ ಬದಲಿಸುವ ಮೊದಲು ಒಂದು ಪೂರ್ಣ ಚಕ್ರವನ್ನು ಸೆರೆಹಿಡಿಯಿರಿ. ದೂರದ ವಿಳಾಸ, ದೋಷದಲ್ಲಿ ಹೆಸರಿಸಿದ TLS ಹಂತ ಮತ್ತು ಪ್ರಕ್ರಿಯೆ ಯಾವುದೇ ರೀತಿಯಲ್ಲಿ ನಿರ್ಗಮಿಸುತ್ತದೆಯೇ ಎಂದು ಗಮನಿಸಿ.
ಲೂಪ್ನ ಹಿಂದಿನ ಮರುಪ್ರಯತ್ನ ಯಂತ್ರಾಂಶ
ಮರುಪ್ರಯತ್ನ ಡಿಫಾಲ್ಟ್ ಆಗಿದೆ ಏಕೆಂದರೆ ಹಲವು ಸಂಬಂಧವಿಲ್ಲದ ಟೈಮೌಟ್ಗಳು ಅದೇ ಯಂತ್ರಾಂಶವನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತವೆ. connect-retry ಸಂಪರ್ಕ ಪ್ರಯತ್ನಗಳ ನಡುವಿನ ಅಂತರವನ್ನು ಹೊಂದಿಸುತ್ತದೆ, connect-retry-max ಪ್ರತಿ ದೂರದ ನಮೂದನ್ನು ಎಷ್ಟು ಬಾರಿ ಪ್ರಯತ್ನಿಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ಮಿತಿಗೊಳಿಸಬಹುದು, ಮತ್ತು resolv-retry ಪುನರಾವರ್ತಿತ ಹೆಸರು ಹುಡುಕಾಟಗಳನ್ನು ನಿಯಂತ್ರಿಸುತ್ತದೆ. TLS ಮಾತುಕತೆ ವೈಫಲ್ಯವು ಸಾರಿಗೆ ಘಟನೆಯಾಗಿ ಆ ಯಂತ್ರಾಂಶವನ್ನು ತಲುಪುತ್ತದೆ, ಆದ್ದರಿಂದ ಕ್ಲೈಂಟ್ ವರದಿ ಮಾಡುವ ಬದಲು ಇನ್ನೊಂದು ಪ್ರಯತ್ನವನ್ನು ನಿಗದಿಪಡಿಸುತ್ತದೆ. ಡಿಫಾಲ್ಟ್ ಅಸ್ಥಿರ ಲಿಂಕ್ಗೆ ಸಹಾಯಕವಾಗಿದೆ ಮತ್ತು ಗುಣವಾಗದ ದೋಷಕ್ಕೆ ಹಾನಿಕಾರಕವಾಗಿದೆ.
--tls-exit ಆಯ್ಕೆ ಮಾತುಕತೆಯ ಪ್ರಕರಣವನ್ನು ಮಾತ್ರ ಬದಲಿಸುತ್ತದೆ. ಕೈಪಿಡಿ ಅದನ್ನು TLS ಮಾತುಕತೆ ವೈಫಲ್ಯದಲ್ಲಿ ನಿರ್ಗಮಿಸುವುದು ಎಂದು ವಿವರಿಸುತ್ತದೆ, ಅದು ಪ್ರತಿ ದೋಷದಲ್ಲೂ ನಿರ್ಗಮಿಸುವುದಕ್ಕಿಂತ ಸಣ್ಣದಾಗಿದೆ. ಟೈಮೌಟ್ಗಳು, ರೆಸಾಲ್ವರ್ ವೈಫಲ್ಯಗಳು ಮತ್ತು ದೃಢೀಕರಣ ನಿರಾಕರಣೆಗಳು ತಮ್ಮದೇ ವರ್ತನೆಯನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತವೆ.
TLS ವೈಫಲ್ಯದಲ್ಲಿ ಕ್ಲೈಂಟ್ ನಿರ್ಗಮಿಸುವಂತೆ ಮಾಡುವುದು
ಕ್ಲೈಂಟ್ ನಿಜವಾಗಿ ಲೋಡ್ ಮಾಡುವ ಪ್ರೊಫೈಲ್ನಲ್ಲಿ tls-exit ಇರಿಸಿ, ಅಥವಾ ಪ್ರಾರಂಭಿಸುವಾಗ --tls-exit ನೀಡಿ, ಮತ್ತು ಅದನ್ನು ಒಮ್ಮೆ ಮುಂಭಾಗದಲ್ಲಿ ಚಲಾಯಿಸಿ. ನಿರ್ಗಮನ ಸ್ಥಿತಿ ಮತ್ತು ಕೊನೆಯ ಲಾಗ್ ಸಾಲನ್ನು ಓದಿ, ಏಕೆಂದರೆ ಮೇಲ್ವಿಚಾರಕರು ಸ್ಥಿತಿಯ ಮೇಲೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಾರೆ. ಮಾತುಕತೆ ವೈಫಲ್ಯದ ನಂತರ ಶೂನ್ಯವಲ್ಲದ ನಿರ್ಗಮನವೇ ಉದ್ದೇಶಿತ ಫಲಿತಾಂಶ. ಪ್ರಕ್ರಿಯೆ ಮುಗಿಯುವ ಬದಲು ಮರುಪ್ರಯತ್ನ ಮುಂದುವರಿಸಿದರೆ, ಆಯ್ಕೆ ಕ್ಲೈಂಟ್ ನಿಜವಾಗಿ ಲೋಡ್ ಮಾಡುವ ಪ್ರೊಫೈಲ್ನಲ್ಲಿಲ್ಲ.
ಆ ನಿರ್ಗಮನ ಗೋಚರವೇ ಎಂದು ಮೇಲ್ವಿಚಾರಕರು ನಿರ್ಧರಿಸುತ್ತಾರೆ. Restart=always ಅಥವಾ Restart=on-failure ಹೊಂದಿರುವ systemd ಘಟಕ ಕ್ಲೈಂಟ್ ಅನ್ನು ಮತ್ತೆ ಪ್ರಾರಂಭಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಲೂಪ್ ಮುಂದುವರಿಯುತ್ತದೆ ಮತ್ತು ಆಯ್ಕೆ ಏನೂ ಮಾಡದಂತೆ ಕಾಣುತ್ತದೆ. ಕ್ಲೈಂಟ್ ಅನ್ನು ದೂಷಿಸುವ ಮೊದಲು ನೀತಿಯನ್ನು ಪರಿಶೀಲಿಸಿ:
systemctl show -p Restart -p RestartSec openvpn-client@office
journalctl -u openvpn-client@office -n 40 --no-pager
Restart=no ಪ್ರಕ್ರಿಯೆಯನ್ನು ಕೆಳಗೆ ಉಳಿಯಲು ಬಿಡುತ್ತದೆ, ಮತ್ತು Restart=on-failure ಶೂನ್ಯವಲ್ಲದ ಸ್ಥಿತಿಯ ನಂತರವೂ ಮರುಪ್ರಾರಂಭಿಸುತ್ತದೆ. ವೈಫಲ್ಯ ಗೋಚರವಾಗಿರಬೇಕು ಆದರೆ ಸೇವೆ ಸಂಬಂಧವಿಲ್ಲದ ಕ್ರ್ಯಾಶ್ಗಳಿಂದ ಚೇತರಿಸಿಕೊಳ್ಳಬೇಕು ಎಂದು ಬಯಸಿದರೆ, Restart=on-failure ಹೊಂದಿಸಿ ಮತ್ತು ಮರುಪ್ರಾರಂಭದ ಬಿರುಗಾಳಿಯನ್ನು ನಿಲ್ಲಿಸಲು StartLimitBurst ಮತ್ತು StartLimitIntervalSec ಬಳಸಿ. ನಂತರ ಕೊನೆಯ ನಿರ್ಗಮನ ಕೋಡ್ ದೃಢೀಕರಿಸಲು ಘಟಕದ ಸ್ಥಿತಿಯನ್ನು ಓದಿ: systemctl status ಅದನ್ನು ವರದಿ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಜರ್ನಲ್ ಮೊದಲ ದೋಷವನ್ನು ಮರುಪ್ರಾರಂಭಗಳ ಮೇಲೆ ಇಡುತ್ತದೆ.
ನಿರ್ಧಾರವನ್ನು ಘಟಕದಲ್ಲಿ ಅಥವಾ ಪ್ರೊಫೈಲ್ ಟಿಪ್ಪಣಿಗಳಲ್ಲಿ ಬರೆಯಿರಿ. TLS ವೈಫಲ್ಯದಲ್ಲಿ ನಿರ್ಗಮಿಸುವ ಪ್ರೊಫೈಲ್, ಕಾರಣ ದಾಖಲಾಗದಿದ್ದರೆ ಮುಂದಿನ ವ್ಯಕ್ತಿಗೆ ಅಪಘಾತದಂತೆ ಕಾಣುತ್ತದೆ. ಯಾವ ವೈಫಲ್ಯಗಳು ಪ್ರಕ್ರಿಯೆಯನ್ನು ನಿಲ್ಲಿಸಬೇಕು ಮತ್ತು ಯಾವುವು ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಬೇಕು ಎಂದು ತಿಳಿಸಿ.
ಒಂದು ಬಾರಿಯ ಎಂಡ್ಪಾಯಿಂಟ್ನಿಂದ ಅದನ್ನು ಸಾಬೀತುಪಡಿಸಿ
ಅದನ್ನು ನಂಬುವ ಮೊದಲು ವರ್ತನೆಯನ್ನು ನೋಡಲು, ಪ್ರೊಫೈಲ್ ಅನ್ನು ನಕಲಿಸಿ ಮತ್ತು ನಕಲನ್ನು TCP ಸಂಪರ್ಕವನ್ನು ಸ್ವೀಕರಿಸುವ ಆದರೆ ಎಂದಿಗೂ OpenVPN ಮಾತನಾಡದ ಎಂಡ್ಪಾಯಿಂಟ್ಗೆ ತೋರಿಸಿ. ಉತ್ತರಿಸಿ ನಂತರ ಸುಮ್ಮನಿರುವ ಶ್ರೋತೃ ಸಾಕು. tls-exit ಜೊತೆಗೆ, ಹ್ಯಾಂಡ್ಶೇಕ್ ವಿಫಲವಾದಾಗ ಕ್ಲೈಂಟ್ ಮುಗಿಯಬೇಕು; ಅದಿಲ್ಲದೆ ಅದೇ ಪ್ರೊಫೈಲ್ ಸುತ್ತುತ್ತಲೇ ಇರಬೇಕು. ನಕಲನ್ನು ಬಳಸಿ, ಎಂದಿಗೂ ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಅನ್ನಲ್ಲ.
ಎರಡು ರನ್ಗಳನ್ನು ನಿರ್ಗಮನ ಸ್ಥಿತಿ ಮತ್ತು ಮೊದಲ ದೋಷ ಸಾಲಿನಿಂದ ಹೋಲಿಸಿ, ಪ್ರತಿಯೊಂದೂ ಎಷ್ಟು ಕಾಲ ಇತ್ತು ಎಂಬುದರಿಂದ ಅಲ್ಲ. ಸ್ಥಿತಿ ಆಯ್ಕೆ ಪ್ರಚೋದಿಸಲ್ಪಟ್ಟಿತೇ ಎಂದು ಹೇಳುತ್ತದೆ, ಮತ್ತು ಮೊದಲ ಸಾಲು ಯಾವ ಹಂತ ವಿಫಲವಾಯಿತು ಎಂದು ಹೇಳುತ್ತದೆ.
ಮುಗಿದ ನಂತರ ಪರೀಕ್ಷಾ ಪ್ರೊಫೈಲ್ ತೆಗೆದುಹಾಕಿ. ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ತಪ್ಪಾದ ಎಂಡ್ಪಾಯಿಂಟ್ ಇರುವ ನಕಲು, ನಂತರ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿನ ಪ್ರತಿ ಪ್ರೊಫೈಲ್ ಪ್ರಾರಂಭಿಸುವ ಯಾರಿಗೂ ಬಲೆ.
ಈ ಆಯ್ಕೆ ಎಂದಿಗೂ ತಲುಪದ ಹಂತಗಳು
ದೃಢೀಕರಣ ನಿರಾಕರಣೆ ನಂತರದ ಹಂತ. ಸರ್ವರ್ ಖಾತೆಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡಿ ನಿರಾಕರಿಸಿದರೆ, TLS ಈಗಾಗಲೇ ಮಾತುಕತೆ ನಡೆಸಿದೆ, ಆದ್ದರಿಂದ tls-exit ಪ್ರಚೋದನೆಯಾಗುವುದಿಲ್ಲ. ದೃಢೀಕರಣದ ಮರುಪ್ರಯತ್ನ ಸೆಟ್ಟಿಂಗ್ಗಳು ಮುಂದೆ ನೋಡಬೇಕಾದ ಸ್ಥಳ, ಮತ್ತು ಸರ್ವರ್ನ ಕಾರಣ ಕ್ಲೈಂಟ್ನ ಕೊನೆಯ ಸಾಲಿಗಿಂತ ಹೆಚ್ಚು ಮುಖ್ಯ. ತಪ್ಪು ಪಾಸ್ವರ್ಡ್ ಮತ್ತು ಕಾಣೆಯಾದ ಪ್ರಮಾಣಪತ್ರವು ಕ್ಲೈಂಟ್ ಬದಿಯಲ್ಲಿ ಇದೇ ರೀತಿಯ ಸಂದೇಶಗಳನ್ನು ಉಂಟುಮಾಡಬಹುದು.
ಕಾಣೆಯಾದ ಮಾರ್ಗ, ತಪ್ಪಾದ ರೆಸಾಲ್ವರ್ ಅಥವಾ ತಲುಪಲಾಗದ ಗೇಟ್ವೇ ಕೂಡ ಆಯ್ಕೆಯ ಹೊರಗಿದೆ, ಏಕೆಂದರೆ ಅವು ಮಾತುಕತೆ ವೈಫಲ್ಯಗಳಲ್ಲ. ಮೌನ ಪ್ಯಾಕೆಟ್ ನಷ್ಟವು ಅತ್ಯಂತ ಅಸ್ಪಷ್ಟ ಪ್ರಕರಣ: ವಿನಿಮಯ ಎಷ್ಟು ಮುಂದೆ ಸಾಗಿತು ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ, ಕ್ಲೈಂಟ್ ಮಾತುಕತೆ ವೈಫಲ್ಯವನ್ನು ವರದಿ ಮಾಡಬಹುದು ಅಥವಾ ಸರಳವಾಗಿ ಸಮಯ ಮೀರಬಹುದು.
ನಿಮ್ಮ ಟಿಪ್ಪಣಿಗಳಲ್ಲಿ ವ್ಯತ್ಯಾಸವನ್ನು ಉಳಿಸಿಕೊಳ್ಳಿ. ಸೆಟ್ಟಿಂಗ್ ದುರಸ್ತಿಗಿಂತ ಹೆಚ್ಚಾಗಿ ರೋಗನಿರ್ಣಯ ಮತ್ತು ಮೇಲ್ವಿಚಾರಣೆಗಾಗಿ, ಆದ್ದರಿಂದ ಅದು ಸೈಫರ್ ಹೊಂದಾಣಿಕೆಯಿಲ್ಲದಿರುವಿಕೆ, ಪ್ರಮಾಣಪತ್ರ ಸಮಸ್ಯೆ ಅಥವಾ ತಪ್ಪು ಪೋರ್ಟ್ ಸರಿಪಡಿಸುವುದಿಲ್ಲ. ಮೊದಲು ವಿಫಲ ಮಾತುಕತೆಯ ಕಾರಣವನ್ನು ಸರಿಪಡಿಸಿ, ನಂತರ ತಕ್ಷಣದ ನಿರ್ಗಮನವು ನಿಯೋಜನೆಗೆ ಇನ್ನೂ ಸರಿಹೊಂದುತ್ತದೆಯೇ ಎಂದು ನಿರ್ಧರಿಸಿ.