برنامه نویسی

راهنمای امنیتی نهایی VPS

Devsecops: راهنمای امنیتی نهایی VPS
VP های لینوکس خود را در ابر با این شیوه های اساسی ایمن کنید. از پیکربندی SSH گرفته تا تنظیم فایروال ، این راهنما مراحل مهم را برای تقویت سرور شما در برابر تهدیدات پوشش می دهد.

1. مقدمه ای برای SSH

SSH (Secure Shell) یک پروتکل رمزنگاری برای مدیریت ایمن سرور از راه دور و انتقال پرونده است. این جایگزین مدرن برای پروتکل های ناامن مانند Telnet است.

برای نوک💡: از یک فایل پیکربندی SSH برای مدیریت چندین اتصالات سرور استفاده کنید.

بیشتر سیستم عامل ها (لینوکس ، مکوس ، ویندوز) شامل مشتری های داخلی SSH هستند.

2 اتصال به VPS شما

با استفاده از اعتبارنامه root و آدرس IP ارائه شده توسط میزبان خود به VPS خود وصل شوید:

سابق:

ssh root@194.68.123.45
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

اتصال اول: اثر انگشت سرور را برای جلوگیری از حملات میانه در میانه تأیید کنید. SSH آن را به صورت محلی برای اعتبارسنجی آینده ذخیره می کند.

3. بهداشت سرور: به روزرسانی های سیستم

به روزرسانی های منظم اولین دفاع شما در برابر آسیب پذیری ها است.

مخزن بسته بندی را تازه کنید:

sudo apt update

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

Red Hat/Centos: sudo dnf check-update

قوس لینوکس: sudo pacman -Sy

الپین: sudo apk update

به روزرسانی ها را نصب کنید:

sudo apt upgrade -y

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

Omit -y برای سیستم های بحرانی برای بررسی به روزرسانی ها به صورت دستی.

نیازهای راه اندازی مجدد را بررسی کنید:

cat /var/run/reboot-required
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

در صورت وجود ، یک راه اندازی مجدد برازنده را برنامه ریزی کنید:

sudo shutdown -r +5 "Server rebooting for updates in 5 minutes"
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

4. اصل حداقل امتیاز: کاربر استاندارد

– از استفاده از کاربر ریشه برای کارهای روزانه برای کاهش خطرات استفاده می کند.

ایجاد یک کاربر:

adduser nikhil
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

یک رمز عبور قوی و منحصر به فرد تنظیم کنید.

امتیازات مدیر کمک مالی:

usermod -aG sudo nikhil

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

تأیید کنید:

groups nikhil
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

تضمین کردن سودا ذکر شده است

حساب آزمون:

ssh nikhil@194.68.123.45

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

sudo apt update
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

5. احراز هویت بدون رمز عبور: کلیدهای SSH

کلیدهای SSH از رمزهای عبور ایمن تر هستند و در برابر حملات نیروی بی رحمانه مقاومت می کنند.

بحرانی: تأیید هویت کلید SSH قبل از غیرفعال کردن رمزهای عبور برای جلوگیری از قفل شدن.

1. ایجاد جفت کلید (در دستگاه محلی خود):

ssh-keygen -t ed25519 -C "admin@mycompany.com"

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای سیستم های میراث:

ssh-keygen -t rsa -b 4096 -C "admin@mycompany.com"

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

2. Windows SSH Agent (در صورت وجود):

Get-Service -Name ssh-agent | Set-Service -StartupType Automatic
Start-Service ssh-agent
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

3. کلید ADD به عامل:

ssh-add ~/.ssh/id_ed25519

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

4. کلید در سرور: کلید عمومی را کپی کنید:

cat ~/.ssh/id_ed25519.pub

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

در سرور:

 mkdir -p ~/.ssh
 chmod 700 ~/.ssh
 touch ~/.ssh/authorized_keys
 chmod 600 ~/.ssh/authorized_keys
 nano ~/.ssh/authorized_keys
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

کلید عمومی را به عنوان یک خط واحد بچسبانید. ذخیره و خروج.

جایگزین:

ssh-copy-id -i ~/.ssh/id_ed25519.pub nikhil@194.68.123.45

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

6. تأیید اعتبار رمز عبور را غیرفعال کنید
برای جلوگیری از حملات نیروی بی رحمانه ، ورود به سیستم مبتنی بر رمز عبور را از بین ببرید.

هشدار: حتماً کارهای دسترسی کلید SSH را در یک جلسه ترمینال جدید تأیید کنید.

1. EDIT SSH CONFIG:

sudo nano /etc/ssh/sshd_config
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

مجموعه:

PasswordAuthentication no
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

2. پیکربندی های اضافی را بررسی کنید (به عنوان مثال ، AWS ، DigitalOcean ، Linode):

sudo nano /etc/ssh/sshd_config.d/50-cloud-init.conf
sudo nano /etc/ssh/sshd_config.d/50-linode.conf
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

تضمین کردن PasswordAuthentication no در همه پرونده ها

3.Restart SSH:

sudo systemctl restart ssh

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای Centos: sudo systemctl restart sshdبشر

7. ورود به سیستم ریشه را غیرفعال کنید

از دسترسی مستقیم ریشه برای امنیت بیشتر جلوگیری کنید.

1. EDIT SSH CONFIG:

  sudo nano /etc/ssh/sshd_config

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

تنظیم کردن:

PermitRootLogin no
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

جایگزین: PermitRootLogin without-password برای دسترسی ریشه مبتنی بر کلید.

2.Restart SSH:

sudo systemctl restart ssh
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

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

برای کنترل ترافیک شبکه از UFW (فایروال بدون عارضه) استفاده کنید.

1. نصب UFW (اگر از قبل نصب نشده است):

sudo apt install ufw

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

2. طرح پیش فرض:

sudo ufw default deny incoming
sudo ufw default allow outgoing
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

3. اورش SSH:

sudo ufw allow OpenSSH

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

برای درگاه های سفارشی:

sudo ufw allow 2222/tcp  # Replace with your port

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

4. فایروال قابل تحمل:

sudo ufw enable

حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

5. ترافیک وب (در صورت میزبانی وب سایت):

sudo ufw allow http
sudo ufw allow https
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

6. قوانین را تقویت کنید:

sudo ufw status
sudo ufw show added
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

🚀 ایمن بمانید!

این مراحل را دنبال کنید تا VP های خود را در برابر تهدیدها سخت کنید. همیشه تنظیمات (به ویژه کلیدهای SSH) را قبل از اعمال تغییرات محدود کننده برای جلوگیری از قفل کردن ، آزمایش کنید.

ممنون

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا