افزایش امنیت سرور مجازی لینوکس از نان شب واجبتر است تا سرور از شر هرگونه حمله و تهدید سایبری در امان بماند. سرور لینوکس مثل ستون فقرات کسبوکار شما عمل میکند و تهدیدات سایبری ممکن است آسیبپذیری سرورها را به رخ کسبوکارتان بکشد. در این مقاله از بلاگ ایران سرور، ۲۰ راهکار موثر و کاربردی برای افزایش امنیت سرور لینوکسی بررسی میکنیم. پس از خواندن این مقاله میتوانید این راهکارهای کاربردی را برای امنیت سرور لینوکسی خود بهکار بگیرید.
چرا افزایش امنیت سرور لینوکس مهم است؟
دنیای دیجیتال پر از تهدیدات سایبری است. هکرها و افراد سودجو همیشه در تلاش هستند تا به سیستمهای شما نفوذ کنند. برخی از رایجترین تهدیدات عبارتند از:
- حملات سایبری بهشکل حملات DDoS، تزریق SQL و XSS
- باجافزارها
- نفوذ به سیستم
- سرقت اطلاعات
بیتوجهی به امنیت سرور ممکن است به خسارات مالی سنگین، از دست رفتن دادههای حیاتی، آسیب به اعتبار برند و مشکلات قانونی منجر شود. تصور کنید اطلاعات مشتریان شما به سرقت میرود یا سیستم شما به دلیل یک حمله باجافزاری قفل میشود؛ این موارد علاوهبر زیر سوال بردن برند شما، هزینه بسیاری برای بازیابی و جبران خسارات به همراه دارد؛ به همین دلیل، در ابتدای مقاله ادعا کردیم امنیت سرور لینوکس از نان شب هم واجبتر است و باید به عنوان یکی از اولویتهای اصلی در نظر گرفته شود.
۲۰ راهکار افزایش امنیت سرور لینوکس
شما میتوانید با به کارگیری راهکارهای زیر، امنیت سرور لینوکس خود را افزایش دهید:
- بهروزرسانی منظم سرور
- ایجاد یک حساب کاربری با دسترسی عمومی
- استفاده از کلیدهای پورت SSH و رمزهای قوی
- کاهش سرویسهای غیرضروری
- راهاندازی یک فایروال مطمئن
- فعال کردن Fail2ban
- احراز هویت دو مرحلهای (2FA)
- محدود کردن دسترسیها
- فعال یا غیرفعال کردن برخی توابع
- نصب ماژول ModSecurity
- نصب آنتیویروس قدرتمند
- جداسازی پارتیشنهای دیسک سرور
- حذف فایلهای بیصاحب
- بررسی سیستم با ابزار auditd
- غیرفعال کردن دستگاههای USB، Firewire و Thunderbolt
- استفاده از افزونههای امنیتی
- محدود کردن تلاشهای ناموفق
- نظارت بر فایلهای لاگ
- محافظت از فایل، دایرکتوری و ایمیل
- بکاپگیری منظم
بیشتر بخوانید: راهنمای تغییر پورت SSH در سرور مجازی لینوکس
در ادامه هر یک را بهطور کامل بررسی میکنیم.
۱. حفظ امنیت سرور لینوکس با بهروزرسانی منظم
بعضی از سرورهای لینوکس بهطور خودکار بهروزرسانی میشوند؛ باوجوداین، اگر مطمئن نیستید که سرور شما بهروزرسانی خودکار دارد، این کار را میتوانید بهصورت دستی انجام دهید. دو راه وجود دارد:
راهکار اول: استفاده از آپدیت منیجر
آپدیت منیجر لینوکس به جستجوی آخرین بهروزرسانیها میپردازد و به شما اطلاع میدهد چه زمانی بهروزرسانی جدیدی در دسترس است. از آنجا که توزیعهای لینوکس رابط کاربری گرافیکی دارند، سرور خود را بهسرعت و آسان میتوانید بهروزرسانی کنید.
راهکار دوم: استفاده از ترمینال لینوکس
برای آپدیت از طریق ترمینال دستور زیر را وارد کنید:
برای اوبونتو و دبیان
sudo apt update && sudo apt upgrade -y
برای فدورا و CentOS
sudo dnf upgrade
در نهایت، سیستم را ریاستارت کنید تا تغییرات اعمال شود.
بیشتر بخوانید: OpenWrt چیست و چه کاربردهایی دارد؟
۲. ایجاد یک حساب کاربری با دسترسی عمومی برای جلوگیری از خطا
مدیران کاربلد هنگام ورود به سرور لینوکس، از دسترسی مستقیم به حساب روت (root) خودداری میکنند. دلیل این امر واضح است: یک اشتباه کوچک در وارد کردن دستورات، ممکن است مشکلات جدی ایجاد کند. به همین دلیل، فقط اعضای تیم که درک کاملی از سرورهای لینوکس و نحوه انجام وظایف اصلی دارند، باید بهعنوان کاربران روت تعیین شوند.
شما میتوانید یک حساب کاربری ایجاد کنید که دسترسی عمومی sudo داشته باشد. این کار به کاربران باتجربه اجازه میدهد بدون ورود به ترمینال با دسترسی اصلی از دستورات روت استفاده کنند؛ در نتیجه، خطر ایجاد آسیب ناخواسته به سرور و دادهها به میزان قابل توجهی کم میشود. مراحل زیر را برای ایجاد دسترسی sudo دنبال کنید:
ایجاد یک کاربر جدید:
$ adduser <username>
دادن دسترسی sudo به کاربر جدید:
$ usermod -a -G sudo <username>
۳. افزایش امنیت سرور لینوکس با استفاده از کلیدهای SSH و رمزهای قوی
اگر اخیرا کاربری با دسترسی روت ایجاد کردید، استفاده از کلیدهای SSH و رمزهای قوی برای حفاظت از سرور لینوکس ضروری است.
افزایش امنیت سرور لینوکس با استفاده از کلیدهای SSH
مانند هر رمز عبور پیچیده، درنظر داشته باشید رمز شما ترکیبی از حروف بزرگ و کوچک، اعداد، نمادها و حداقل ۱۲ تا ۱۶ کاراکتر طول باشد. در مورد استفاده از کلیدهای SSH کارتان راحت است؛ هر بار که به سرور متصل میشوید، نیازی به تایپ رمز عبور نخواهید داشت. برای شروع کار با کلید SSH، میتوانید یک کلید جدید در ترمینال لینوکس خود ایجاد کرده و سپس آن را به سرور لینوکس خود انتقال دهید. برای این کار از دستور زیر استفاده کنید:
$ ssh-copy-id <username>@ip_address
البته برای اینکه کلید SSH شما امن باشد، کارهای بیشتری لازم است انجام دهید. باید مراحل زیر را دنبال کنید:
- غیرفعال کردن احراز هویت با رمز عبور SSH
- غیرفعال کردن دسترسی روت از راه دور
- غیرفعال کردن دسترسی IPv4 و IPv6
انجام هر یک از مراحل فوق بسیار ساده است. با استفاده از یک ویرایشگر متن، فایل /etc/ssh/sshd_config را باز کنید و موارد زیر را بررسی کنید:
- PasswordAuthentication yes
- PermitRootLogin yes
حالا هر دو این خط را به جای «yes» به «no» تغییر دهید. این کار با ویرایشگر متن شما بهسادگی انجام میشود. پس از انجام این کار، باید سرویس SSH را به IPv4 یا IPv6 تغییر دهید. با استفاده از ویرایشگر متن خود، خط AddressFamily را طوری تغییر دهید که فقط از IPv4 استفاده کند. این خط باید بهصورت زیر باشد:
AddressFamily inet
برای اعمال تغییرات، سرویس SSH را دوباره راهاندازی کنید.
- Fedora، CentOS یا هر گزینه Systemd:
sudo systemctl restart sshd
- Ubuntu:
sudo service sshd restart
بیشتر بخوانید: آموزش نصب میکروتیک در اوبونتو در ۳ گام ساده و سریع
۴. کاهش سرویسهای غیرضروری برای افزایش امنیت
همه سرورهای لینوکس بهصورت پیشفرض شامل چندین سرویس شبکهای هستند. درحالی که اکثر این سرویسها باید فعال بمانند، اما میتوانید برخی دیگر را حذف کنید تا میزان نقاط ضعف شبکه خود را کاهش دهید. فعال کردن سرویسهایی که بهندرت استفاده میکنید، دروازه ورود را به روی مهاجمین میبندد. برای شروع، سرویسهای شبکهای در حال اجرا روی سرور لینوکس خود را با دستور زیر بررسی کنید:
sudo ss -atpu
خروجی این دستور براساس نوع توزیع لینوکس شما متفاوت است. درهرصورت، برای حذف سرویس در توزیعهای مختلف میتوانید بهصورت زیر اقدام کنید:
- در CentOS و Red Hat
$ sudo yum remove <service_name>
- در اوبونتو و دبیان
$ sudo apt purge <service_name>
پس از انجام این مرحله، دستور ss -atpu را دوباره اجرا کنید تا مطمئن شوید سرویسهای موردنظر باموفقیت از سرور لینوکس شما حذف شدند.
۵. راهاندازی یک فایروال مطمئن برای افزایش امنیت سرور لینوکس
یکی از سادهترین و محبوبترین روشها برای محافظت از یک سرور یا پایگاه داده، نصب یک فایروال است. فایروال مثل یک سپر دفاعی محکم در برابر انواع تهدیدات سایبری عمل میکند. البته انواع مختلف فایروال تنظیمات متفاوتی دارد. برای مثال، با نصب فایروال CSF و رعایت موارد امنیتی پیشنهادی توسط CSF، اجرای بدافزارها مختل خواهد شد. نحوه نصب و تنظیمات این فایروال را در مقاله زیر بررسی کردیم.
بیشتر بخوانید: آموزش نصب فایروال CSF
افزایش امنیت سرور لینوکس با فایروال مطمئن
۶. فعال کردن Fail2ban برای افزایش امنیت سرور
نرمافزار Fail2ban برای بررسی سرور مقابل حملات مکرر یا خودکار مورد استفاده قرار میگیرد. این برنامه لاگهای سرور را بررسی کرده و درصورت تشخیص نشانههای حمله، بهطور خودکار فایروال را باخبر کرده تا آدرس IP مهاجم را مسدود کند.
- برای نصب Fail2ban از دستور زیر استفاده کنید:
sudo apt install fail2ban -y
- سپس فایل پیکربندی زیر را کپی کنید:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- در نهایت، برنامه را با دستور زیر مجددا راهاندازی کنید:
sudo service fail2ban restart
۷. افزایش امنیت سرور لینوکس با احراز هویت دو مرحلهای (2FA)
احراز هویت دو مرحلهای (2FA) یک روش امنیتی پرکاربرد است که دسترسی افراد غیرمجاز به اطلاعات شخصی را دشوارتر میکند. اگر قصد دارید احراز هویت دو مرحلهای را برای سرور خود پیادهسازی کنید، کافیاست یک بسته احراز هویت نصب کنید که از کاربران بخواهد برای دسترسی به سرور لینوکس، علاوهبر رمز عبور، هویت خود را به روش دیگری نیز تایید کنند. این روش تایید هویت اضافی بهشکل یک کد QR روی دستگاه دیگری نمایش داده میشود. پیش از نصب هر بسته احراز هویت، بهتر است چندین گزینه موجود را بررسی و بستهای با سابقه امنیتی قوی انتخاب کنید.
بیشتر بخوانید: آموزش فعالسازی تائید دو مرحلهای در دایرکت ادمین
۸. محدود کردن دسترسیها برای افزایش امنیت سرور لینوکس
برای انجام این کار چند اقدام وجود دارد که به ترتیب بررسی میکنیم:
- فعال کردن open_basedir
open_basedir سیستمی است که محدودیت دسترسی به فایل ها را توسط کامپایلر php اعمال میکند تا کامپایلر php نتواند خارج از پوشه در اختیار آن، فایلهای دیگر را کنترل و به آنها دسترسی داشته باشد. این محدودیت تنها برروی کل سیستم عامل ایجاد میشود و هر کاربر تنها مجاز است دسترسی به پوشه داخلی خودش داشته باشد و نمیتواند از طریق کامپایلر به فایل های دیگر سیستم عامل دسترسی داشته باشد. دلیل آن هم خیلی ساده است. هنگامی که شما یک سرویس میزبانی اشتراکی تهیه میکنید تنها دسترسی شما به فایل های داخل پوشه /HOME/USERNAME/ است؛ یعنی شما می توانید فایل های داخل این پوشه را کنترل و مدیریت کنید و به هیچ عنوان نمی بایست به فایل های یوزر دیگری یا فایل های دیگر سیستم عامل دسترسی پیدا کنید.
- محدودسازی سایز ورودی
یکی از روش هایی که هکرها اقدام به نفوذ به سایت ها میکنند ، ارسال کدهای مخرب در بخش هایی از سایت که روی متد post از کاربر ورودی میگیرد و با محدود سازی سایز ورودی در فایل کانفیگ php از ارسال کدهای مخرب میتوان جلوگیری نمود. برای انجام این کار کد زیر را وارد کنید:
post_max_size = 1K
- محدودسازی منابع
یکی دیگر از حملاتی که به سمت سرور انجام می گیرد حملات DOS است که با محدود سازی منابع در پکت های دریافتی در فایل کانفیگ php میتوان در حد قابل توجهی از این حملات جلوگیری کرد. برای انجام این کار کد زیر را وارد کنید.
max_execution_time = 30 max_input_time = 30 memory_limit = 128M
۹. فعال یا غیرفعال کردن برخی توابع
در این مورد، نیاز است برای فعال یا غیرفعال کردن یکسری توابع اقدام کنید:
- غیرفعال کردن اجرای کد بهصورت Remote
اگر allow_url_fopen فعال باشد فانکشن های مرتبط با file مانند file_get_contents می توانند بصورت Remote از ftp و یا وب سایت اطلاعات دریافت کنند. بسیاری از برنامه نویسان فراموش میکنند تا یک فیلتر برای قسمت اطلاعات ارسالی از سمت کاربر ایجاد کنند که این باعث آسیب پذیری Injection میشود. بسیاری از آسیب پذیری Code-Injection گزارش شده مربوط به فعال بودن این تابع می باشد.
- غیرفعال کردن display_error
ارور های اسکریپت PHP شما نباید در معرض عموم قرار بگیرد تا از باگ های آن سوءاستفاده شده و نفوذ به سایت شما رخ دهد. همچنین نمایش Warning های متعدد نمایش داده شده در ابتدای صفحه سایت ظاهر خوش آیندی نیز نخواهد داشت، برای این کار باید display_error را در فایل php.ini سرور غیر فعال نمایید.
- غیرفعال کردن برخی توابع
در PHP توابع زیادی فعال می باشد و در صورتی که به درستی مورد استفاده قرار نگیرند می توانند سرور را با مشکل مواجه کنند بههمین دلیل نیاز است توابعی که ریسک امنیتی ایجاد می کنند را غیرفعال نمائید.
برخی از توابعی که غیرفعال کردن آن را توصیه میکنیم بهصورت زیر است:
shell_exec,system,passthru,exec,popen,ini_restore,popen,stream_select,socket_create,socket_create_listen,socket_create_pair,socket_listen,socket_bind,symlink,link,pfsockopen,ini_alter,dl,pcntl_exec,pcntl_fork,proc_close, proc_open,proc_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_uname
- غیرفعال کردن expose_php
یکی دیگر از روش های امن سازی سرورهایی که از زبان برنامه نویسی php استفاده می کنند مخفی نمودن نسخه php نصب شده روی سرور است. بدین منظور نیاز است expose_php را غیرفعال (off) کنید.
۱۰ . نصب ماژول ModSecurity برای افزایش امنیت سرور لینوکس
Mod_security یکی از ماژول های وب سرور آپاچی بوده که از اجرای اسکریپت های تحت وب خطرناک جلوگیری به عمل می آورد. Mod_security مانند سپری در برابر برنامه های تحت وب که قصد حمله به سرور را دارند عمل میکند و آنها را خنثی میسازد.از این برنامه ها میتوان از cross-site scripting، SQL injection و .. نام برد. این ماژول یک لایه امنیتی مقاوم به وب سرور اضافه می کند و به دلیل استفاده از نرم افزار های تحت وب گوناگون در سرور، بسیار موثر است.
۱۱. نصب آنتیویروس برای افزایش امنیت سرور لینوکس
اگر نگران امنیت سرور لینوکس خود هستید، نصب آنتیویروس ClamAV گزینهای عالی برای شماست. این نرمافزار رایگان و منبعباز، به شناسایی و قرنطینه کردن فایلهای مشکوک کمک کرده و مثل یک لایه امنیتی قوی در برابر ویروسها و بدافزارها عمل میکند. برای نصب ClamAV روی سرور لینوکس خود، کافیاست مراحل ساده زیر را دنبال کنید:
۱. ترمینال را باز کرده و وارد SSH شوید.
۲. برای نصب بستههای اضافی EPEL، دستور زیر را اجرا کنید:
sudo yum -y install epel-release
۳. حالا میتوانید با اجرای این دستور، اطلاعات کش را پاک کنید:
sudo yum clean all
۴. نوبت به نصب ClamAV رسیده است! این دستور را وارد کنید:
sudo yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
۵. منتظر پیام “Complete!” بمانید که نشان دهنده پایان نصب است.
۱۲. جداسازی پارتیشنهای دیسک در سیستم لینوکس
جداسازی فایلهای سیستم عامل از فایلهای کاربری باعث بهبود عملکرد سیستم و افزایش امنیت سرور لینوکس شما خواهد شد. مطمئن شوید فایلهای سیستم زیر روی بخشهای جداگانه تنظیم شدند:
- /usr: حاوی فایلهای اجرایی برنامهها و کتابخانهها است.
- /home: محل ذخیره فایلهای کاربری است.
- /var و /var/tmp: برای فایلهای متغیر و موقت سیستم استفاده میشود.
- /tmp: برای فایلهای موقت استفاده میشود.
پارتیشنهای جداگانهای برای ریشه سرورهای آپاچی و FTP ایجاد کنید. فایل /etc/fstab را ویرایش کنید و مطمئن شوید که گزینههای پیکربندی زیر را اضافه کردید:
- noexec: اجرای هرگونه فایل اجرایی بر روی این پارتیشن را غیرفعال میکند (اجرای فایلهای اجرایی را جلوگیری میکند اما اسکریپتها را مجاز میسازد).
- nodev: اجازه استفاده از دستگاههای کاراکتر یا ویژه را بر روی این پارتیشن نمیدهد (استفاده از فایلهای دستگاه مانند zero، sda و غیره را جلوگیری میکند).
- nosuid: دسترسی SUID/SGID را بر روی این پارتیشن تنظیم نمیکند (بیت setuid را جلوگیری میکند).
یک نمونه ورودی /etc/fstab برای محدود کردن دسترسی کاربر روی /dev/sda5 (دایرکتوری ریشه سرور FTP):
این تنظیمات کمک میکند تا امنیت سیستم شما را افزایش پیدا کرده و از دسترسیهای غیرمجاز جلوگیری کنید.
/dev/sda5 /ftpdata ext3 defaults,nosuid,nodev,noexec 1 2..
۱۳. حذف فایلهای بیصاحب برای افزایش امنیت سرور لینوکسی
در سیستمهای لینوکسی، هر فایل به یک کاربر و یک گروه تعلق دارد. این مشخصات برای مدیریت دسترسیها و مجوزها بسیار مهم هستند. گاهی ممکن است فایلی وجود داشته باشد که به هیچ یک از کاربر و گروه تعلق ندارد. این فایلهای بیصاحب ممکن است یک تهدید امنیتی جدی باشند، زیرا توسط افراد غیرمجاز دستکاری شده یا به عنوان دریچهای برای نفوذ به سیستم مورد استفاده قرار میگیرند.
برای یافتن فایلهای بی صاحب، میتوانید از دستور زیر استفاده کنید:
find /dir -xdev \( -nouser -o -nogroup \) -print
خروجی این دستور، لیستی از فایلهای بیصاحب را به شما نشان میدهد. اگر فایل موردنظر مفید است و میخواهید آن را حفظ کنید، باید مالک و گروه مناسبی برای آن تعیین کنید. برای این کار میتوانید از دستور chown استفاده کنید. به عنوان مثال، برای تغییر مالک فایل به کاربر user1 و گروه group1، میتوانید از دستور زیر استفاده کنید:
chown user1:group1 /path/to/file
اگر فایلی برای شما بیاستفاده است یا مطمئن نیستید که به آن نیاز دارید، آن را حذف کنید. برای حذف یک فایل، از دستور rm استفاده کنید. به عنوان مثال، برای حذف فایل /path/to/file، میتوانید از دستور زیر استفاده کنید:
rm /path/to/file
۱۴. بررسی سیستم با ابزار audit برای افزایش امنیت سرور لینوکس
audit ابزاری برای حسابرسی سیستم است که وظیفه ثبت فعالیتهای سیستم روی دیسک را برعهده دارد. این سرویس هنگام راهاندازی سیستم، قوانین موجود در فایل /etc/audit.rules را میخواند. شما میتوانید با ویرایش این فایل، تنظیماتی مانند محل ذخیره سازی فایلهای لاگ و سایر گزینهها را تغییر دهید.
با استفاده از audit میتوانید به سوالات زیر پاسخ دهید:
- چه زمانی سیستم روشن و خاموش شده است؟
- چه کسی مسئول انجام یک رویداد خاص بوده است؟ (مثلاً تلاش برای دسترسی به فایل /path/to/topsecret.dat)
- نوع رویداد چه بوده است؟ (ویرایش، دسترسی، حذف، نوشتن، بهروزرسانی فایل و دستورات).
- آیا رویداد با موفقیت انجام یا با شکست مواجه شده است؟
- چه کسی تاریخ و زمان سیستم را تغییر داده است؟
- چه کسی تنظیمات شبکه سیستم را تغییر داده است؟
- چه کسی اطلاعات کاربران و گروهها را تغییر داده است؟
- چه کسی تغییراتی در یک فایل ایجاد کرده است؟
۱۵. غیرفعال کردن دستگاههای USB، Firewire و Thunderbolt
برای جلوگیری از این تهدیدات، میتوانید دستگاههای USB، Firewire و Thunderbolt را در سیستم لینوکسی خود غیرفعال کنید. با انجام این کار، مهاجمان نمیتوانند بهسادگی به سیستم شما دسترسی پیدا کرده و اطلاعات شما را به خطر بیاندازند. برای غیرفعال کردن این دستگاهها، مراحل زیر را دنبال کنید:
- غیرفعال کردن دستگاههای USB:
echo 'install usb-storage /bin/true' >> /etc/modprobe.d/disable-usb-storage.conf
- غیرفعال کردن دستگاههای Firewire
echo "blacklist firewire-core" >> /etc/modprobe.d/firewire.conf
- غیرفعال کردن دستگاههای Thunderbolt
echo "blacklist thunderbolt" >> /etc/modprobe.d/thunderbolt.conf
۱۶. افزایش امنیت سرور لینوکس با افزونههای امنیتی
لینوکس مثل یک خانه امن و مطمئن برای دادههای شماست اما حتی بهترین خانهها هم به قفل و کلید محکم نیاز دارند. برای اینکه امنیت سرور لینوکستان را به بالاترین سطح برسانید، از افزونههای امنیتی میتوانید استفاده کنید. این افزونهها مثل نگهبانانی هستند که از برنامههای شما محافظت میکنند و جلوی هرگونه دستکاری یا نفوذ غیرمجاز را میگیرند.
یکی از معروفترین افزونههای امنیتی، SELinux است. SELinux مثل یک قانونگذار هوشمند عمل میکند و به هر برنامه اجازه میدهد فقط کارهایی را انجام دهد که برایش تعریف شده است؛ برای مثال، اگر یک برنامه وب فقط باید فایلهای وبسایت را بخواند و بنویسد، SELinux مانع از آن میشود که به فایلهای سیستمعامل دسترسی پیدا کند.
۱۷. بالا بردن امنیت ورود به حساب کاربری با محدود کردن تلاشهای ناموفق
در لینوکس، برای مدیریت تلاشهای ناموفق ورود به سیستم میتوانید از دستور faillog استفاده کنید. این دستور به شما امکان میدهد تا سوابق تلاشهای ناموفق ورود را مشاهده کرده و محدودیتهایی برای آن تعیین کنید. اطلاعات این سوابق از پایگاه داده یا فایل لاگ /var/log/faillog استخراج میشود. برای مشاهده تلاشهای ناموفق ورود، کافیاست دستور زیر را در ترمینال وارد کنید:
faillog
اگر بخواهید حساب کاربری یک کاربر را پس از چندین تلاش ناموفق قفل کنید، از دستور زیر میتوانید استفاده کنید:
faillog -r -u userName
به جای userName، نام کاربری موردنظر خود را وارد کنید. این دستور حساب کاربری را قفل میکند تا از دسترسی غیرمجاز جلوگیری کند.
۱۸. نظارت بر فایلهای لاگ در سرور لینوکس
با این روش میتوانید فعالیتهای غیرعادی در سیستم را شناسایی کنید. برای شروع، بهتر است فایلهای لاگ تمامی سرورهای لینوکس خود را جمعآوری و در یک مکان مرکزی قرار دهید. سپس، سیستمهایی را برای تحلیل خودکار این لاگها و نظارت مداوم بر وضعیت سیستم پیادهسازی کنید. لاگهای ورود به سیستم را بهدقت بررسی کرده تا فعالیتهای مشکوک مانند تلاشهای ناموفق برای ورود به سیستم یا دسترسی غیرمجاز به دادهها را متوجه شوید. درصورتیکه از ترکیب سرورهای فیزیکی و ابری استفاده میکنید، از ابزارهای نظارت مبتنی بر ابر نیز میتوانید بهرهمند شوید.
۱۹. محافظت از فایلها، دایرکتوریها و ایمیلها
لینوکس ابزارهای فوقالعادهای برای محافظت در برابر دسترسی غیرمجاز به دادهها ارائه میدهد. با استفاده از مجوزهای فایل و کنترل دسترسی مبتنی بر سیاست (MAC)، میتوانید از دادههای خود در برابر دسترسیهای غیرمجاز محافظت کنید.
- رمزگذاری فایلها با استفاده از GPG
برای رمزگذاری و رمزگشایی فایلها با یک کلمه عبور، میتوانید از دستور gpg استفاده کنید. این ابزار به شما امکان میدهد که فایلهای خود را بهصورت امن رمزگذاری کنید.
- حفاظت از فایلها با OpenSSL
لینوکس همچنین به شما امکان میدهد فایلها را با استفاده از ابزارهایی مانند OpenSSL رمزگذاری کنید. این روش به شما کمک میکند تا فایلهای حساس خود را از دسترسی غیرمجاز محافظت کنید.
- رمزگذاری کامل دیسک
رمزگذاری کامل دیسک یک اقدام ضروری برای تامین امنیت دادههاست و اکثر توزیعهای لینوکس از این ویژگی پشتیبانی میکنند. برای رمزگذاری دیسک سخت خود میتوانید از LUKS استفاده کنید. همچنین، مطمئن شوید فضای swap نیز رمزگذاری شده باشد.
- فوروارد کردن ایمیل روت
مطمئن شوید ایمیلهای مربوط به کاربر روت به یک حساب کاربری که بهطور منظم بررسی میکنید، فوروارد میشود. این کار به شما کمک میکند تا از هرگونه فعالیت مشکوک آگاه شوید و بهسرعت واکنش نشان دهید.
۲۰. بکاپگیری منظم برای حفظ امنیت سرور لینوکسی
پشتیبانگیری از سیستم لینوکس، یکی از مهمترین اقداماتی است که هر کاربر و مدیر سیستم باید بهطور جدی به آن توجه کند. تصور کنید سرور شما در اثر یک حمله سایبری از کار بیفتد یا اطلاعات مهم شما به دلیل یک خطای ناخواسته از بین برود. در چنین شرایطی، داشتن یک پشتیبان کامل و بهروز کلید نجات شما خواهد بود.
کلام پایانی؛ نظارت مداوم برای افزایش امنیت سرور لینوکس
افزایش امنیت سرور لینوکس یک مسیر است نه مقصد. ابزارها و تنظیمات سختافزاری لینوکس که در این مقاله بررسی کردیم، به تقویت امنیت سرورهای شما کمک خواهند کرد؛ باوجوداین، امنیت یک فرآیند مستمر است که به بررسیهای منظم، بهروزرسانی نرمافزارها و پشتیبانگیری از دادهها نیاز دارد. تلاش شما برای رعایت این موارد از بسیاری از تهدیدات امنیتی رایج جلوگیری خواهد کرد. درصورتیکه نیاز به مشاوره بیشتر در این زمینه داشتید با بخش پشتیبانی ایران سرور ۰۵۱۳۱۷۷۶ تماس بگیرید.
سوالاتی که شما میپرسید؟
1. برای افزایش امنیت سرور لینوکس چند وقت یک بار باید سیستم را بهروزرسانی کرد؟
بهروزرسانیهای امنیتی باید به محض انتشار نصب شوند. برخی توزیعهای لینوکس بهصورت خودکار بهروزرسانی میشوند اما بهتر است بهصورت دستی نیز آنها را بررسی کنید.
2. بهترین ابزار برای اسکن آسیبپذیریها کدام است؟
ابزارهای مختلفی برای اسکن آسیبپذیریها وجود دارد مانند OpenVAS، Nessus و Qualys. انتخاب بهترین ابزار به نیازها و اندازه سیستم بستگی دارد.
3. آیا استفاده از فایروال سختافزاری ضروری است؟
استفاده از فایروال سختافزاری به عنوان یک لایه امنیتی اضافی مفید خواهد بود اما برای بسیاری از سیستمها، فایروال نرمافزاری مانند iptables کافی است.
منابع