-o tun+ yazmaq dəqiq bir göstəriş kimi səslənir, amma əslində kernelin malik olduğu bütün tunellərə şamil olunan ümumi uyğunluqdur. İkinci VPN klienti, konteyner körpüsü və ya dağılmış sessiyadan qalmış interfeys — hamısı bu şərti ödəyir, və host sonra siyasətin qarşısını almaq üçün yazıldığı trafikə icazə verir. Aşağıdakı təlimat bir cihaz adını sabitləyir, istisnaları tunelin həqiqətən qurulması üçün sıralayır və qaydalar pis düşərsə geri qayıtma yolu buraxır. Hər addım təkbaşına ləğv edilə biləcək qədər qısadır.

Addım 1: indiki qaydaları qeyd et

Standart siyasəti dəyişməzdən əvvəl cari vəziyyəti saxla ki, geri qaytarma yaddaş deyil, əmr olsun. iptables-save > /root/iptables.pre hər cədvəli bərpa edə biləcəyin fayla yazır, və tətbiq etmək üzrə olduğun siyasət onu daşıyan bağlantını kəsəndə açıq root sessiyası olan ikinci terminal paranoiya deyil. Uzaqdan işləyirsinizsə, əlavə olaraq ölü adam açarı kimi bir flush planlaşdırın.

Sonra interfeysləri sadala, çünki güman etdiyin ad oxumalı olduğun addır: ip -br link hazırda nəyin mövcud olduğunu göstərir, və tunel qalxmayana qədər görünməyəcək. Cihaz adlarını oxuduğun kimi yaz.

Addım 2: tunelə öz adını ver

OpenVPN müştəri konfiqurasiyasında dev tun_work qəbul edir, və Linux sonra tun0 ayırmaq əvəzinə məhz həmin adla interfeys yaradır. Başqa heç nə ona iddia etmədiyi müddətcə ad yenidən qoşulmalar arasında sabit qalır, cihazı adlandıran qaydanı mənalı edən də budur.

Adı idarə etmək mümkün olmayan yerlərdə tunel ünvanına və ya paket işarəsinə uyğunlaşdır. İkisi də işləyir, ikisi də oxumaq baxımından çətindir və tunel nömrələməni dəyişəndə ikisi də daha səssiz uğursuz olur. Hər halda bir şeyə uyğunlaşdır və hansı olduğunu açıq de.

Addım 3: siyasəti əvvəlcə endpoint istisnası ilə yaz

Yalnız VPN hostu qısa istisna siyahısı olan standart-rədd hostudur, və ən çox əhəmiyyət kəsb edən istisna tunelin mövcud olmasına imkan verəndir. Onu bu ardıcıllıqla qur, endpoint qaydası tunel-cihaz qaydasından əvvəl olsun ki, əl sıxma gedəcək yer tapsın:

# allow the tunnel to be built, then everything the tunnel carries
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -A INPUT  -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -d 198.51.100.7 -p udp --dport 1194 -j ACCEPT
iptables -A OUTPUT -o tun_work -j ACCEPT
iptables -A INPUT  -i tun_work -j ACCEPT
iptables -A INPUT  -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Endpoint ünvanı və portu hərfi olaraq sənin provayderinə aiddir, bu səhifəyə yox. Əgər endpoint host adıdırsa, onu bir dəfə həll et və nəticəni sabitlə, çünki qayda ad axtara bilməz və dəyişən cavab növbəti DNS dəyişikliyindən sonra siyasəti səssizcə poza bilər. Portu da yoxla, çünki səni TCP 443-ə keçirən provayderlər əks halda heç kimin yazmadığı bir qaydaya ehtiyac duyacaq. Yalnız bir protokolda işləyən tunel adətən firewall nasazlığı deyil, məhz bu buraxılmadır.

Routerdə eyni forma arxasındakı müştərilər üçün FORWARD zəncirinə keçir, və routerin öz trafiki öz qaydalarını tələb edir. Yalnız yönləndirilmiş paketləri əhatə edən qaydalar dəsti SSH və DNS-i köhnə yolda qoyur, router də tunel qalxan anda məhz belə əlçatmaz olur.

Addım 4: yalnız mövcudluğu deyil, sıranı yoxla

Qaydalar ardıcıllıqla qiymətləndirilir, ona görə daha əvvəl gələn ACCEPT sonradan əlavə etdiyin REJECT-i sadəcə gizlədir. established və related uyğunluğu ümumi giriş yolu açmadan öz çıxan sorğularına cavabların qayıtmasına imkan verir, və onu tunel qəbulundan sonra yerləşdirmək düşmüş tunelin öz interfeysində qayıdış trafikini yenə keçirməsi deməkdir.

Qayda sayını bir ekranda oxunacaq qədər kiçik saxla. Audit edə bilmədiyin qaydalar dəstini yuxarıya istisnalar əlavə etməklə yamaqlayacaqsan, standart-rədd siyasətləri də zamanla məhz belə standart-icazə kənarı qazanır. Dəyişiklikdən əvvəl və sonra ACCEPT-ləri say.

Addım 5: onu açılışa və ünvan ailəsinə dözümlü et

Əllə daxil edilən qaydalar yenidən başlatmada yox olur, ona görə onları distributivin firewall xidmətindən və ya tunel interfeysi mövcud olduqdan sonra işləyən unit-dən yüklə. OpenVPN başlamazdan əvvəl icra olunan skriptdə tun_work-ə istinad etmək düşmüş trafikdən ibarət açılış dövrəsi yaratmağın geniş yayılmış yoludur.

Sonra IPv6-nı ayrıca yoxla, çünki yaxşı IPv4 standart-rədd siyasəti digər ailə haqqında heç nə demir. ip -6 route hostun yalnız IPv4 ilə işləyən tunelin ətrafından trafik daşıya biləcək marşrutu olub-olmadığını söyləyəcək, ip6tables və ya nftables isə öz ekvivalent qaydalarını tələb edir. Qaydalar dəstinin simmetriyasına güvənmək əvəzinə IPv6-only hədəflə sına.

Addım 6: yoxla və bərpaya hazır ol

Tuneli qaldır, nəzərdə tutduğun xidmətin işlədiyini təsdiqlə, sonra siyasətin rədd etməli olduğu bir şeyi yoxla. Cavab səni təəccübləndirirsə iptables-restore < /root/iptables.pre ilə bərpa et və yalnız ondan sonra qaydaları redaktə etməyə başla. Davamlılıq üstəgəl sınanmış bərpa yolu bunu iki dəfə edə biləcəyin dəyişikliyə çevirir.

Əlaqəli məqalələr