ಹೊಸ Ubuntu ನಲ್ಲಿ GlobalProtect ನ Linux ಕ್ಲೈಂಟ್ ಏಕೆ ವಿಫಲವಾಗುತ್ತದೆ
.deb ಸರಿಯಾಗಿದೆ: ಹೊಸ Ubuntu ಬಿಡುಗಡೆಗಳು Qt5 WebKit ಅನ್ನು ತೆಗೆದುಹಾಕಿವೆ, ಅದಕ್ಕೆ ವಿಕ್ರೇತ ಮುಖಪುಟ ಇನ್ನೂ ಲಿಂಕ್ ಆಗಿದೆ. ಅವಲಂಬನೆಯನ್ನು ದೃಢೀಕರಿಸಿ, ನಂತರ openconnect ಅಥವಾ ಹಳೆಯ LTS ಆರಿಸಿ.
ಸಮಂಜಸವಾದ ಊಹೆ ಎಂದರೆ ನಿಮ್ಮ GlobalProtect ಪೋರ್ಟಲ್ನಿಂದ ಬಂದ .deb ಹಾಳಾಗಿದೆ, ಅಥವಾ ವಿಕ್ರೇತ ಕೆಟ್ಟ ಬಿಲ್ಡ್ ಬಿಡುಗಡೆ ಮಾಡಿದೆ. ಸಾಮಾನ್ಯವಾಗಿ ಹಾಗಿಲ್ಲ. ವಿಕ್ರೇತನ Linux ಮುಖಪುಟ ಇನ್ನೂ Qt5 WebKit ಗೆ ಲಿಂಕ್ ಆಗಿದೆ, ಹೊಸ Ubuntu ಬಿಡುಗಡೆಗಳು ಅದನ್ನು ಇನ್ನು ನೀಡುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಪ್ಯಾಕೇಜ್ ನಿಮ್ಮ ವಿತರಣೆ ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ತೆಗೆದುಹಾಕಿದ ಲೈಬ್ರರಿಯನ್ನು ಕೇಳುತ್ತಿದೆ. ಇದು ಪ್ಯಾಕೇಜಿಂಗ್ನ ಅಸಾಮರಸ್ಯ, ಹಾಳಾದ ಡೌನ್ಲೋಡ್ ಅಲ್ಲ, ಮತ್ತು ಆ ವ್ಯತ್ಯಾಸವೇ ನೀವು ಮಧ್ಯಾಹ್ನವನ್ನು ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಒತ್ತಾಯಿಸುವಲ್ಲಿ ಕಳೆಯುತ್ತೀರಾ ಅಥವಾ ಹತ್ತು ನಿಮಿಷಗಳನ್ನು ಮತ್ತೊಂದು ಕ್ಲೈಂಟ್ ಆರಿಸುವಲ್ಲಿ ಕಳೆಯುತ್ತೀರಾ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ.
.deb ಹಾಳಾಗಿಲ್ಲ
ವಿತರಣೆ ಇನ್ನು ಹೊಂದಿಲ್ಲದ ಅವಲಂಬನೆ ಎಂಬುದು ಲೈಬ್ರರಿ ನಿವೃತ್ತಿಯಾಗುವ ಸಾಮಾನ್ಯ ಫಲಿತಾಂಶ. Qt5 WebKit ಅನ್ನು ನಂತರದ Ubuntu ಆರ್ಕೈವ್ಗಳಿಂದ ಮತ್ತು Debian ನಿಂದ ತೆಗೆದುಹಾಕಲಾಯಿತು, ಕಾರಣ ಬೇಡಿಕೆಯ ಕೊರತೆ ಅಲ್ಲ, ಭದ್ರತಾ ನಿರ್ವಹಣೆ. ಅದು ಸಂಭವಿಸಿದಾಗ, ಅದಕ್ಕೆ ಇನ್ನೂ ಲಿಂಕ್ ಆಗಿರುವ ಪ್ರತಿಯೊಂದು ಪ್ಯಾಕೇಜ್ ಎಷ್ಟೇ ಚೆನ್ನಾಗಿ ನಿರ್ಮಿಸಲ್ಪಟ್ಟಿದ್ದರೂ ಸ್ಥಾಪಿಸಲಾಗದಂತಾಗುತ್ತದೆ.
ಎರಡು ವೈಫಲ್ಯಗಳನ್ನು ಒಂದೇ ಬಗ್ ಎಂದು ವರದಿ ಮಾಡಲಾಗುತ್ತದೆ ಮತ್ತು ಅವು ಒಂದಲ್ಲ. ಲೈಬ್ರರಿ ಇಲ್ಲದ ಬಿಡುಗಡೆಯಲ್ಲಿ ಇನ್ಸ್ಟಾಲರ್ ತೀರದ ಅವಲಂಬನೆಯಲ್ಲಿ ನಿಲ್ಲುತ್ತದೆ. ಕ್ಲೈಂಟ್ ಸ್ಥಾಪನೆಯಾಗಿ ನಂತರ ಲಾಗಿನ್ನಲ್ಲಿ ವಿಫಲವಾಗುವ ಬಿಡುಗಡೆಯಲ್ಲಿ, ನೀವು ಎಂಬೆಡೆಡ್ ಬ್ರೌಸರ್ ಘಟಕದ ಒಳಗೆ TLS ಅಥವಾ SAML ಹ್ಯಾಂಡ್ಶೇಕ್ ಸಮಸ್ಯೆಯನ್ನು ನೋಡುತ್ತಿದ್ದೀರಿ. ಮೊದಲನೆಯದು ಪ್ಯಾಕೇಜಿಂಗ್; ಎರಡನೆಯದು ರನ್ಟೈಮ್, ಮತ್ತು ಹಳೆಯ ಲೈಬ್ರರಿಗಳನ್ನು ಆಧುನಿಕ ಡೆಸ್ಕ್ಟಾಪ್ಗೆ ನಕಲಿಸುವುದರಿಂದ ಯಾವುದೂ ಸರಿಯಾಗುವುದಿಲ್ಲ.
ಅವಲಂಬನೆಯನ್ನು ಒತ್ತಾಯಿಸುವ ಬದಲು ದೃಢೀಕರಿಸಿ
ಪ್ಯಾಕೇಜ್ ಅನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಸ್ಥಾಪಿಸಿ, ಆಗ ಸಾಧನವು ಪರಿಹರಿಸದ ಅವಲಂಬನೆಯನ್ನು ಹೆಸರಿಸುತ್ತದೆ, ನಿಮಗೆ ಸಾರಾಂಶ ನೀಡುವುದಿಲ್ಲ. ನಂತರ ನಿಮ್ಮ ಬಿಡುಗಡೆಯಲ್ಲಿ ಯಾವುದಾದರೂ ಅಭ್ಯರ್ಥಿ ಇದೆಯೇ ಎಂದು ಕೇಳಿ, ಏಕೆಂದರೆ „ಇಲ್ಲಿ ಲಭ್ಯವಿಲ್ಲ” ಮತ್ತು „ಈ ಕನ್ನಡಿಯಿಂದ ತಾತ್ಕಾಲಿಕವಾಗಿ ಇಲ್ಲ” ಸಂಪೂರ್ಣವಾಗಿ ಬೇರೆ ನಿರ್ಧಾರಗಳಿಗೆ ಕೊಂಡೊಯ್ಯುತ್ತವೆ:
sudo apt install ./GlobalProtect_UI_deb-*.deb
apt-cache policy libqt5webkit5
apt-cache rdepends --installed libqt5webkit5
ಒಂದು ವೇಳೆ apt-cache policy ಯಾವುದೇ ಅಭ್ಯರ್ಥಿಯನ್ನು ವರದಿ ಮಾಡದಿದ್ದರೆ, ಅದನ್ನು ಸ್ಥಾಪಿಸಲು ಪ್ರಯತ್ನಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಿ ಪರ್ಯಾಯ ಆರಿಸಲು ಪ್ರಾರಂಭಿಸಿ. ಆಸಕ್ತಿದಾಯಕ ವಿಷಯ ಕಾಣೆಯಾದ ಪ್ಯಾಕೇಜ್ ಹೆಸರಲ್ಲ; ಆಸಕ್ತಿದಾಯಕ ವಿಷಯ ಎಂದರೆ ವಿಕ್ರೇತನ ಅವಲಂಬನೆ ಗ್ರಾಫ್ ನಿಮ್ಮ ಬಳಕೆದಾರರು ಚಲಾಯಿಸುವ ವಿತರಣೆಗಳೊಂದಿಗೆ ಬೆಳೆದಿಲ್ಲ ಎಂಬುದು.
ಹಳೆಯ ಪ್ಯಾಕೇಜ್ಗಳನ್ನು ಒತ್ತಾಯಿಸುವುದು ಡೆಸ್ಕ್ಟಾಪ್ಗೆ ಏನು ಮಾಡುತ್ತದೆ
ಸುತ್ತುತ್ತಿರುವ ಪರಿಹಾರ ಲೈಬ್ರರಿಯನ್ನು ಹಳೆಯ ಬಿಡುಗಡೆಯಿಂದ ಎಳೆಯುವುದು. ಪ್ರಸ್ತುತ Ubuntu ನಲ್ಲಿ ಅದು Qt5 ನ ಕಿರು ಆವೃತ್ತಿಯ ಘರ್ಷಣೆಯಲ್ಲಿ ನಿಂತುಬಿಡುತ್ತದೆ: ಹಳೆಯ ಪ್ಯಾಕೇಜ್ಗಳು libqt5core5t64 ಅನ್ನು ಹಿಂದಕ್ಕೆ ಎಳೆಯುತ್ತವೆ, ನಂತರ ಸ್ಥಾಪಿತ KDE ಮತ್ತು PyQt ಪ್ಯಾಕೇಜ್ಗಳು ಇಳಿಸಿದ ಲೈಬ್ರರಿ ಇನ್ನು ನೀಡದ ABI ಆವೃತ್ತಿಯನ್ನು ಕೇಳಲು ಪ್ರಾರಂಭಿಸುತ್ತವೆ. ಫಲಿತಾಂಶ ಸಂಬಂಧವಿಲ್ಲದ ಅನ್ವಯಗಳನ್ನು ಮುರಿಯುವ ಭಾಗಶಃ ಅಪ್ಗ್ರೇಡ್, ಅದು ನೀವು ಪ್ರಾರಂಭಿಸಿದ ಮಧ್ಯಾಹ್ನಕ್ಕಿಂತ ತುಂಬಾ ಕೆಟ್ಟದು.
ಈ ಫಲಿತಾಂಶ ನಿರೀಕ್ಷಿತ, ದುರದೃಷ್ಟವಲ್ಲ. Qt ನ ಕಿರು ಆವೃತ್ತಿಗಳಿಗೆ ABI ನಿರೀಕ್ಷೆಗಳು ಕಟ್ಟುನಿಟ್ಟಾಗಿವೆ, ಮತ್ತು ಒಂದು ವಿತರಣೆ ಒಂದು ಸುಸಂಗತ ಗುಂಪನ್ನು ನೀಡುತ್ತದೆ. ಇನ್ನೊಂದು ಬಿಡುಗಡೆಯಿಂದ ಒಂದು ಲೈಬ್ರರಿಯನ್ನು ಬೆರೆಸುವುದು ಗುರಿ ಸರಿಪಡಿಸುವಿಕೆ ಅಲ್ಲ; ಅದು ಎರಡನೇ, ಕಡಿಮೆ ನಿಯಂತ್ರಿತ ಅಪ್ಗ್ರೇಡ್.
ಅದೇ ಸಲಹೆ ವೈಫಲ್ಯದ ರನ್ಟೈಮ್ ರೂಪಕ್ಕೂ ಅನ್ವಯಿಸುತ್ತದೆ. ಹಳೆಯ ಕ್ಲೈಂಟ್ನ ಹ್ಯಾಂಡ್ಶೇಕ್ ಯಶಸ್ವಿಯಾಗಲು OpenSSL ನ ವ್ಯವಸ್ಥೆ-ವ್ಯಾಪಿ ಭದ್ರತಾ ಮಟ್ಟವನ್ನು ಇಳಿಸುವುದು ಒಂದು ಅನ್ವಯವನ್ನು ಸರಿಪಡಿಸಲು ಯಂತ್ರದ ಪ್ರತಿ TLS ಸಂಪರ್ಕವನ್ನೂ ಬದಲಾಯಿಸುತ್ತದೆ, ಬೇರೆ ಏನಾದರೂ ಮುರಿದಾಗ ನಿಮಗೆ ಬೇಕಾಗುವ ಪ್ಯಾಕೇಜ್ ಮ್ಯಾನೇಜರ್ ಸಹ.
openconnect ಈ ಪ್ರೋಟೋಕಾಲ್ ಮಾತನಾಡುತ್ತದೆ
OpenConnect GlobalProtect ನ ಪ್ರೋಟೋಕಾಲ್ ಅನ್ನು ನೇರವಾಗಿ ಜಾರಿಗೊಳಿಸುತ್ತದೆ, ಮತ್ತು ಪ್ರೋಟೋಕಾಲ್ ಟಿಪ್ಪಣಿಗಳು ಕರೆ ಮತ್ತು ಎರಡು ಸರ್ವರ್ ಇಂಟರ್ಫೇಸ್ಗಳ ನಡುವಿನ ವಿಭಜನೆ ಎರಡನ್ನೂ ವಿವರಿಸುತ್ತವೆ. ಪೋರ್ಟಲ್ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಮತ್ತು ಗೇಟ್ವೇ ಪಟ್ಟಿಯನ್ನು ಹಂಚುತ್ತದೆ; ಗೇಟ್ವೇ ಸುರಂಗವನ್ನು ಮುಗಿಸುತ್ತದೆ:
openconnect --protocol=gp vpn.example.com
openconnect --protocol=gp --authgroup=staff vpn.example.com
ಪೋರ್ಟಲ್ ನಿಮಗೆ ಬೇಕಾದ ಗೇಟ್ವೇ ಅನ್ನು ಬಿಟ್ಟುಬಿಟ್ಟರೆ, --usergroup=gateway ಅಥವಾ /gateway ನಲ್ಲಿ ಕೊನೆಗೊಳ್ಳುವ URL ಪೋರ್ಟಲ್ ಹಂತವನ್ನು ಬಿಟ್ಟುಬಿಡುತ್ತದೆ. ಹಲವು ಗೇಟ್ವೇಗಳನ್ನು ನೀಡಿದಾಗ, --authgroup=NAME ಅವುಗಳಿಂದ ಆರಿಸುತ್ತದೆ. ದೃಢೀಕರಣ ಬಳಕೆದಾರಹೆಸರು ಮತ್ತು ಗುಪ್ತಪದ, ಐಚ್ಛಿಕವಾಗಿ ಕ್ಲೈಂಟ್ ಪ್ರಮಾಣಪತ್ರದೊಂದಿಗೆ, ಮತ್ತು SAML ಗೇಟ್ವೇಗಳು ಪ್ರಾಯೋಗಿಕವಾಗಿ network-manager-openconnect ಮೂಲಕ ಕೆಲಸ ಮಾಡುತ್ತವೆ, ಕೈಯಿಂದ ಟೈಪ್ ಮಾಡಿದ ಆಜ್ಞಾ ಸಾಲಿನ ಬದಲು.
ಕಟ್ಟುನಿಟ್ಟಿನ posture ನೀತಿ ಇರುವ ಗೇಟ್ವೇ ಸುರಂಗ ನೀಡುವ ಮೊದಲು HIP ವರದಿಯನ್ನೂ ಕೇಳಬಹುದು. OpenConnect ಒಂದನ್ನು ರಚಿಸಿ ಕಳುಹಿಸಬಲ್ಲದು, ಆದರೆ ಗೇಟ್ವೇ ರಚಿಸಲಾಗದ ದಾಸ್ತಾನನ್ನು ಕೇಳಿದರೆ, ಯಾವುದೇ ಧ್ವಜ ಆ ನೀತಿಯನ್ನು ಬದಲಿಸುವುದಿಲ್ಲ; ಅದು ಸರ್ವರ್ ಕಡೆಯ ನಿರ್ಧಾರ.
ಸುರಂಗವನ್ನು ಪರಿಶೀಲಿಸಿ, openconnect ಏನನ್ನು ಸರಿಪಡಿಸುವುದಿಲ್ಲ ಎಂದು ತಿಳಿಯಿರಿ
ಯಶಸ್ಸಿನ ಸಂದೇಶವನ್ನು ನಂಬುವ ಬದಲು ಸುರಂಗ ನಿಜವಾಗಿ ಏನನ್ನು ಅನ್ವಯಿಸಿತು ಎಂದು ನೋಡಿ. ಗೇಟ್ವೇ ರೂಟಿಂಗ್ ಮತ್ತು ಸಂರಚನೆಯನ್ನು XML ಆಗಿ ಕಳುಹಿಸುತ್ತದೆ, ಕ್ಲೈಂಟ್ ಅವುಗಳನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಕಾಣೆಯಾದ ಮಾರ್ಗ ಸಂರಚನೆ ಅಥವಾ ಆಯ್ಕೆಯ ಸಮಸ್ಯೆ, ಕ್ಲೈಂಟ್ ದೋಷ ಅಲ್ಲ:
ip -4 addr show
ip route
resolvectl status
MTU ಪ್ರತ್ಯೇಕ ನೋಟಕ್ಕೆ ಅರ್ಹ. GlobalProtect ಸಂರಚನೆ ಯಾವಾಗಲೂ ಶೂನ್ಯ MTU ವರದಿ ಮಾಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಕ್ಲೈಂಟ್ ಎನ್ಕ್ಯಾಪ್ಸುಲೇಶನ್ ಓವರ್ಹೆಡ್ನಿಂದ ಒಂದನ್ನು ಅಂದಾಜಿಸುತ್ತದೆ. ಚಿಕ್ಕ ವಿನಂತಿಗಳು ದಾಟುತ್ತಿರುವಾಗ ನಿಲ್ಲುವ ದೊಡ್ಡ ವರ್ಗಾವಣೆಗಳು ಆ ಕ್ಲಾಸಿಕ್ ಲಕ್ಷಣ, ಮತ್ತು ಪರಿಹಾರ ಸಂಪರ್ಕದಲ್ಲಿ ಸ್ಪಷ್ಟ MTU, ಮಾರ್ಗ ಶೋಧನೆ ನಿಲ್ಲಿಸುವುದಲ್ಲ.
IPv6 ಮತ್ತೆ ಬೇರೆ ವಿಷಯ. PAN ಅದನ್ನು GlobalProtect 4.0 ನಲ್ಲಿ ಸೇರಿಸಿತು, ಮತ್ತು OpenConnect ಬೆಂಬಲ ಆವೃತ್ತಿ 9.0 ರಿಂದ ಪ್ರಾಯೋಗಿಕ ಎಂದು ವರ್ಣಿಸಲಾಗಿದೆ, ಆದ್ದರಿಂದ ಸುರಂಗ ಏರಿತು ಎಂದು ವಿಳಾಸ ಕುಟುಂಬ IPv4 ರಂತೆ ವರ್ತಿಸುತ್ತದೆ ಎಂದು ಭಾವಿಸಬೇಡಿ. ಗೇಟ್ವೇ ಮುಕ್ತ ಮೂಲ ಕ್ಲೈಂಟ್ ಪೂರೈಸಲಾಗದ posture ಪರಿಶೀಲನೆಯನ್ನು ಹೇರಿದರೆ, ವಿಕ್ರೇತ ಕ್ಲೈಂಟ್ ಅನ್ನು ಬೆಂಬಲಿತ LTS ಬಿಡುಗಡೆಯಲ್ಲಿ ಚಲಾಯಿಸಿ, ನಿಮ್ಮ ಕೆಲಸದ ಕೇಂದ್ರ ಈಗಾಗಲೇ ಮುಂದೆ ಸಾಗಿದ್ದರೆ ವರ್ಚುವಲ್ ಯಂತ್ರದಲ್ಲಿ. ಇದು ಡೆಸ್ಕ್ಟಾಪ್ ಅನ್ನು ರಕ್ಷಿಸಿ ಹಳೆಯ ಅವಲಂಬನೆಯನ್ನು ಮತ್ತೆ ನಿರ್ಮಿಸಬಹುದಾದ ಮಿತಿಯೊಳಗೆ ಇಡುತ್ತದೆ.