הגדירו את שרת ה-SSH האחרון כמארח, והציבו את השרת המתווך ב-ProxyJump:

Host proxy-exit
    HostName exit.example
    User operator
    ProxyJump [email protected]
    DynamicForward 127.0.0.1:1080

עם חשבונות מורשים במארחים אלה, הפעילו ssh -N proxy-exit. הגדירו את היישום המקומי להשתמש ב-SOCKS בכתובת 127.0.0.1:1080. המאזין נמצא בלקוח; חיבור ה-SSH מגיע אל exit.example דרך jump.example.

חיבורי האתרים המבוקשים נפתחים מהצד המרוחק של הפעלת ה-SSH האחרונה—exit.example. הקפיצה מעבירה את תעבורת ה-SSH אל אותו מארח ואינה הופכת ליציאת SOCKS רק משום שהייתה המכונה הראשונה שאפשר היה להגיע אליה.

היעד רואה את הכתובת שנבחרה על ידי הניתוב של מארח היציאה וכל NAT. אין צורך שהיא תתאים לכתובת הכניסה של שם המארח. שני השרתים זקוקים להרשאות ההעברה הנדרשות לתפקידיהם, ובדיקות מפתח המארח עדיין חלות על נקודות הקצה המיועדות של SSH.

תצורה זו יוצרת את שירות ה-SOCKS באמצעות העברה דינמית של SSH. אם השער כבר מריץ מאזין SOCKS עצמאי, הגעה אל אותו מאזין בהעברה קבועה היא סידור אחר.

מאמרים קשורים