# 🔐 ۱۳ نکته امنیتی برای افزایش امنیت وبسرور Apache
وبسرور Apache یکی از پرکاربردترین وبسرورها در سطح جهان است. بهدلیل همین محبوبیت، هدف اول بسیاری از حملات سایبری نیز هست. در این مقاله، ۱۳ اقدام کلیدی برای **افزایش امنیت، کاهش سطح حمله، و سختسازی پیکربندی Apache** معرفی میشود.
---
## 1. 🎭 پنهانسازی نسخه Apache و سیستمعامل
برای جلوگیری از ارائه اطلاعات حساس در هدرهای HTTP:
### تنظیمات:
فایل تنظیمات امنیتی را ویرایش کنید:
```bash
sudo nano /etc/apache2/conf-available/security.conf # در Ubuntu/Debian
# یا
sudo nano /etc/httpd/conf/httpd.conf # در RHEL/CentOS
```
اضافه کنید:
```apache
ServerSignature Off
ServerTokens Prod
```
---
## 2. 🔒 فعالسازی HTTPS با SSL/TLS
برای رمزنگاری دادههای بین کلاینت و سرور از SSL استفاده کنید.
### استفاده از Let's Encrypt:
```bash
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
```
---
## 3. ⛔ محدودسازی روشهای HTTP ناامن
مانند `TRACE`, `PUT`, `DELETE`:
```apache
<LimitExcept GET POST HEAD>
Require all denied
</LimitExcept>
```
---
## 4. 🚫 غیرفعالسازی Directory Listing
برای جلوگیری از نمایش محتویات دایرکتوریها:
```apache
<Directory /var/www/html>
Options -Indexes
</Directory>
```
---
## 5. 🔍 حذف یا غیرفعالسازی ماژولهای غیرضروری
با کاهش ماژولها، سطح حمله نیز کاهش مییابد.
### بررسی ماژولهای فعال:
```bash
apache2ctl -M
```
### غیرفعالسازی در Ubuntu:
```bash
sudo a2dismod status
```
---
## 6. 📛 محدودیت در اندازه درخواستها
جلوگیری از حملات DoS و Buffer Overflow:
```apache
LimitRequestBody 1048576 # 1MB
```
---
## 7. 🧱 ایزولهسازی سایتها با Virtual Hosts مجزا
هر سایت در مسیر خاص با دسترسی کاربر محدود اجرا شود:
```bash
/var/www/site1/html
/var/www/site2/html
```
---
## 8. 🛡️ نصب و پیکربندی mod\_security
فایروال سطح اپلیکیشن برای مقابله با XSS، SQLi و غیره:
```bash
sudo apt install libapache2-mod-security2
sudo a2enmod security2
sudo systemctl restart apache2
```
---
## 9. 🧨 نصب و پیکربندی mod\_evasive
برای دفع حملات DDoS و درخواستهای مکرر:
```bash
sudo apt install libapache2-mod-evasive
```
فایل پیکربندی:
```apache
<IfModule mod_evasive20.c>
DOSPageCount 5
DOSPageInterval 1
DOSBlockingPeriod 10
DOSLogDir "/var/log/mod_evasive"
</IfModule>
```
---
## 10. 🕵️♂️ فعالسازی Logging و مانیتورینگ
برای تشخیص رفتارهای مشکوک:
```apache
CustomLog /var/log/apache2/access.log combined
ErrorLog /var/log/apache2/error.log
```
---
## 11. 📥 محدودسازی دسترسی به فایلهای حساس
مانند `.htaccess`, `.git`, یا پشتیبانها:
```apache
<FilesMatch "(\.git|\.env|\.htaccess|\.bak|\.backup)$">
Require all denied
</FilesMatch>
```
---
## 12. 📊 استفاده از ابزارهای امنیتی سیستم مانند Fail2Ban
برای تحلیل لاگها و مسدود کردن آیپیهای مشکوک:
```bash
sudo apt install fail2ban
```
فعالسازی jail برای Apache در `/etc/fail2ban/jail.local`.
---
## 13. 🔄 بهروزرسانی مرتب Apache و سیستمعامل
همیشه از نسخههای بهروز استفاده کنید:
```bash
sudo apt update && sudo apt upgrade
# یا در CentOS
sudo yum update
```
---
## ✅ جمعبندی
با اجرای این ۱۳ توصیه امنیتی، سطح حفاظت وبسرور Apache شما بهشدت افزایش مییابد و میتوانید با خیال راحتتری سرویسدهی کنید. امنیت وبسرور مانند یک زره چندلایه است و رعایت این نکات، پایههای این زره را میسازد.