تنظیمات اولیه سرور ابری (Ubuntu 16.04)

آشنایی با رایانش ابری
تنظیمات اولیه سرور ابری (Ubuntu 16.04)

در این مقاله موارد اولیه درباره نحوه دسترسی و کار بر روی سرور ابری و همچنین دیتاسنتر ابری به طور مجزا ارائه شده  است

استارت سرور ابری

سوالی که پس از تحویل گرفتن سرور ابری یا راه اندازی یک instance در دیتاسنتر ابری زس برای بسیاری از مشتریان به وجود می آید این است که چه اقداماتی باید صورت گیرد تا با خیال آسوده به کار با آن ادامه دهیم.

در ادامه، فهرستی از موارد اولیه درباره نحوه دسترسی و کار بر روی سرور ابری و همچنین دیتاسنتر ابری به طور مجزا ارائه شده  است:

  1. ایجاد یک کاربر غیر root با دسترسی مدیر سیستم
  2. افزودن کلید عمومی برای ورود به سیستم بدون نیاز به کلمه عبور
  3. غیر فعال کردن کلمه عبور برای امنیت بیشتر
  4. تنظیم دیوار آتش

ایجاد کاربر با دسترسی مدیر

پس از ورود به سیستم با اجرای دستور:

ssh root@<آدرس آیپی>

با دستور زیر ابتدا یک کاربر ایجاد کرده و سپس به آن دسترسی sudo می دهیم:

adduser admin

[پس از اجرای این دستور تعدادی سوال از شما پرسیده می شود که میتوانید با زدن کلید Enter از آنها عبور کنید و در نهایت از شما کلمه عبور کاربر پرسیده می شود که باید تایید آن را نیز وارد نمایید]

usermod -aG sudo admin

[این دستور کاربر ساخته شده را به گروه sudoers اضافه می کند تا بتوان دستورات با دسترسی مدیر سیستم را اجرا کرد]

احراز هویت با کلید عمومی به ماشین

مدیریت سرور ابری

استفاده از کلمه عبور در نگهداری و مدیریت سرور ابری یا دیتاسنتر ابری از نظر ملاحظات امنیتی، امری نامطلوب تلقی میشود. لذا بهتر است از روش احراز هویت با کلید عمومی استفاده شود که در ادامه نحوه افزودن آن را توضیح می دهیم:

تولید کلید عمومی

ssh-keygen

حال اگر با کاربر admin دستور را اجرا کرده باشید ، خروجی به شکل زیر است:

ssh-keygen output
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/amin/.ssh/id_rsa):

پس از نمایش خط سوم، لینوکس از شما می خواهد یک کلمه عبور وارد کنید.

در نظر داشته باشید که در صورت وارد کردن عبارت عبور باید برای هر بار ورود به سیستم از طریق کلید خصوصی ssh عبارت عبور را نیز وارد کنید.

بدون وارد کردن عبارت عبور نیز (که صرفا لازم است پس از درخواست سیستم کلید Enter را فشار دهید) ورود صورت می گیرد البته حالت اول امن تر است.

اجرای دستور بالا دو کلید که یکی عمومی و دیگری خصوصی است را در دایرکتوری ssh. که در home کاربر وجود دارد ایجاد می کند.

کلید خصوصی را به اشتراک نگذارید.

کپی کردن کلید عمومی

حال که کلیدها را تولید کردیم نوبت کپی کردن کلید عمومی به سرور جدید رسیده است و برای این کار دو روش وجود دارد:

روش اول:

ssh-copy-id admin@<آیپی شما>

روش دوم:

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

cat ~/.ssh/id_rsa.pub

به شکل:

id_rsa.pub contents
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJA hme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxm zTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhv a+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf admin@machine.local

را در clip board کپی می کنیم.

حال با تغییر موقتی کاربر از root به admin کار را دنبال می کنیم:

su - admin

در دایرکتوری home کاربر یک دایرکتوری به شکل:

mkdir ~/.ssh

ایجاد می کنیم.

و با دستور زیر مجوزهای لازم را روی ssh. اعمال می کنیم:

chmod 700 ~/.ssh

پس از ایجاد یک فایل به نام authorized_keys در دایرکتوری ssh. با editor دلخواه دستور زیر را برای دادن مجوزهای لازم اجرا کنید:

chmod 600 ~/.ssh/authorized_keys

حال از حساب admin خارج می شویم:

Exit

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

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

با حساب root یا هر حسابی که دسترسی های مدیر را دارد فایل sshd_config را از مسیر زیر etc/ssh/sshd_config/ ویرایش کنید.

موارد زیر را به این شکل تغییر دهید:

PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no

پس از ذخیره تغییرات نوبت به restart کردن ssh daemon می رسد:

sudo systemctl reload sshd

آزمایش ورود با کلید

قبل از خروج از اکانت خود با connection دیگری دسترسی را امتحان کنید:

ssh admin@your_server_ip

چنانچه کلید درست اضافه شده باشد باید بتوانید بدون کلمه عبور وارد شوید(اگر عبارت عبور را در مراحل قبل وارد کرده باشید از شما پرسیده می شود).

تنظیمات اولیه دیوار آتش

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

ابر زس از سه لایه فایروال استفاده می کند که در این قسمت از آموزش، فایروال درونی  که توسط سیستم‌عامل سرور ابری کنترل می‌گردد را بررسی می کنیم.

برای این کار از ubuntu firewall که به اختصار ufw نامیده می شود استفاده می کنیم.

با اجرای دستور زیر میتوانید فهرست برنامه هایی که ufw به آن ها اجازه تبادل با بیرون را می دهد ببینید:

sudo ufw app list
Output
Available applications:
 OpenSSH

اجرای دستور زیر OpenSSH را در فهرست مجاز می کند:

sudo ufw allow OpenSSH

بعد از اضافه شدن OpenSSH به لیست مجاز در ufw میتوانیم دیوار آتش را فعال کنیم:

sudo ufw enable

با وارد کردن y عملیات را تایید کنید.

sudo ufw status
Output
Status: active
To                         Action From
--                         ------ ----
OpenSSH                    ALLOW Anywhere
OpenSSH (v6)               ALLOW Anywhere (v6)

 

...
...