پوسته امن ( Secure Shell ) یا به اختصار اس‌اس‌اچ ( SSH ) یک پروتکل اینترنتی است که امکان تبادل اطلاعات با استفاده از یک کانال امن را بین دو دستگاه متصل در شبکه ایجاد می‌کند . دو نسخه اصلی این پروتکل به نام‌های SSH1 و SSH2 شناخته می شود. در ابتدا SSH تنها بر روی سیستم‌های مبتنی بر یونیکس و لینوکس برای دسترسی به حساب‌های پوسته استفاده می شد ولی به تدریج به جایگزینی مناسب برای تل‌نت ( Telnet ) و سایر پوسته‌های ارتباط از راه دور غیر امن بدل گردید . محبوبیت و ضریب امنیت SSH تا حدی است که ماکروسافت نیز تمایل خود را برای استفاده از آن در سیستم عامل ویندوز اعلام کرده است . Open SSH نسخه متن‌باز ( Open-source ) و رایگان SSH می باشد . کاربر های SSH فقط به اتصال ساده بین دو دستگاه محدود نشده و حتی شما می توانید با استفاده از ssh ارتباطات tunneling و یا port forwarding را نیز پیاده سازی نمائيد. با توجه به اینکه سرویس SSH یک پل ارتباطی به سرور شماست ، اعمال تنظیمات امنیتی بر روی آن می تواند سهم بزرگی در امنیت سرور شما ایفا کند. در این مقاله به شما تغییر در پیکره بندی بخش های مختلف این سرویس ، تغییر پورت پیشفرض ، محدود کردن نام کاربری های مجاز به اتصال و مواردی از این دست را آموزش خواهیم . با ما همراه باشید.

مسیر فایل تنظیمات و پورت پیشفرض

فایل تنظیمات سرور Openssh

/etc/ssh/sshd_config

فایل تنظیمات کاربر Openssh

/etc/ssh/ssh_config

پوشه تنظیمات ssh کاربری

~/.ssh/

پوشه کلید های عمومی ssh

~/.ssh/authorized_keys

پورت پیش فرض ssh

SSH default port : TCP 22

استفاده از ssh2

با توجه به این که ssh 1 دچار مشکل man-in-the-middle و security vulnerabilities می باشد، پیشنهاد میگردد از پروتکل ssh 2 استفاده کنید. برای این منظور فایل sshd_config را باز نموده و بررسی کیند که تنظیمات به صورت ذیل باشد.

Protocol 2

تعریف مجوز دسترسی کاربران ssh

به صورت پیش فرض تمامی اکانت های کاربری می توانند با استفاده از کلمه عبور و کلید های عمومی به سرور متصل شوند.

بعضی مواقع ممکن است که برای سرویس های ftp و یا سرور میل خود کاربر تعریف نمائيد و به صورت پیش فرض این کاربران امکان اتصال به ssh را نیز دارا باشند. همچنین ممکن است که اسکریپتی بر روی سرور نصب نمائيد که اقدام به ایجاد کاربر بر روی سرور نماید ، شما می توانید برای جلوگیری از لاگین کاربران تنها کاربرانی که خود تعیین می نمائيد به سرور متصل گردند، برای این منظور از متغییر AllowUsers در فایل sshd_config به صورت ذیل استفاده می نمائيم.

AllowUsers root parspack ali

همچنین روش دیگر استفاده از یک قانون دیگر میباشد که تمامی کاربران امکان اتصال ssh داشته باشند به غیر از کاربران ذکر شده.

DenyUsers mehrzad milad ashkan

تنظیم زمان انتظار

شما می توانید زمانی که یک کاربر در سرور بدون وارد کردن دستور است را تنظیم نمائيد تا در صورت اجرا نکردن دستوری اتصال خاتمه یاید. مبنای زمان در این بخش ثانیه بوده و لذا عدد 300 معادل با 5 دقیقه می باشد.

ClientAliveInterval 300

ClientAliveCountMax 0

غیر فعال کردن کاربر root

در بیشتر شبکه ها ممکن است چندین مدیر شبکه وجود داشته و همگی با کاربر root اقدام به ورود به سرور نموده و تغییرات خود را به انجام رسانند . لذا پیشنهاد می گردد در این موارد هر کاربر با نام کاربری مختص خود که می تواند عضو گروه سودور ( Sudoer ) باشد استفاده کند. برای همین منظور کاربر root غیر فعال می گردد.

PermitRootLogin no

فعال کردن بنراخطار

اگر می خواهید پیغام خاصی در هنگام اتصال نمایش داده شود می توانید آن را در مسیر زیر تنظیم کنید.

Banner /etc/issue

تغییر پورت پیش فرض ssh و IP اتصال

