CSF یاConfigServer Security & Firewall یک فایروال مبتنی بر iptables است که امنیت سطح بالایی را به سیستم لینوکس ارائه میدهد. CSF شامل یک مجموعه گسترده از ویژگیها مانند مسدود کردن IP، مسدود کردن پورت و محافظت در برابر حملات DDoS است. همچنین اقدامات امنیتی پیشرفتهای مانند محدودیت نرخ، پیگیری اتصال و شناسایی ورود SSH را پشتیبانی میکند. علاوه بر ویژگیهای فایروال، CSF ابزارهایی برای بررسی صحت سیستم و فایل، پیگیری ایمیل و ورود به سیستم را نیز شامل میشود.
مرحله 1: بهروزرسانی سیستمعامل
سیستمعامل AlmaLinux 9 خود را بهروز کنید تا اطمینان حاصل شود که تمام بستههای موجود بهروز هستند:
dnf update
همچنین، نصب کنید:
dnf install wget nano tar
مرحله 2: غیرفعالسازی firewalld و هر فایروال iptables دیگر
دستور زیر را اجرا کنید تا سرویس firewalld را متوقف و غیرفعال کنید:
systemctl stop firewalld
systemctl disable firewalld
مرحله 3: نصب ماژولهای Perl موردنیاز برای CSF
ماژولهای Perl زیر را که توسط CSF نیاز هستند نصب کنید.
dnf install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch perl-GDGraph
اگر برخی از ماژولها در مخزن پیشفرض موجود نباشند، مخزن epel را با استفاده از دستور زیر نصب کنید:
dnf install epel-release
سپس دوباره سعی کنید ماژولها را نصب کنید.
مرحله 4: دانلود CSF
بهطور پیشفرض، CSF در مخزن استاندارد AlmaLinux موجود نیست، بنابراین باید آن را از وبسایت رسمی آن دانلود کنید.
wget https://download.configserver.com/csf.tgz
با دستور زیر فایل را استخراج کنید:
tar xzf csf.tgz
به دایرکتوری استخراجشده تغییر دهید:
cd csf
CSF را با اجرای اسکریپت نصب کنید:
sh install.sh
سپس میتوانید با استفاده از دستور زیر حالت iptables را بررسی کنید.
perl /usr/local/csf/bin/csftest.pl
شما باید خروجی زیر را مشاهده کنید:
Testing ip_tables/iptable_filter…OK
Testing ipt_LOG…OK
Testing ipt_multiport/xt_multiport…OK
Testing ipt_REJECT…OK
Testing ipt_state/xt_state…OK
Testing ipt_limit/xt_limit…OK
Testing ipt_recent…OK
Testing xt_connlimit…OK
Testing ipt_owner/xt_owner…OK
Testing iptable_nat/ipt_REDIRECT…OK
Testing iptable_nat/ipt_DNAT…OK
RESULT: csf should function on this server
مرحله 5: پیکربندی CSF
CSF به طور پیشفرض در حالت تست اجرا میشود. برای غیرفعال کردن آن، باید فایل /etc/csf/csf.conf را ویرایش کنید.
nano /etc/csf/csf.conf
خط TESTING = 1 را پیدا کرده و مقدار آن را به 0 تغییر دهید در غیر اینصورت دیمن LFD نمیتواند شروع شود.
"TESTING = "0
خط RESTRICT_SYSLOG = 0 را پیدا کرده و مقدار آن را به 3 تغییر دهید. این به معنای این است که تنها اعضای گروه RESTRICT_SYSLOG_GROUP میتوانند به فایلهای syslog/rsyslog دسترسی داشته باشند.
"RESTRICT_SYSLOG = "3
همچنین، میتوانید بر اساس نیاز ورودی و خروجی پورتها را مجاز کنید:
Allow incoming TCP ports
"TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995
Allow outgoing TCP ports
"TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995
وقتی تمام پیکربندیها را انجام دادید، CSF را ریستارت و فعال کنید:
systemctl restart csf && systemctl restart lfd
systemctl enable csf && systemctl enable lfd
systemctl status csf && systemctl status lfd
مرحله 6: فعالسازی رابط کاربری گرافیکی CSF
بهطور پیشفرض، آن در پیکربندی پیشفرض CSF غیرفعال است، بنابراین ابتدا باید آن را فعال کنید. برای فعالسازی رابط کاربری گرافیکی CSF باید بخش رابط کاربری یکپارچه را در فایل پیکربندی csf.conf تنظیم کنید.
فایل کانفیگ اصلی CSF را با دستور زیر باز کنید:
nano /etc/csf/csf.conf
خطوط زیر را تغییر دهید:
###########################
SECTION:Integrated User Interface
###########################
1 to enable, 0 to disable web ui
"UI = "1
Set port for web UI. The default port is 6666.
"UI_PORT = "8888
Leave blank to bind to all IP addresses on the server
"UI_IP = "your-IP
Set username for authetnication
"UI_USER = "admin
Set a strong password for authetnication
"UI_PASS = "Test@12345
در مرحله بعد باید IP از جایی که قصد دارید به رابط کاربری گرافیکی CSF دسترسی پیدا کنید را مجاز کنید. میتوانید تمامی زیرشبکه را مجاز کنید یا همچنین میتوانید برخی IP Address خاص را مجاز کنید مانند زیر:
echo "YOUR_PUBLIC_IP_ADDRESS" >> /etc/csf/ui/ui.allow
سپس سرویسهای CSF و LFD را برای اعمال تغییرات مجددا راهاندازی کنید.
systemctl restart csf
systemctl restart lfd
مرحله 7: دسترسی به رابط کاربری وب CSF
مرورگر وب خود را باز کنید و URL https://آدرس-IP-سرور-شما:8888 را وارد کنید. شما به صفحه ورود CSF هدایت میشوید، نام کاربری و رمز عبور ادمین خود را وارد کرده و بر روی دکمه ورود کلیک کنید.
شما باید داشبورد زیر را مشاهده کنید:
مرحله 8: مدیریت CSF از طریق خط فرمان
برای فهرست کردن تمام قوانین دیوار آتشین، دستور زیر را اجرا کنید:
csf -l
برای متوقف کردن CSF، دستور زیر را اجرا کنید:
csf -s
برای اجازه دادن یک آدرس IP خاص، دستور زیر را اجرا کنید:
csf -a IP-address
برای مسدود کردن یک آدرس IP، دستور زیر را اجرا کنید:
csf -d IP-address
برای حذف آدرس IP مسدود شده از یک قانون CSF، دستور زیر را اجرا کنید:
csf -dr IP-address
برای تأیید اینکه آیا آدرس IP مسدود شده است یا خیر، دستور زیر را اجرا کنید:
csf -g IP-address
برای تخلیه قوانین دیوار آتشین CSF، دستور زیر را اجرا کنید:
csf -f
برای غیرفعال کردن CSF، دستور زیر را اجرا کنید:
csf -x
مرحله 9: حذف CSF و LFD از AlmaLinux
برای حذف CSF و LFD از سیستم خود، اسکریپت زیر را اجرا کنید.
sh /etc/csf/uninstall.sh
فهرستی از فایلهای پیکربندی مهم CSF
در زیر، فایلهای پیکربندی مهمی که بیشترین قوانین CSF را کنترل میکنند آمده است.
csf.conf - فایل پیکربندی اصلی، دارای توضیحات مفید در مورد عملکرد هر گزینه
csf.allow - فهرستی از IP و آدرسهای CIDR که همیشه فایروال به آن اجازه خواهد داد
csf.deny - فهرستی از IP و آدرسهای CIDR که هرگز فایروال نباید به آن ها اجازه عبور دهد
csf.ignore - فهرستی از IP و آدرسهای CIDR که باید lfd آنها را نادیده بگیرد و در صورت شناسایی، بلاک نکند
csf.*ignore - فایلهای مختلف ignore که فایلها، کاربران، IP ها را لیست میکنند که lfd باید آنها را نادیده بگیرد.
اگر بهطور دستی فایلها را تغییر دهید، باید csf را مجددا راهاندازی کنید و سپس lfd را برای اجرای تغییرات مجددا راهاندازی کنید.
شما با موفقیت دیوار آتشین CSF را نصب کردید. از استفاده از این آموزش برای نصب ConfigServer Security & Firewall (CSF) در سیستمعامل AlmaLinux 9 خود متشکریم. برای کسب اطلاعات بیشتر یا کمک اضافی، میتوانید به وبسایت رسمی دیوار آتشین CSF مراجعه کنید.
امیدواریم این آموزش به شما کمک کرده باشد تا نحوه نصب و پیکربندی CSF در AlmaLinux 9 را یاد گرفته باشید. در صورتی که درباره این آموزش به مشکل یا سوالی برخورد کردید، میتوانید آن را در بخش دیدگاه بیان کنید.
آموزش های مرتبط: