PuTTY یک شبیه ساز رایگان ترمینال، واسط سریال و برنامه انتقال فایل شبکه ای است. این برنامه از پروتکل های متعددی نظیر SCP، SSH، Telnet و rlogin پشتیبانی می کند.
نام PuTTY معنای خاصی ندارد، اگرچه TTY نام یکی از ترمینال های تعریف شده در سیستم عامل یونیکس می باشد و مخفف Teletype است. PuTTY ابتدا برای ویندوز نوشته شده بود اما به سیستم عامل های دیگر نظیر لینوکس نیز منتقل شد.
درگاه های رسمی PuTTY برای برخی از پلتفرم های مشابه یونیکس، درگاه های Mac OS کلاسیک و Mac OS X موجود هستند و برخی نسخه های غیر رسمی نیز برای پلتفرم هایی مثل Symbian و ویندوز موبایل اختصاص یافته اند.
PuTTY توسط Simon Tatham نوشته شد و در حال حاضر تحت نسخه بتا (آزمایشی) عرضه شده است. این شبیه ساز، در واقع یک واسط کاربری متنی برای کامپیوترهاست که به کمک آن قادر هستند پروتکل های تحت پشتیبانی خود را شامل SSH و Telnet، از راه دور اجرا کنند. تصویر زیر، نمونه از یک پروتکل SSH PuTTY است.
ترمینال : تکنولوژی که به واسطه آن کاربر براحتی میتواند با سیستم های مختلف در سرور ارتباط برقرار کند.
تاریخچه برنامه PuTTY
PuTTY اولین بار در سال ۱۹۹۸ توسعه یافت و همان طور که گفته شد، ابتدا برای ویندوز طراحی شده بود. بعدها در سال ۲۰۰۰ این برنامه به یک پروتکل کلاینت SSH-2 تبدیل شد. در ادامه، واسط های نرم افزاری برای ارتباط این شبیه ساز با سایر سیستم های عامل نظیر لینوکس، ویندوز موبایل، Mac OS، Mac Phone و غیره نیز ارائه گردید.
چرا استفاده از PuTTY اهمیت دارد؟
PuTTY یک برنامه چند پلتفرمی است که قابلیت اجرا در اکثر سیستم های عامل را دارا می باشد. این برنامه برای هر نوع سرور، قابل پیکربندی است و ویژگی هایی مانند انتقال پورت و کلیدهای عمومی در این برنامه در نظر گرفته شده است. همچنین امکان انتقال فایل هایی با حجم زیاد که ارسال آنها از طریق ایمیل و سایر پیام رسان ها امکان پذیر نیست، به کمک واسط نرم افزاری PuTTY ممکن شده است.
مزایا و معایب استفاده از PuTTY
از مهمترین مزایای PuTTY می توان به موارد زیر اشاره کرد:
- PuTTY امکانات مشخصی را به خصوص هنگام کار از راه دور فراهم می کند.
- پیکربندی آن آسان تر و پایدارتر از سایر برنامه های مشابه است.
- به محض بازیابی اتصال پس از قطع، می توان ارتباط از راه دور را از سر گرفت و انتقال فایل یا متن را ادامه داد.
- PuTTY رابط کاربری گرافیکی با کاربرد آسان دارد.
- تغییرات پیکربندی ترمینال ایمن راه دور توسط PuTTY پشتیبانی می شود.
- برخی از توالی های کنترل ترمینال مانند توالی کنسول لینوکس که توسط xterm پشتیبانی نمی شوند، توسط PuTTY پشتیبانی شده است.
همچنین معایب زیر را می توان برای PuTTY برشمرد :
- تنها نام کاربری در قسمت session قابل ذخیره سازی است.
- برای انتقال فایل های غیر متنی می بایست از ابزارهای واسط نظیر winscp استفاده شود.
- شبیه ساز PuTTY با برخی از تجهیزات شبکه بندی Cisco قابل انطباق نیست.
- زمانی که اتصال برقرار است، گزینه copy and paste غیر فعال است.
آموزش استفاده از PuTTY
در این بخش، آموزش استفاده از PuTTY برای ویندوز و چگونگی پیکربندی، ساخت و ذخیره سازی پروفایل ها را ارائه می کنیم. می توانید نسخه نرم افزاری PuTTY را برای پلتفرم ویندوز از این اینجا دانلود نمایید.
اجرای PuTTY و اتصال به یک سرور
پس از نصب برنامه، آن را اجرا کنید. پس از اجرا، پنجره ای با عنوان PuTTY Configuration باز می شود. این پنجره دارای یک صفحه پیکربندی در سمت چپ است، همچنین فیلد Host Name (یا IP address) و سایر گزینه ها در وسط پنجره و صفحه ای برای ذخیره سازی پروفایل های session در قسمت پایین سمت راست قرار دارد.
در ابتدا می بایست نام دامنه و آدرس IP مربوط به هاستی که می خواهید به آن متصل شوید را در فیلد Host Name نوشته و روی Open کلیک کنید. نمونه ای از نام دامنه به صورت students.example.edu است. نمونه ای از آدرس IP نیز به شکل ۷۸٫۹۹٫۱۲۹٫۳۲ می باشد.
باکس اعلام هشدار امنیتی
پس از اتصال به سرور برای اولین بار، باکس PuTTY Security Alert را مشاهده می کنید. این هشدار امنیتی وقتی برای اولین بار به یک سرور متصل می شوید، طبیعی است. برای بستنن باکس هشدار امنیتی، کافیست روی گزینه Yes کلیک کنید.
پنجره ترمینال و مدارک لاگین
پس از بستن باکس هشدار امنیتی، پنجره ترمینال باز می شود. به صورت پیش فرض، این پنجره دارای پیش زمینه مشکی رنگ است. ابتدا از شما نام کاربری و کلمه عبور خواسته می شود. پس از ورود، می توانید در پنجره ترمینال تایپ کنید. در این حالت شما به سرور متصل شده اید و هرآنچه که در پنجره مورد نظر تایپ کنید، به سرور ارسال می شود. پاسخ سرور نیز در همان پنجره نمایش داده خواهد شد. می توانید هر برنامه کاربردی مبتنی بر متن را با استفاده از پنجره مورد نظر روی سرور اجرا کنید. برای خروج از پنجره نیز می توانید در خط دستور، کلمه exit را تایپ کنید.
گزینه های پیکربندی و ذخیره پروفایل ها
پنجره پیکربندی اولیه شامل گزینه های زیادی است. بیشتر آنها در استفاده های عادی، مورد نیاز نیستند.
فیلد Port
فیلد Port، پورت TCP/IP را برای اتصال مشخص می کند. برای SSH، این فیلد حاوی پورتی است که سرور SSH روی آن اجرا می شود. در شرایط عادی، در این فیلد عدد ۲۲ نوشته شده است.
فیلد Connection Type
در شرایط عادی محتوای این فیلد را تغییر ندهید. به صورت پیش فرض گزینه SSH انتخاب شده است.
فیلد Load, save, or delete a stored session
این بخش امکان ذخیره سازی تنظیمات را به صورت پروفایل های نامگذاری شده به شما می دهد. تنها کافیست نام پروفایل جدید خود را در باکس Saved Sessions وارد کرده و روی Save کلیک کنید تا یک پروفایل جدید ایجاد گردد. نام هاست و سایر تنظیماتی که اعمال کردید، در این پروفایل جدید ذخیره می گردد.
فیلد Close window on exit
در نهایت، تنظیمات فیلد Close window on exit تعیین می کند که پنجره ترمینال پس از قطع ارتباط به سرور به صورت خودکار بسته شود یا خیر. گزینه پیش فرض این فیلد نیز Only on clean exit است که معمولاً نیازی به تغییر آن نیست.
گزینه های پیکربندی صفحه سمت چپ
گزینه های بیشتری را می توان در صفحه سمت چپ با عنوان Category یافت. گزینه های Terminal و Window نیاز به تغییر ندارند و از توضیح آنها در اینجا صرف نظر می کنیم. گزینه های Connection از اهمیت بالاتری برخوردارند که در این قسمت به صورت مختصر به توضیح آنها خواهیم پرداخت.
در گزینه Connection در صفحه Category، گزینه Data و Proxy برای ورود نام کاربری و تعیین نوع اتصال پروکسی استفاده می شوند. بهتر است در صفحه Proxy، گزینه عدم اتصال اینترنت بدون استفاده از SOCKS proxy فعال باشد. دسته بندی های Telnet، Rlogin و Serial نیز گزینه های مربوط به هر یک از این پروتکل ها را دارا هستند و از آنها به ندرت استفاده می شود.
دسته بندی SSH اما مهم بوده و برای برخی از افراد قابل استفاده است. کاربر اگر تمایل دارد از روش تأیید هویت کلید عمومی استفاده کند، می بایست به دسته بندی SSH وارد شود. دسته بندی SSH با کلیک روی علامت [+] باز می شود. گزینه های Kex (تبادل کلید)، Host Keys و Cipher نیازی به تغییر ندارند. دسته بندی فرعی دیگری به نام Auth در این بخش قرار دارد که با باز کردن آن، صفحه ای تحت عنوانOptions controlling SSH authentication ظاهر می شود.
برای فعال سازی روش تأیید هویت با کلید عمومی، می بایست یک کلید SSH بسازید و از قسمت Browse در باکس Authentication parameters در پایین صفحه سمت راست، آن را وارد کنید. این روش برای اغلب کاربران مورد نیاز نیست و تنها توسط ادمین ها و برای اطمینان از عملکرد بهینه کلیدهای SSH استفاده می شود.
تأیید هویت Active Directory (GSSAPI / Kerberos)
یکی از ویژگی های جالب PuTTY، پشتیبانی از مکانیزم ورود به سیستم منفرد (SSO) به روش Active Directory است. از نظر فنی، این روش از پروتکل Kerberos استفاده کرده و از طریق یک واسط برنامه سازی تحت عنوان GSSAPI عمل می کند. در پروتکل SSH، این مکانیزم، تأیید هویت GSSAPI نامیده می شود.
کاربران سازمانی که از روش تأیید هویت Kerberos (مثلاً از طریق سرویس های Centrify و یا Quest Authentication تحت عنوان aka Vintela) استفاده می کنند، ممکن است بخواهند از قابلیت ورودی به سیستم منفرد نیز استفاده نمایند. تنظیمات مربوط به تأیید هویت GSSAPI را می توانید در قسمت SSH / Auth بیابید. توجه داشته باشید که دوباره می بایست با کلیک کردن روی علامت [+] برای مشاهده گزینه های GSSAPI، منوی درختی Auth را باز کنید.
گزینه های ارسال سرور X11
X11 نام یک پروتکل است و در واقع به منظور اجرای برنامه های گرافیکی روی سیستم های عامل لینوکس و یونیکس استفاده می شود. این پروتکل، از اجرای برنامه های گرافیکی به صورت راه دور روی شبکه خارجی پشتیبانی می کند. PuTTY روی سرور X11 پیاده سازی نمی شود (در سمت نمایش گرافیکی)، اما می توان آن را با سایر محصولاتی که از سرور X و عملکرد آن روی ویندوز پشتیبانی می کنند، تنظیم کرد. یکی از جایگزین های مرسوم برای X11، استفاده از XMing است که به صورت اختصاصی برای ویندوز طراحی شده است.
برای استفاده از یک سرور X11، ابتدا می بایست باکس Enable X11 forwarding را چک کرده و عبارت localhost:0.0 را در باکس X display location وارد نمایید. سایر تنظیمات نیاز به تغییر ندارند.
گزینه های Tunneling
برای افزودن یک فورواردینگ محلی (یعنی پورت TCP/IP روی کامپیوتر محلی، به یک پورت راه دور و روی کامپیوتر آن فوروارد می شود، یا فورواردینگ روی کامپیوتر دیگری صورت می گیرد که کامیپوتر راه دور به آن دسترسی دارد)، پورت منبع را در فیلد Source port نوشته و هاست مقصد و پورت مربوط به آن را (مثلاً www.dest.com:80) در فیلد Destination می نویسید و گزینه Local را انتخاب می کنید. سپس روی گزینه Add کلیک می کنید.
برای افزودن یک فورواردینگ راه دور (یعنی یک پورت TCP/IP روی کامیپوتر راه دور، روی پورتی در کامپیوتر محلی فوروارد می شود، و یا فورواردینگ روی کامپیوتر دیگری صورت می گیرد که کامپیوتر محلی به آن دسترسی دارد)، دوباره فیلد Source port را در کامپیوتر مقصد مشخص کرده و فیلد Destination را در کامپیوتری که از طریق کامپیوتر محلی قابل دسترسی است (در دسکتاپ شما)، پر می کنید.
نتیجه گیری
PuTTY یک واسط مفید با کاربری آسان است که به شما این امکان را می دهد، از راه دور به یک سرور دیگر متصل شده و فایل های متنی و برنامه های کاربردی مبتنی بر متن را اجرا نمایید. همچنین این شبیه ساز، اکثر سیستم های عامل را پشتیبانی کرده و نحوه اتصال به سرور و لاگین شدن در آن بسیار راحت است. پیکربندی این واسط شبیه ساز، ساده بوده و طی فرآیند پیکربندی، اکثر گزینه های پیش فرض، بدون تغییر باقی می مانند. از آنجایی که این واسط، امکان ارسال متن را از راه دور فراهم می آورد، برای اتصال سرورهای لینوکس از کامپیوترهای مبتنی بر سیستم عامل مایکروسافت نیز قابل استفاده است.