SSH ба VPN-ийн оролтын дүрэм: зөвшөөрлийн жагсаалт үнэхээр юуг удирддаг
Клиентээс хост хүртэлх нэг холболтыг дага: аль дэгээг туулж, яагаад гацах ба татгалзах нь өөр дүрэм гэсэн үг, яагаад татгалзах нь хэзээ ч бодлого биш.
Дүрэм өөрчлөхөөс өмнө нэг удаа холбогдож, клиент гацаж байгаа эсвэл шууд татгалзаж байгааг тэмдэглэ. Тэр ганц ялгаа нь аль шийдвэр пакетыг хаясныг хэлж, бодлогын файл уншихад шаардагдах нэг цагийг хэмнэнэ. Үлдсэн зам богино: пакет дэгээг туулж, дүрэмтэй таарч, сонсогчдод хүрнэ эсвэл хүрэхгүй. Зөвшөөрлийн жагсаалт бол тэр гурван баримтыг тойрсон бүртгэл л юм.
Нэг SSH оролдлогыг оролтын дэгээ хүртэл дага
Клиент хосттын хаяг руу 22 портоор SYN илгээж, цөм тухайн пакет локал үйлчилгээнийх эсэхийг шийднэ. Хэрэв тийм бол оролтын зам ажиллаж, дүрмийн багц пакетыг хүлээн авна эсвэл хаяна. Чимээгүй байдал нь SYN сонсогч үүнийг харахаас өмнө үхсэнийг илэрхийлнэ, харин хурдан татгалзал нь ямар нэгэн зүйл дахин тохируулгаар хариулсныг илэрхийлнэ. Эдгээр нь өөр дүрмүүдийн өөр дүгнэлтүүд бөгөөд хоёулаа хууль ёсны үр дүн юм.
Дараа нь сонсогчийг баталгаажуул, учир нь байхгүй үйлчилгээг ямар ч дүрэм аварч чадахгүй. ss -ltnp ажиллуулж, хүлээж буй порт болон хаягийн гэр бүлд ямар нэгэн зүйл холбогдсон эсэхийг шалга, дараа нь клиент дээр ssh -v уншиж хаана зогсож байгааг хар.
Дамжуулалт нь тусдаа шийдвэр
VPN сервер дээр илүү сонирхолтой дэгээ бол forward, учир нь клиентийн урсгал машинд хүргэгдэхийн оронд түүгээр дамжин чиглэнэ. Зөвхөн өөрийн VPN клиентийг ажиллуулдаг хост бусдын пакетыг дамжуулдаг хостоос хамаагүй бага дүрмийн багц шаардана. Хоёр загварыг нэг машин дээр хольсон нь зөв харагдах боловч юу ч нэвтрүүлэхгүй дүрмүүдийг үүсгэдэг.
Дотоод бодлогыг тусдаа асуулт болгон бич: аль клиентийн хаягууд туннелээр аль очих газруудад хүрч чадах вэ. Захиргааны замыг, жишээ нь SSH-ийг, өөрийн эх сурвалжийн хязгаарлалттайгаар оролтын зам дээр байлга. Туршилтын үеэр нэмсэн зөвшөөрөх forward дүрэм нь туршилтаас урт насалдаг сонгодог алдаа тул өөрчлөлтийн дараа өөрөө зассан нэг мөрийг биш бүх багцыг хяна. Туннелийн сонсогчийг нээх нь холбогдсон бүр клиентэд хосттыг удирдах зөвшөөрөл биш.
Хаях ба татгалзах нь үйлдэл, бодлого биш
Суурь гинжин хэлхээний бодлого хүлээн авна эсвэл хасна, мөн сонголтын бүрэн жагсаалт энэ, гэж nftables-ийн гарын авлага хэлдэг. Татгалзал нь сонгосон хариулттай дүрмийн үйлдэл болж оршдог тул үүнийг бодлого болгон бичих нь nftables болон iptables дээр хоёуланд нь бүтэлгүйтдэг. Практикт drop нь клиентэд ямар ч мэдээлэл өгөхгүй, харин reject нь түүнд ажиллаж болох алдаа өгдөг.
table inet admin {
chain input {
type filter hook input priority filter; policy drop;
ct state established,related accept
ip saddr 203.0.113.0/28 tcp dport 22 accept
udp dport 51820 accept
icmp type { destination-unreachable, time-exceeded } accept
}
}
Тэр нооргийг наах файл биш, шийдвэрийн хэлбэр гэж унш, учир нь хаягийн мужууд жишээ юм. SSH порт дээрх тодорхой reject нь эрхгүй клиентийг хугацаа хүлээхийн оронд нэг секундэд бүтэлгүйтүүлж, өөрийн дибаг хийх хугацааг богиносгодог. Чимээгүй байдал санамсаргүй скан хийхийг хориглож, эрх бүхий хэрэглэгчид огт юу ч хэлэхгүй. Үйлчилгээ тус бүрээр сонгож, шалтгааныг бич, эс бөгөөс дараагийн хүн буцааж өөрчилнө.
Үнэхээр хэрэгтэй хяналтын урсгалаа хадгал
Бүх ICMP-г блоклох нь замын MTU илрүүлэлтийг эвддэг түгээмэл анхдагч бөгөөд шинж тэмдэг нь холболт тогтсоны дараа том пакетуудад гацах явдал юм. IPv6 дээр хөршийн илрүүлэлт өөрийн ICMPv6 төрлүүдээс хамаардаг бөгөөд тэдгээрийг хаях нь ямар ч TCP дүрэм харагдахаас өмнө холбоосыг эвддэг. Хоёулаа ерөнхий зөвшөөрөл биш, нэрлэсэн хамаарал хэлбэрээр зөвшөөрлийн жагсаалтад багтана. Илрүүлэлтийг чимээгүй эвддэг бодлого нь бага зэрэг диагностикийн урсгал зөвшөөрдөг бодлогоос дор.
Өөрөө эхлүүлсэн холболтуудад established ба related төлөвийг зөвшөөрч, хариултыг төлөв мэддэг хөдөлгүүрт үлдээ. Дараа нь хариултын зам цааш блоклогдоогүй эсэхийг баталгаажуул, учир нь зөвхөн гарах урсгалд тавьсан дээд хязгаарлалт нь хосттыг буруутгах гэж байсан тэр хугацааг үүсгэдэг.
Хуучин замаас татгалзахаас өмнө сэргэлтийг нотол
Консолын сессийг нээлттэй байлгаж, өөрчлөлтийг хэрэглэ, өөр терминалаас цоо шинэ удирдлагын холболт нээ. Одоо байгаа сессис юу ч нотлохгүй, учир нь шинэ нэвтрэлт бүрийг блоклодог дүрмээс тэр амьд үлдэж болох бөгөөд энэ нь галт ханын ажилд хамгийн итгэлтэй хуурамч эерэг болгодог. Хяналтын систем хосттыг шалгадаг бол эхний анхааруулгын дараа биш, өөрчлөлтийн өмнө түүний эх хаягийг нэм. Дараа нь нэг том, нэг жижиг пакет туршиж, илрүүлэлт одоо ч ажиллаж байгааг нотол.
VPN үйлчилгээний хувьд хэзээ ч холбогдоогүй клиентээс давтан хий, учир нь үргэлжилсэн сессис шинэ сессис тохиролцох ёстой төлөвийг дахин ашиглаж болно. Тэнцсэн дүрмийн багцыг яг таг, шалгах нийлбэр эсвэл хуулбарын хамт бичиж, дараагийн засварыг таамаглахын оронд харьцуул. Дүрмийн дарааллын эзэнтэй зохиц, учир нь өмнөх дүрэм таны нэмсэн дүрмийг чимээгүй ялдаг.