ಕೈಪಿಡಿ: ಎರಡು OpenVPN ಗ್ರಾಹಕರನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಸೇರಿಸುವುದು
ಒಂದು OpenVPN ಹೋಸ್ಟ್ನಲ್ಲಿ ಎರಡು ಗ್ರಾಹಕರಿಗೆ ಪ್ರತ್ಯೇಕ ಕೇಳುಗರು, ಪೂಲ್ಗಳು, ವಿಶ್ವಾಸ ಫೈಲ್ಗಳು ಮತ್ತು ರದ್ದತಿ ವಿತರಣೆ ಬೇಕು, ಅವರನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಇಡುವ ಸ್ವೀಕೃತಿ ಪರೀಕ್ಷೆಯೊಂದಿಗೆ.
ಒಂದು ಹೋಸ್ಟ್ನಲ್ಲಿ ಎರಡು ಗ್ರಾಹಕರು ಇನ್ನೊಂದು ಸರ್ವರ್ ಬ್ಲಾಕ್ ಮತ್ತು ಎರಡನೇ ಪೋರ್ಟ್ನಂತೆ ಕೇಳಿಸುತ್ತದೆ. ಗ್ರಾಹಕರು ನಿಜವಾಗಿ ಹೊಂದಿರುವ ಎಲ್ಲವನ್ನೂ ಪಟ್ಟಿ ಮಾಡಿದಾಗ ಇದು ಬೇರೆ ಯೋಜನೆಯಾಗುತ್ತದೆ: ಕೇಳುಗ, ಸುರಂಗ ಪೂಲ್, ಗುರುತು, ವಿಶ್ವಾಸ ಫೈಲ್ಗಳು, ಮಾರ್ಗಗಳು ಮತ್ತು ರದ್ದತಿ ವೇಳಾಪಟ್ಟಿ. ಅವುಗಳಲ್ಲಿ ಒಂದನ್ನು ಬಿಟ್ಟರೆ ಎರಡನೇ ಗ್ರಾಹಕರು ಮೊದಲನೆಯ ಒಂದು ಭಾಗವನ್ನು ಸದ್ದಿಲ್ಲದೆ ಬಳುವಳಿಯಾಗಿ ಪಡೆಯುತ್ತಾರೆ. ಪ್ರತಿ ಗ್ರಾಹಕರಿಗೆ ಕಾರ್ಡ್ ರಚಿಸಿ ಮತ್ತು ಮೊದಲ ಕ್ಲೈಂಟ್ ಸಂಪರ್ಕಿಸುವ ಮೊದಲು ಅದನ್ನು ತುಂಬಿ.
ಪ್ರತಿ ಗ್ರಾಹಕರಿಗೆ ಸಂಪೂರ್ಣ ಸಂಪನ್ಮೂಲ ಕಾರ್ಡ್ ನಿಗದಿಪಡಿಸಿ
ಇಡೀ ಸೆಟ್ ಅನ್ನು ಒಟ್ಟಿಗೆ ಕಾಯ್ದಿರಿಸಿ: ಸಾರ್ವಜನಿಕ ಪೋರ್ಟ್, ಸುರಂಗ ಉಪಜಾಲ, ಸಂರಚನಾ ಮಾರ್ಗ, ಲಾಗ್ ಗಮ್ಯಸ್ಥಾನ, ಸೇವಾ ನಿದರ್ಶನದ ಹೆಸರು ಮತ್ತು ಸಾಧನ. ಅವುಗಳನ್ನು ಗುಂಪಾಗಿ ಹೆಸರಿಸುವುದೇ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಫೈಲ್ನ ಪ್ರತಿಯನ್ನು ತಡೆಯುತ್ತದೆ, ಅದರಲ್ಲಿ ಇನ್ನೂ ಮೊದಲ ಗ್ರಾಹಕರ ಪೂಲ್ ಅಥವಾ ಇಂಟರ್ಫೇಸ್ ಇರುತ್ತದೆ. ಮೌಲ್ಯಗಳು ಉದಾಹರಣೆಗಳು, ಕಾಯ್ದಿರಿಸಿದ ಪೋರ್ಟ್ಗಳಲ್ಲ, ಆದ್ದರಿಂದ ಹೋಸ್ಟ್ ಈಗಾಗಲೇ ಏನನ್ನು ಬಳಸುತ್ತದೆ ಎಂದು ಪರಿಶೀಲಿಸಿ. ಪ್ರಾರಂಭವಾಗುವ ಸೇವೆ ಸಂಪೂರ್ಣ ಗ್ರಾಹಕರಿಗೆ ಸಮಾನವಲ್ಲ.
ಕಾರ್ಡ್ ಅನ್ನು ಸಂರಚನೆಯ ಪಕ್ಕದಲ್ಲಿ ಇರಿಸಿ ಮತ್ತು ಮೌಲ್ಯ ಬದಲಾದಾಗಲೆಲ್ಲಾ ನವೀಕರಿಸಿ. ವಾಸ್ತವದಿಂದ ದೂರವಾಗುವ ದಾಖಲೆ ಇಲ್ಲದಿರುವುದಕ್ಕಿಂತ ಕೆಟ್ಟದು.
ವಿಶ್ವಾಸ ಸಾಮಗ್ರಿಯನ್ನು ಪ್ರತಿ ಗ್ರಾಹಕರ ಒಳಗೆ ಇರಿಸಿ
ಪ್ರತಿ ಗ್ರಾಹಕರಿಗೆ ಪ್ರತ್ಯೇಕ ನೀಡುವ ಅಧಿಕಾರ ಗಡಿಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಸುಲಭಗೊಳಿಸುತ್ತದೆ ಮತ್ತು ಸಹಿ ಕೀಲಿಯನ್ನು ಇಂಟರ್ನೆಟ್ಗೆ ಒಡ್ಡಿಕೊಂಡಿರುವ ಹೋಸ್ಟ್ನಿಂದ ದೂರ ಇಡುತ್ತದೆ. ಹಂಚಿದ ಮೂಲವೂ ಕೆಲಸ ಮಾಡಬಹುದು, ಆದರೆ ಸಾಮಾನ್ಯ ಆಂಕರ್ ಎರಡು ಸೇವೆಗಳನ್ನು ಒಂದು ಸದಸ್ಯತ್ವ ಡೊಮೇನ್ ಆಗಿ ಮಾಡುವುದಿಲ್ಲ. ಪ್ರತಿ ಕೇಳುಗ ಯಾವ ಸರಪಳಿಗಳನ್ನು ಸ್ವೀಕರಿಸುತ್ತಾನೆ ಮತ್ತು ಯಾವ ಕ್ಲೈಂಟ್ ಗುರುತುಗಳಿಗೆ ಅನುಮತಿ ನೀಡುತ್ತಾನೆ ಎಂದು ನಿರ್ಧರಿಸಿ, ನಂತರ ಎರಡನ್ನೂ ಬರೆಯಿರಿ. ಏನಾದರೂ ಸಂಪರ್ಕಗೊಳ್ಳುವವರೆಗೆ ಪ್ರಯೋಗ ಮತ್ತು ದೋಷದ ಮೂಲಕ ಸರಪಳಿಯಿಂದ ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ತೆಗೆಯಬೇಡಿ.
ಸರ್ವರ್ನ ಸ್ವಂತ ಖಾಸಗಿ ಕೀಲಿ ಪ್ರತಿ ಗ್ರಾಹಕರಿಗೆ ಸಂರಕ್ಷಿತ ಫೈಲ್ನಲ್ಲಿರಬೇಕು, ಸಂರಚನೆಯೊಂದಿಗೆ ನಕಲಾಗುವ ಟೆಂಪ್ಲೇಟ್ ಡೈರೆಕ್ಟರಿಯಲ್ಲಲ್ಲ.
ಪ್ರಕ್ರಿಯೆಗಳಂತೆ ಜಾಲಗಳನ್ನೂ ಬೇರ್ಪಡಿಸಿ
ಎರಡು ಪೋರ್ಟ್ಗಳಲ್ಲಿ ಎರಡು ಪ್ರಕ್ರಿಯೆಗಳು ಬೇರ್ಪಡಿಸದಿದ್ದರೆ ಇನ್ನೂ ಒಂದು ಹೋಸ್ಟ್ ಮತ್ತು ಮಾರ್ಗನಿರ್ದೇಶನ ಕೋಷ್ಟಕವನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತವೆ. ವಿನ್ಯಾಸವನ್ನು ನಂಬುವ ಮೊದಲು ಏನು ಕೇಳುತ್ತಿದೆ ಎಂದು ಖಚಿತಪಡಿಸಿ.
ss -lunp | grep -E '1194|1195'
openssl verify -CAfile customer-a/ca.crt customer-a/client.pemಕೇಳುಗ ಪರಿಶೀಲನೆ ಯಾವ ಪ್ರಕ್ರಿಯೆ ಪ್ರತಿ ಸಾರ್ವಜನಿಕ ಪೋರ್ಟ್ ಅನ್ನು ಹೊಂದಿದೆ ಎಂದು ತೋರಿಸುತ್ತದೆ, ಮತ್ತು ಪರಿಶೀಲನೆ ಕ್ಲೈಂಟ್ ಪ್ರಮಾಣಪತ್ರವು ಉದ್ದೇಶಿತ ಆಂಕರ್ಗೆ ಸರಪಳಿಗೊಳ್ಳುತ್ತದೆಯೇ ಎಂದು ತೋರಿಸುತ್ತದೆ. ಯಾವುದೇ ಔಟ್ಪುಟ್ A ಯ ಕ್ಲೈಂಟ್ B ಯ ಉಪಜಾಲವನ್ನು ತಲುಪಲಾರದು ಎಂದು ಸಾಬೀತುಪಡಿಸುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಮೂಲ ಮತ್ತು ಗಮ್ಯಸ್ಥಾನ ನೀತಿ, ಹಿಂತಿರುಗುವ ಮಾರ್ಗಗಳು ಮತ್ತು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಹಂಚಿದ ಯಾವುದೇ ಸೇವೆಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ. ಜಾಲ ನಾಮಸ್ಥಳಗಳು ಅಥವಾ ಕಂಟೇನರ್ಗಳು ಮಾರ್ಗನಿರ್ದೇಶನ ಸಂದರ್ಭಗಳನ್ನು ಬೇರ್ಪಡಿಸುತ್ತವೆ ಮತ್ತು ಆಕಸ್ಮಿಕ ಮಿಶ್ರಣವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತವೆ, ಆದರೆ ಅವು ಸಂಪೂರ್ಣ ಬಾಡಿಗೆದಾರ ಗಡಿಯಲ್ಲ ತಮ್ಮಿಂದಲೇ. ಬೆದರಿಕೆ ಮಾದರಿ ಬೇಡಿದಾಗ ಹೆಚ್ಚು ಬಲವಾದ ಪ್ರತ್ಯೇಕತೆ ವ್ಯವಸ್ಥೆಯನ್ನು ಆರಿಸಿ.
ಹಸ್ತಾಂತರದ ಮೊದಲು ರದ್ದತಿಯನ್ನು ತಲುಪಿಸಿ
ರದ್ದತಿಗೆ ವಿತರಣಾ ಮಾರ್ಗ ಇಲ್ಲದಿದ್ದರೆ ಪ್ರಮಾಣಪತ್ರ ನಿಯೋಜನೆ ಅಪೂರ್ಣ. ಸೇರಿಸುವಿಕೆಯ ಭಾಗವಾಗಿ CRL ನ ನೀಡುವವರು ಮತ್ತು ಮಾನ್ಯತೆ ಅವಧಿಯನ್ನು ಪರಿಶೀಲಿಸಿ.
openssl crl -in customer-a/crl.pem -noout -lastupdate -nextupdate
systemctl status openvpn@customer-aCRL ಪರಿಶೀಲನೆ ಪಟ್ಟಿ ಯಾವಾಗ ನೀಡಲಾಯಿತು ಮತ್ತು ಯಾವಾಗ ಮುಗಿಯುತ್ತದೆ ಎಂದು ವರದಿ ಮಾಡುತ್ತದೆ, ಮತ್ತು ಸೇವಾ ಸ್ಥಿತಿ ಅದನ್ನು ಓದುವ ನಿದರ್ಶನ ನಡೆಯುತ್ತಿದೆ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ. ಹೊಸದಾಗಿ ಏನೂ ರದ್ದಾಗದಿದ್ದರೂ ನೀಡುವ ನೀತಿಯ ವೇಳಾಪಟ್ಟಿಯಂತೆ ಪಟ್ಟಿಯನ್ನು ನವೀಕರಿಸಿ, ಏಕೆಂದರೆ ಅವಧಿ ಮುಗಿದ CRL ಪ್ರತಿ ಕ್ಲೈಂಟ್ ಅನ್ನು ತಿರಸ್ಕರಿಸಬಹುದು. ಓದುಗರು ಭಾಗಶಃ ಬರವಣಿಗೆ ಎದುರಿಸದಂತೆ ಸಂಪೂರ್ಣ ಫೈಲ್ ಪ್ರಕಟಿಸಿ, ಮತ್ತು ನಿಯೋಜನೆಯ ಮೊದಲು ಸಹಿಯನ್ನು ಪರಿಶೀಲಿಸಿ. ನೀಡುವಿಕೆ, ಅಂತಿಮ ಬಿಂದು ಕಾರ್ಯಾಚರಣೆ ಮತ್ತು ನಿವೃತ್ತಿ ಯಾರಿಗೆ ಸೇರಿದೆ ಎಂದು ದಾಖಲಿಸಿ, ಇದರಿಂದ ಗ್ರಾಹಕ A ಅನ್ನು ನಿಲ್ಲಿಸುವುದು B ಗೆ ತೊಂದರೆ ಕೊಡದು.
ನಂತರ ಸ್ವೀಕೃತಿ ಜೋಡಿಯನ್ನು ಚಲಾಯಿಸಿ: ಅನುಮತಿಸಿದ ಕ್ಲೈಂಟ್ ತನ್ನ ಸೇವೆಯನ್ನು ತಲುಪುತ್ತಾನೆ, ಮತ್ತು A ಯ ರುಜುವಾತು B ಯ ಕೇಳುಗನಿಂದ ತಿರಸ್ಕೃತವಾಗುತ್ತದೆ. ಅದೇ ಗಡಿ, ಪರೀಕ್ಷೆಯಾಗಿ ವ್ಯಕ್ತವಾಗಿದೆ.