Tunneling SSH over an HTTP-Proxy Server

0

شاید تا بحال برای شما پیش آمده که در جایی قرار دارید که باید به سرور خود بصورت ssh  متصل شوید ولی متاسفانه بدلیل و جود فایروال در مسیر قادر به اتصال به پورت 22 سرور نیستید و هیچ اتصالی از داخل به خارج از شبکه مگر با استفاده از سرور پراکسی امکان پذیر  نخواد بود.
در این آموزش بشما یاد خواهم داد که چگونه با استفاده از پراکسی سرور بتوانید به سرور مورد نظر خود ssh  کنید.
برای این کار چیزی که شما نیاز دارید یک سیستم لینوکس ( برای من CentOS ) یا هر سیستمی که بسته openssh در ان نصب باشد وبه شبکه متصل است، خواهد بود.
در این شبکه  من قادر به اتصال به هیچ سرور خارجی نیستم
خوب برای شما شما کافی است بسته نرم افزاری زیر را نصب کنید: corkscrew home page

بسته را از حالت فشرده خارج کرده و آنرا کامپایل کنید :

tar -xzvf corkscrew.tar.gz
 # [..]
 cd corkscrew./configure
 make install

بصورت پیشفرض بسته در محل usr/local/bin/ نصب خواهد شد در صورتی که شما خواهان نصب آن در محل دیگری هستید می توانید با استفاده از گزینه  prefix=path– مسیر جدیدی را برای آن در هنگام کامپایل مشخص کنید
خوب برای استفاده از آن کافی است در  فایل پیکربندی ssh  خود ، خط زیر را اضافه کنیم در صورتی که فایل زیر در سیستم شما وجود ندارد آن را بصورت دستی در آدرس HOME/.ssh/config$ ایجاد کنید  و عبارت زیر را در ان بنویسید:

Host      *
ProxyCommand     corkscrew     http-proxy.example.com      8080     %h     %p

که http.example.com   همان آدرس http Proxy  شماست  و 8080 شماره ی پورتی که سرور بر روی آن در حال گوش کردن است.  پارامتر های %h  و  %p  بصورت خودکار توسط SSH  که نشان دهنده آدرس و پورت مقصد هستند،  اضافه خواهند شد.

این دو خط به SSH SERVER  می گویند که برای اتصال از یک برنامه خارجی در این مثال (CorkSCrew ) استفاده کند و برای تست آن می توانیم اینگونه عمل کنیم

ssh  www.alux.ir

نگارنده : علی رضا حبیبی

نظرات مسدود است.