UFW (Uncomplicated Firewall) ابزار پیشفرض پیکربندی فایروال در اوبونتو است که کار با iptables را ساده میکند. ویکی Community Help میگوید UFW بهصورت پیشفرض غیرفعال است و پس از روشنشدن، پروفایل پیشفرض برای کاربر خانگی مناسب در نظر گرفته شده: ورودی deny و خروجی allow، با چند استثنا.
پیشنیاز حیاتی روی سرور از راه دور
- قبل از enable: روی VPS یا هر ماشینی که فقط از SSH مدیریت میکنید، ابتدا دسترسی SSH را allow کنید تا نشست قطع نشود.
- الگوی رایج: sudo ufw allow 22/tcp یا allow با نام سرویس از /etc/services.
- ترتیب ایمن: اول allow برای SSH، بعد enable، بعد status verbose. برعکس این ترتیب یکی از علتهای رایج قفلشدن دسترسی مدیریتی است.
روشنکردن و دیدن وضعیت
- اگر از راه دور وصل هستید، ابتدا SSH را مجاز کنید:
sudo ufw allow 22/tcp
- فایروال را روشن کنید:
sudo ufw enable
- وضعیت پرجزئیات را ببینید:
sudo ufw status verbose
خروجی نمونه در ویکی شامل Status: active، Logging: on (low)، و Default: deny (incoming), allow (outgoing) است.
- برای خاموشکردن موقت فقط در عیبیابی کوتاه:
sudo ufw disable
قوانین خام را با sudo ufw show raw یا پروندههای /etc/ufw ببینید.
باز و بستهکردن پورت و حذف قانون
- sudo ufw allow <port>/<protocol> — مثال allow 53 یا allow 53/tcp
- sudo ufw deny ... با همان شکل برای بستن
- حذف با پیشوند delete روی همان قانون؛ مثال اگر ufw deny 80/tcp بوده: sudo ufw delete deny 80/tcp
UFW نام سرویسها را از /etc/services میخواند؛ بنابراین allow/deny با نام سرویس هم ممکن است. برای فهرست شمارهدار قوانین، sudo ufw status numbered در بخش پیشرفتهٔ همان ویکی آمده و ویرایش یا حذف شمارهای را سادهتر میکند.
چکلیست امن برای اولینبار
- روی VPS ابتدا SSH را allow کنید، بعد enable.
- status verbose را برای تأیید deny ورودی بخوانید.
- فقط پورتهای لازم (مثلاً ۸۰/۴۴۳ برای وب) را باز کنید.
- قانون اشتباه را با delete و همان متن قانون بردارید.
- disable را فقط برای عیبیابی کوتاه نگه دارید.
مرجع نحو و مثالها در UFW - Ubuntu Community Help Wiki است. روی دسکتاپ خانگی UFW را روشن میگذارید یا فقط روی سرور؟