نمایش نتایج: از شماره 1 تا 4 از مجموع 4
سپاس ها 6سپاس
  • 4 توسط Alux
  • 2 توسط Alux

موضوع: \Tunelling ssh to firewall

  
  1. #1
    نام حقيقي: Alireza HBB

    عضو غیر فعال شناسه تصویری Alux
    تاریخ عضویت
    Jan 2006
    محل سکونت
    Tehran
    نوشته
    1,492
    سپاسگزاری شده
    286
    سپاسگزاری کرده
    399

    \Tunelling ssh to firewall

    با سلام

    در روش زیر یه کار جالب رو با SSH با هم یاد میگیریم که خیلی بدرد می خوره برای اطلاعات بیشتر می تونید man دستور ssh رو مطالعه کنید

    فرض کنیم که سیستم شما در خانه از طریق مودم به اینترنت وصل است و یا در شرکت از طریق شبکه داخلی به اینترنت اتصال داره که در بعد از یک سیستم دیوار آتش قرار داره. شما دسترسی به این دیوار آتش ندارید و Gateway اصلی هم در اختیار شما نیست. حالا شما با سیستم لینوکس خودتون دچار مشکلاتی هستید و هر چفدر ازدوستان سوال کردید همه گفتند که باید سیستم شما را از نزدیک ببیند تا بتونند کار را مستقیما خودشون انجام بدن.
    در اینجا یک راهی وجود دارد که شما می تونید برای دوستتون یک تونل ssh باز کنید تا اینکه اون بتونه بر روی سیستم شما login کنه و مشکلات شما را حل کنه.
    -فرض کنیم که سیستم شما اسمش هست Alireza و شما مثلا در مورد تنظیمات Squid مشکل داری. ولی ssh شما کار میکنه.
    - لازم است سیستم دوست شما دارای یک ssh server فعال باشه که شما بتونید بر روی اون login کنید و لازمه که دوست شما دارای اسم و IP ثابتی باشه. اگر دوست شما از IP های دینامیک استفاده میکنه میشه با استفاده از سرویس سایت های مثل dyndns.org که سرویس مجانی Resolve نامها را دارند استفاده کنه .
    بعد از داشتن این موارد لازم کار تونل زدن را شروع می کنیم
    ۱. دوست شما برای شما یک نام کاربری معمولی درست میکنه و اسم رمز اون را با تلفن به شما میگه مثلا

    User name and password on irani.linuxhome.org
    username: Alux
    password: xxxxxx

    اسم سیستم دوست شما هم هست irani.linuxhome.org
    ۲. حالا شما برای سیستم دوستتون یک درگاه بخصوص را آزاد میکنید تا اینکه دوست شما بتونه به Alireza شما وصل بشه به اینصورت

    کد:
    ssh Alux@irani.linuxhome.org   -R 2003:Alireza:22
    و بعدش یک اتصال ssh باز میشه که شما نباید آن را ببندید تا اینکه دوست شما بتونه از اون استفاده کرد.

    دستور فوق در واقع اینجوری بیان میشه که در سیستم ریموت و پورت 2003 هر کسی کانکت شد اون رو فروارد کنه به پورت 22 از سیستمی به نام Alireza که این میتونه Ip هم باشه


    ۳. اکنون دوست شما میتونه بر روی irani.linuxhome.org این دستور را اجرا کنه و به سیستم شما وصل بشه ولی حالا اون نیاز داره که یک نام کار بری و اسم رمزش را بر روی سیستم شما بدونه که شما با تلفن بهش میگید. مثلا شما براش نام کاربری PN را ساختید
    کد:
    ssh PN@localhost -p 2003
    خوب از حالا به بعد اون رو سیستم شماست. اگر خواستید که دسترسی root هم داشته باشه بهش با تلفن اسم رمز را میدید. و اگر هم خواستید که اتصالشو قطع کنید کافی است که اون اتصال باز شده که در مورد ۲ باز کردید قطع کنید و یا process مربوط را از بین ببرید.
    توضیحات اضافی:
    - این کار در همه جا اصلا توصیه نمیشه و اگر از این تونل استفاده میکنید باید مواظب باشد و بخوصص اگر در شرکت ها یک تونل می زنید حتما از مدیریت شبکه اجازه بگیرید چرا که ممکن است بقیمت از دست دادن کارتون تمام بشه.
    -برای اطلاعات کامل تر manpage را مطالعه کنید
    - اگر در شبکه شما در گاه مربوطه بسته است میشه که مثلا از ۸۰ استفاده کرد.


    اطلاعات تکمیلی :


    -R port:host:hostport
    Specifies that the given port on the remote (server) host is to
    be forwarded to the given host and port on the local side. This
    works by allocating a socket to listen to port on the remote
    side, and whenever a connection is made to this port, the con-
    nection is forwarded over the secure channel, and a connection
    is made to host port hostport from the local machine. Port for-
    wardings can also be specified in the configuration file. Priv-
    ileged ports can be forwarded only when logging in as root on
    the remote machine. IPv6 addresses can be specified with an
    alternative syntax: port/host/hostport.




    موضوعات مشابه:
    ویرایش توسط Alux : 2007-07-21 در ساعت 08:19 AM
    herus_deus، offers2you، ahuray_mazdaa و 1 نفر دیگر سپاسگزاری کرده‌اند.

  2. #2
    نام حقيقي: Reza Behroozi

    عضو غیر فعال شناسه تصویری ahuray_mazdaa
    تاریخ عضویت
    Jun 2005
    محل سکونت
    Shiraz
    نوشته
    1,154
    سپاسگزاری شده
    227
    سپاسگزاری کرده
    115
    علی رضا جان بفرستی تو بخش مقالات بهتره..چون منم شانسی دیدمش.....در ضمن اگر اجازه میدی با اسم خودت بزارم تو pa



  3. #3
    نام حقيقي: Alireza HBB

    عضو غیر فعال شناسه تصویری Alux
    تاریخ عضویت
    Jan 2006
    محل سکونت
    Tehran
    نوشته
    1,492
    سپاسگزاری شده
    286
    سپاسگزاری کرده
    399
    قابلی نداره مال شماست

    من لینک زبان اصلی شو هم داشتم هر چی تو سیستمم گشتم پیدا نکردم !



  4. #4
    نام حقيقي: Alireza HBB

    عضو غیر فعال شناسه تصویری Alux
    تاریخ عضویت
    Jan 2006
    محل سکونت
    Tehran
    نوشته
    1,492
    سپاسگزاری شده
    286
    سپاسگزاری کرده
    399

    Breaking Firewalls with OpenSSH

    فرض کنیم شبکه ای داریم شامل چند سرور که همه ی انها پشت فایروالی هستند که فایروال فقط اجازه کانکت شدن از خارج به ssh server از پورت 22 رو میده

    مانند شکل :





    روش زیر به ما کمک میکنه که از طریق ssh به سرور های دیگه دسترسی داشته باشیم

    ssh سرور از بیرون با 66.35.250.203 دیده میشه
    برای ایجاد اید تونل، در Linux laptop با ip 192.168.1.106 فایل زیر رو میسازیم
    "~/.ssh/config"


    کد:
    ## Linux Laptop .ssh/config ##Host workHostName 66.35.250.203        User sporkey        LocalForward 20000 192.168.0.66:80        LocalForward 22000 192.168.0.66:22        LocalForward 22139 192.168.0.8:139        LocalForward 22110 192.168.0.5:110 Host httpHostName localhost        User donkey        Port 22000        HostKeyAlias localhosthttp
    سپس با استفاده از Chmod پرمیشن Execute با فایل میدهیم
    کد:
    chmod 600 ~/.ssh/config
    برای کانکت شدن به ssh server
    در Linux laptop دستور زیر رو میزنیم
    کد:
    ssh -l sporkey 66.35.250.203
    و یا برای راحتی از دستور ssh work
    استفاده کنیم
    بعد از بر قراری این اتصال می توانیم در تر مینال دیگه

    کد:
    ssh -l donkey localhost -p 22000
    یا از ssh http
    دسترسی به 192.168.0.66 یا همان Http server داشته باشید

    راه دیگه به جای 2 ترمینال استفاده از دستور زیره
    کد:
     ssh -N -f -q work;ssh http
    دستور فوق یک اتصال رو به work برقرار میکنه

    -N برای "Do not execute remote command",
    -f برای requests ssh to go to the background
    -q هم برای is to suppress all warnings and diagnostic messages


    جالب تر اینکه می تونیم با دستور زیر


    کد:
    wget http://localhost:20000/
    page وب سرور رو هم مشاهده کنیم !

    تمامی این دستورات بر اساس فایل کانفیگی هست که اول ساختیم
    امیدوارم مفید بوده باشه

    این ادیتور سایت هم هر کار کردم این فونت ها رو درست نکرد شرمنده که بزرگ کو چیک شده



    ahuray_mazdaa و Jix سپاسگزاری کرده‌اند.

کلمات کلیدی در جستجوها:

هیچ کلمه ای ثبت نشده است.

برچسب برای این موضوع

مجوز های ارسال و ویرایش

  • شما نمی توانید موضوع جدید ارسال کنید
  • شما نمی توانید به پست ها پاسخ دهید
  • شما نمی توانید فایل پیوست ضمیمه کنید
  • شما نمی توانید پست های خود را ویرایش کنید
  •