آموزش های کاربردیبایگانی مطالب

5 راهکار برای ایمن سازی Raspberry Pi

در این مقاله برای شما 5 راهکار برای ایمن سازی Raspberry Pi آماده کرده ایم. در ادامه با این پنج راهکار و همچنین روش فعالسازی آنها آشنا خواهید شد.

همراه ما باشید.

اهمیت ایمن سازی رزبری پای

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

اما درصورتی که رزبری پای خود را به اینترنت متصل می کنید (اتصال مستقیم یا با پروتکل های خاص از طریق firewall روتر) نیاز به اعمال برخی مسائل امنیتی دارید.

ایمن سازی Raspberry Pi

راه های ایمن سازی Raspberry Pi

  1. تغییر رمز عبور پیش فرض

  2. تغییر نام کاربری

  3. بهبود امنیت SSH

  4. نصب firewall

  5. ایجاد رمز عبور برای sudo

حالا که با روش های ایمن سازی رزبری پای آشنا شدیم می توانیم نسبت به اعمال این تنظیمات اقدام کنیم.


تغییر رمز عبور پیش فرض

نام کاربری و رمز عبور تمام رزبری پای هایی که از سیستم عامل رزبین استفاده می کنند مشابه است پس اگر به یک رزبری پای دسترسی دارید و تنظیمات اولیه تغییر نکرده اند به راحتی میتوانید در این بورد دسترسی root داشته باشید. بنابراین اولین اقدام لازم تغییر رمز عبور است .

این کار را به دو روش می توانید انجام دهید:

  1. استفاده از ابزار raspi-config
  2. استفاده از دستور passwd در خط فرمان

تغییر نام کاربری

با تغییر نام کاربری می توانید رزبری پای ایمن تری داشته باشید .نام کاربری پیش فرض تمام رزبری ها pi   است بنابراین لازم است آن را تغییر دهید. با اجرای دستور sudo adduser alice کاربری جدید ایجاد میشود و خط فرمان شما را برای ایجاد رمز عبور کاربر جدید هدایت میکند. آدرس home کاربر جدید /home/alice/ خواهد بود.

برای اضافه کردن کاربر جدید به گروه مدیران و دادن دسترسی sudo و دیگر مجوز های لازم دستور زیر را اجرا کنید:

sudo usermod -a -G
adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,gpio,i2c,spi alice

برای بررسی صحیح بودن دسترسی ها می توانید از دستور زیر استفاده کنید:

sudo su - alice

وقتی از کارکرد صحیح کاربر جدید مطمئن شدید می توانید کاربر pi  را حذف کنید. برای این کار ابتدا باید فعالیت های آن را با دستور زیر متوقف کنید:

sudo pkill -u pi

توجه داشته باشید که برخی از نسخه های سیستم عامل رزبری پای نیازمند وجود کاربر pi هستند، بنابراین اگر احتمال می دهید این موضوع برای شما مهم است کاربر pi را نگه دارید.

بعد از حذف وابستگی های کاربر Pi با دستور sudo deluser pi، کاربر Pi حذف می شود.

دستور ذکر شده کاربر را حذف می کند اما هنور آدرس /home/pi وجود دارد بنابراین اگر لازم می دانید می توانید با دستور زیر کاربر و آدرس home آن را همزمان حذف کنید:

sudo deluser -remove-home pi

بهبود امنیت SSH

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

بهبود امنیت نام کاربری و رمز عبور:

مهم ترین اقدام در زمینه امنیت انتخاب رمز عبور قدرتمند است. همچنین می توانید دسترس و یا عدم دسترسی کاربری خاصی را با SSHD تغییر دهید:

sudo nano /etc/ssh/sshd_config

دستور زیر را به انتهای فایل بالا اضافه کنید:

AllowUsers alice bob

این دستور اجازه ورود برای کاربر های alice و bob صادر می کند. همچنین با دستور DenyUsers و استفاده از آن به شکل گفته شده می تواند از ورود کاربرها جلوگیری کنید.

بعد از انجام تغییرات باید سرویس SSHD را با دستور sudo systemctl restart ssh راه اندازی مجدد کنید و یا می توانید رزبری را برای اعمال تغییرات راه اندازی مجدد کنید.


ایمن سازی Raspberry Pi


استفاده از شناسایی با کلید

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

 

تولید کلید ها در لینوکس با استفاده از دستور ssh-keygen در سرویس گیرنده انجام می شود و کلید ها در فایل ssh در آدرس home کاربر ذخیره می شوند. کلید خصوصی با نام id_rsa و کلید عمومی با نام id_rsa_pub نامگذاری می شوند.

پس از شناسایی کلید ها، لازم است رمز های ورود را غیر فعال کنید :

sudo nano /etc/ssh/sshd_config

سه خط زیر باید به NO تغییر کنند:

ChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no

فایل را ذخیره و سرویس SSH را بادستور sudo service ssh reload راه اندازی مجدد کنید.


نصب firewall

Firewall های مختلفی برای لینوکس وجود دارد که اساسی ترین آنها پروژه iptables می باشد. این پروژه سیستم فیلتر شبکه لینوکس را پوشش می دهد. Iptables به طور پیش فرض روی سیستم عامل رزبری پای نصب است اما تنظیم نیست و تنظیم آن می تواند کار پیچیده ای باشد.

پروژه UFW(Uncomplicated Fire Wall) رابط ساده تری را برای iptables ارائه می دهد که در اوبونتو نصب بوده و به راحتی می تواند در رزبری پای نیز نصب شود:

sudo apt install ufw

ufw علاوه بر سادگی دستورات خط فرمان دارای GUI نیز می باشد.

برای فعال سازی Firewall از دستور sudo ufw enable و برای غیر فعال سازی آن از دستور sudo ufw disable استفاده می شود. دستور زیر برای ایجاد دسترسی به پورت مورد نظر (در اینجا پورت 22):

sudo ufw allow 22

برای منع دسترسی پورت مورد نظر دستور زیر را وارد کنید:

sudo ufw deny 22

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

sudo ufw deny 22/tcp

دستور status تمام تنظیمات انجام شده برای firewall را نمایش می دهد:

sudo ufw status

دستور زیر اتصال یک آدرس IP را بعد از 6 بار تلاش برای ورود با استفاده از TCP روی پورت SSH را به مدت 30 ثانیه محدود می کند.

sudo ufw limit ssh/tcp

برای منع دسترسی IP ذکر شده از پورت 30 دستور زیر را اجرا کنید:

sudo ufw deny from 192.168.2.1 port 30

ایجاد رمز عبور برای sudo

استفاده از sudo در ابتدای تنظیمات به طور پیش فرض نیازی به رمز عبور ندارد اما برای امنیت بیشتر به خصوص وقتی رزبری پای به اینترنت متصل است، بهتر است استفاده از رمز عبور برای استفاده از sudo را اجباری کنید. برای این کار دستور زیر را وارد کنید:

sudo visudo /etc/sudoers.d/010_pi-nopasswd

و Pi را با دستور زیر جایگزین کنید:

pi ALL=(ALL) PASSWD: ALL

سپس فایل را ذخیره کنید.


منابع:
این مقاله چطور بود ؟
+1
26
+1
33
+1
0
مشاهده بیشتر

محمد حسنی

علاقمند به حوزه IoT و الکترونیک. در حال حاضر به مدت یکسال است که در تیم سخت افزار سازان نام آور به تولید محتوا مشغول هستم.

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

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

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