شما می توانید پورت پیش فرض ssh که ۲۲ می باشد را به پورت دیگری تغییر دهید،‌ همچنین در صورتی که چندین IP بر روی سرور خود تنظیم نموده اید تمامی آنها به صورت معمول به سرور متصل می گردند، شما می توانید با تنظیمات ذیل IP هایی که امکان اتصال به سرور را دارند تنظیم نمائيد و برای دیگر IP های امکان اتصال میسر نباشد.

Port 4441

ListenAddress 192.168.1.5

ListenAddress 192.168.1.10

غیر فعال نمودن ورود بدون کلمه عبور

اکیدا توصیه می گردد این بخش از تنظیمات را بررسی کنید. در صورت عدم پیکره بندی صحیح این بخش ، اگر اکانت کاربری کلمه عبور خالی تنظیم کرده باشد ، می تواند به سرور اتصال SSH  برقرار کند که ریسک امنیتی بسیار بالایی دارد.

PermitEmptyPasswords no

لاگ های ssh

می توانید با استفاده از دستور مقابل لاگ های سرویس SSH را مطالعه فرمایید.

grep 'sshd' /var/log/auth.log

به روز رسانی SSH

با توجه به اهمیت بالای این سرویس ، پشنهاد می شود همواره جدید ترین بروزرسانی های پکیج OpenSSH را دریافت و نصب فرمایید.

پس از اتمام بروزرسانی ، جهت استارت مجدد سرویس ، با توجه به سیستم عامل لینوکس خود یکی از دستورات ذیل را استفاده نمائيد.

systemctl restart sshd

service sshd restart

اتصال ssh از طریق کلید عمومی

یکی از بهترین روش های اتصال به سرور استفاده از کلید عمومی می باشد، با این کار به جای وارد نمودن کلمه عبور سرور در هر بار اتصال از کلید عمومی صادر شده برای اتصال استفاده نموده و از افشا شدن کلمه عبور در هنگام ورود با صفحه کلید جلوگیری می نمائيم.  ابتدا توسط دستور SSH-Keygen اقدام به ایجاد کلید عمومی ( Public Key ) و خصوصی ( Private key ) می نمائيم.

ssh-keygen -t rsa

سپس توسط دستور ذیل فایل کلید عمومی خود را به سروری که قصد اتصال داریم منتقل می نمائيم.

cat ~/.ssh/id_rsa.pub | ssh root@192.168.22.22 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

پس از آن سطح دسترسی فایل ها و پوشه ها را تنظیم می کنیم.

chmod 700 .ssh

chmod 640 .ssh/authorized_key

اطلاعات دانلود
مطالب تصادفی
نظرات مربوط به مطلب : بدون دیدگاه

خدمات میزبانی وب,هاست لینوکس,هاست دانلود,هاستینگ,ارائه خدمات هاستینگ,هاست وردپرس,هاست cpanel,هاست جوملا,هاست طراحی سایت,هاست سی پنل

سرور,دیتاسنتر,سرور ایران,خدمات سرور,سرور پرقدرت,طراحی قالب وردپرس,قالب وردپرس,طراحی سایت,طراحی آپلودسنتر,هاست ارزان,ثبت دامنه

طراحی سایت,هزینه طراحی,طراحی صفحات اینترنتی,طراحی آپلودسنتر,طراحی وردپرس,بهینه سازی,سئو,بهینه سازی,کدنویسی,کد نویسی و بهینه سازی هاست ایران,ایران هاست,میهن وب هاست,تهران هاست,شرکت میزبانی وب نت افزار,ایران سرور,قیمت هاست,تعرفه هاست,خرید هاست,فروش هاست هاست نامحدود سرور پارس,هاست پرسرعت ssd,ایران هاست,تهران هاست,هاست پرسرعت,هاست پرسرعت لینوکس,هاست ایران,هاست وردپرس,هاست دانلود,هاست آپلودسنتر,هاست جوملا,هاست کلیجا,هاست سایت,هاست وبسایت,سرور ایران,دیتاسنتر,سرور پرسرعت,سرور بدون هنگی,سرور با آپتایم بالا,خرید هاست,خرید سرور,ثبت دامنه,جستجوی دامنه,دامنه ای ار,ثبت دامنه ای ار,انواع دامنه,وردپرس,آموزش هاست,آموزش سرور,آموزش خرید,آموزش دایرکت ادمین,ایرانیک,فراسو,طلا هاست,خدمات میزبانی وب,بهینه سازی سایت,بهینه سازی,کدنویسی,طراحی سایت,طراحی سایت آپلودسنتر,طراحی آپلودسنتر,طراحی سایت دانلود,انواع هاست دانلود,هاست لینوکس,لینوکس,آی آر,طراحی قالب,طراحی,سئو,سئو سایت,کدنویسی مجدد سایت
طراحی سایت