تمرير SSH الديناميكي العكسي: إنشاء مستمع SOCKS بعيد
أنشئ مستمع SOCKS ديناميكيًا عكسيًا على خادم SSH مع فتح اتصالات الوجهة من جهة العميل.
عادةً يمنح نفق SSH SOCKS الحاسوب المحمول مخرج الشبكة الخاص بالخادم. يعكس التمرير الديناميكي العكسي هذا الترتيب: يمكن لبرنامج على الجهاز البعيد استخدام الشبكة المتاحة لعميل SSH لديك.
على عميل OpenSSH يدعم التمرير البعيد بلا وجهة:
ssh -N -R 127.0.0.1:1080 [email protected]
يوجد مستمع SOCKS على remote.example.net، مربوط بعنوان loopback الخاص به. تستخدم البرامج هناك 127.0.0.1:1080. تعود اتصالات الوجهة عبر SSH وتُفتح من الجهة التي يعمل فيها عميلك.
اقرأ الاتجاه قبل عنوان IP
يجعل توثيق -R الوجهة المحذوفة ذات معنى. أما المواصفة التي تحتوي على port:host:hostport فهي تمرير ثابت بدلًا من ذلك. لا تفترض أن عميلًا قديمًا يدعم الصيغة الديناميكية الأقصر.
عنوان IP الخارجي هو ما تستخدمه شبكة جهة عميلك لتلك الاتصالات. قد يخرج حاسوب محمول خلف موجه منزلي عبر العنوان العام المترجم للموجه. وهو ليس تلقائيًا عنوان IP لخادم SSH، ولا عنوانًا مخصصًا مباشرة للحاسوب المحمول.
أبقِ المستمع البعيد مقيدًا. يمكن لربط شامل أن يسمح لأجهزة أخرى باستخدام شبكة جهة عميلك كمخرج، وفقًا لسياسة الخادم. حتى loopback قد يكون متاحًا لعمليات أخرى مؤهلة على المضيف البعيد؛ فهو ليس سرًا خاصًا بعملية واحدة.
لمجموعة وجهات مقيدة، راجع PermitRemoteOpen وسياسة التمرير في الخادم. يعتمد المسار أيضًا على بقاء عميلك متصلًا. وعندما يُغلق ذلك الاتصال، يختفي مسار الوكيل البعيد. التمرير العكسي يغيّر مكان نشوء الاتصالات؛ ولا يوفر وكيلًا مستقلًا بمعزل عن جلسة SSH.