Miklix

Ubuntu сервер дээр галт хана хэрхэн тохируулах талаар

Нийтэлсэн: 2025 оны гуравдугаар сарын 19 21:29:18 (UTC)
Хамгийн сүүлд шинэчлэгдсэн: 2025 оны гуравдугаар сарын 19 22:07:44 (UTC)

Энэ нийтлэлд ufw ашиглан GNU/Linux дээр галт ханыг хэрхэн тохируулах талаар тайлбарлаж, зарим жишээг өгсөн бөгөөд энэ нь Uncomplicated FireWall гэсэн үгийн товчлол бөгөөд нэр нь таарч байгаа тул энэ нь танд шаардлагатайгаас илүү олон порт байхгүй эсэхийг шалгах маш хялбар арга юм.


Энэ хуудсыг аль болох олон хүнд хүртээмжтэй болгох үүднээс англи хэлнээс орчуулсан. Харамсалтай нь машин орчуулга нь төгс төгөлдөр технологи болоогүй байгаа тул алдаа гарч болзошгүй. Хэрэв та хүсвэл англи хэл дээрх эх хувилбарыг эндээс үзэх боломжтой.

How to Set Up a Firewall on Ubuntu Server

Энэ бичлэгийн мэдээлэл нь Ubuntu Server 14.04 x64 дээр үндэслэгдсэн. Энэ нь бусад хувилбаруудад хүчинтэй байж магадгүй, эсвэл байж магадгүй. (Шинэчилэлт: Би энэ бичлэгийн мэдээлэл нь Ubuntu Server 24.04 дээр үндсэндээ хүчинтэй бөгөөд ажиллаж байгааг баталгаажуулж чадна, гэхдээ дунд хугацаанд 10 жилийн турш, ufw нь түгээмэл серверийн програмуудын профайлтай "ухаалаг" болсон (жишээ нь, та портууд 80 ба 443-г тус тус нээх орны оронд "Nginx full"-ийг идэвхжүүлж болно) болон шинэ дүрмүүдийг хэрэгжүүлэхийн тулд галын ханаа бүхэлд нь идэвхгүй болгох/идэвхжүүлэх шаардлагагүй болсон)

BI GNU/Linux (Ubuntu) серверүүдтэй анх удаа ажиллаж эхэлсэн үед, галын хана суулгах нь iptables-ийн магадгүй нарийн тохиргоо файлыг гар аргаар үүсгэх, хадгалах шаардлагатай байсан. Гэхдээ саяхан би ufw гэж нэрлэгддэг хэрэгслийг олж мэдсэн, энэ нь Uncomplicated Firewall (Тохиргоог хялбаршуулах галын хана) гэсэн утгатай – үнэхээр тийм шүү :-)

Ubuntu Server 14.04-ийг суулгасан маань аль хэдийн ufw суулгасан байсан, харин таньд байхгүй бол зүгээр л репозиториос суулгах боломжтой:

sudo apt-get install ufw

UFW нь үндсэндээ iptables тохиргоог хялбарчилдаг хэрэгсэл бөгөөд дэлгэцийн ард iptables ба Linux ядрын галын хана шүүлтүүрийг хийхэд оршино, иймээс ufw нь эдгээрээс аюулгүй эсвэл аюулгүй биш юм. Гэхдээ ufw нь галын ханаа зөв тохируулахад маш хялбар болгодог тул хүний алдааг багасгах боломжтой бөгөөд энэ нь туршлагагүй администраторуудын хувьд илүү аюулгүй байж болно.

Хэрэв таны сервер IPv6 болон IPv4-ийг хоёуланг нь тохируулаад байгаа бол, энэ нь UFW-д ч мөн идэвхжсэн байгаа эсэхийг шалгах хэрэгтэй. /etc/default/ufw файлыг засаж, IPV6=yes гэсэн мөрийг хайж үзнэ үү. Миний суулгалт дээр аль хэдийн байсан, гэхдээ хэрэв байхгүй эсвэл "no" гэж бичигдсэн бол, та үүнийг засах ёстой

Дараа нь зүгээр л командын мөр ашиглан нээхийг хүсч буй портуудыг идэвхжүүлнэ үү. Хэрэв та ssh-ээр серверт холбогдсон бол, үүнийг ч бас зөвшөөрөхийг санаарай эсвэл энэ нь таны холболтыг тасалдуулж, серверт нэвтрэх боломжийг хязгаарлах магадлалтай – хэрэв та сервер рүү биечлэн нэвтрэх боломжтой бол энэ нь эвгүй байж магадгүй ;-)

Жишээлбэл, хэрэв та ssh-ийг стандарт портууд 22-оор ашиглаж, заавал шифрлээгүй (HTTP порт 80) болон шифрлэсэн (HTTPS порт 443) холболтуудыг дэмждэг веб серверийг тохируулж байгаа бол, та ufw тохируулахын тулд дараах командуудыг гүйцэтгэнэ үү:

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Хэрэв танд илүү олон дүрэм хэрэгтэй бол, зүгээр л дээрх шиг нэмнэ үү.

Хэрэв танд статик IP хаяг байгаа бөгөөд зөвхөн нэг газар ssh-ээр холбогдох шаардлагатай бол, та ssh холболтуудыг нэг эх сурвалж хаяг руу хязгаарлаж болно:

sudo ufw allow from 192.168.0.1 to any port 22

Мэдээж, өөрийн IP хаягаа оруулаарай.

Дууссаны дараа, ufw-г идэвхжүүлэхийн тулд дараах командыг оруулна уу:

sudo ufw enable

Тэгээд дууссан! Галын хана ажиллаж эхэлсэн бөгөөд серверээ дахин асаах үед автоматаар эхлэх болно :-)

Хэрэв та ufw тохиргоонд өөрчлөлт оруулсан бол, үүнийг хүчинтэй болгохын тулд дахин идэвхгүй болгох, идэвхжүүлэх шаардлагатай байж болно, ингэж:

sudo ufw disable
sudo ufw enable

Одоогийн тохиргоог харахын тулд, зүгээр л дараах командыг оруулна уу:

sudo ufw status

Хэрэв ufw идэвхгүй бол, энэ нь зүгээр л "идэвхгүй" гэсэн мессежийг харуулах бөгөөд бусад тохиолдолд одоогийн тодорхойлсон дүрмүүдийг жагсаах болно.

Bluesky дээр хуваалцаарайFacebook дээр хуваалцахLinkedIn дээр хуваалцахTumblr дээр хуваалцахX дээр хуваалцаарайLinkedIn дээр хуваалцахPinterest дээрх пин

Миккел Кристенсен

Зохиогчийн тухай

Миккел Кристенсен
Миккел бол miklix.com сайтыг бүтээгч, эзэмшигч юм. Тэрээр мэргэжлийн компьютерийн программист/програм хангамж хөгжүүлэгчээр 20 гаруй жил ажилласан туршлагатай бөгөөд одоогоор Европын томоохон мэдээллийн технологийн корпорацид бүтэн цагаар ажиллаж байна. Блог хөтлөөгүй үедээ тэрээр чөлөөт цагаа олон төрлийн сонирхол, хобби, үйл ажиллагаанд зарцуулдаг бөгөөд энэ нь энэ вэб сайтад багтсан олон янзын сэдвүүдэд тодорхой хэмжээгээр тусгагдсан байж магадгүй юм.