Linux hostunun yalnız öz SMTP trafikini tuneldən çıxarması üçün dörd şey üst-üstə düşməlidir: ayrılmış cədvəldə marşrut, trafiki seçən siyasət qaydası, peer-in qəbul edəcəyi mənbə ünvanı və asimmetriyaya dözən geri dönüş yolu. Hər biri öz uğursuzluq rejimi olan ayrı konfiqurasiyadır. Aşağıdakı sıra uğursuzluğu həqiqətən səhv olan hissəyə yönəldən sıradır. Bu, porta xas marşrutlaşdırma işidir, VPN defolt marşrutu tələbi deyil.

Port qaydası defolt marşrut deyil

Lokal yaradılmış TCP-ni təyinat portu 25 ilə uyğunlaşdıran qayda bu trafiki adını verdiyiniz cədvələ göndərir. Qayda özü heç nə yaratmır: o seçir, cədvəl isə paketi daşıya bilən marşrut saxlamalıdır. İkisini birləşdirmək yalnız bir protokolun çıxan istiqamətini əhatə edir, ona görə digər hostlar üçün forwardinq, gələn poçt bağlantıları və IPv6 bu düzənin xaricində qalır. Bunu VPN defoltu deyil, porta xas siyasət adlandırmaq bu sərhədi dürüst saxlayır.

İki wg-quick ayarı siyasətin hissəsi deyil, ilkin şərtdir. AllowedIPs = 0.0.0.0/0 peer-in ixtiyari IPv4 təyinatlarını daşımasına imkan verir, Table = off isə wg-quick-in həmin prefiks üçün öz defolt marşrutunu quraşdırmasının qarşısını alır. Bu təlimatları öz marşrut siyasətini tətbiq edən menecerlə qarışdırmayın, çünki ikisi əsas cədvəlin kimə aid olduğunda razılaşmayacaq.

Marşrutu, seçicini və qoruyucunu yazın

Başqa heç nənin istifadə etmədiyi cədvəl nömrəsi və bir cüt prioritet seçin, sonra marşrutu, seçicini və qoruyucunu bu sıra ilə tətbiq edin. Aşağıdakı nömrələr nümunədir, ayrılmış dəyərlər deyil:

ip -4 route add default dev wg0 src 10.77.0.2 table 51825
ip -4 rule add priority 10000 iif lo ipproto tcp dport 25 lookup 51825
ip -4 rule add priority 10001 iif lo ipproto tcp dport 25 unreachable

iif lo qaydanı lokal mənşəli trafiklə məhdudlaşdırır, ipproto tcp dport 25 isə bağlantının istiqamətini müəyyən edir; ip-rule sənədi hər iki seçicini sənədləşdirir. Onlar cari kernellərdə və iproute2 buraxılışlarında mövcuddur, köhnə sistemdə isə qayda tamamilə rədd edilir ki, bu da yüklənib heç nəyə uyğun gəlməyən qaydadan daha aydın uğursuzluqdur.

Növbəti prioritetdəki unreachable qaydası qoruyucudur. O olmadan 51825 cədvəlində çatışmayan marşrut adi defolta düşür və tunel kəsildiyi zaman poçt fiziki linkdən çıxır; bu, siyasətin qarşısını almaq üçün qurulduğu dəqiq haldır.

Mənbə ünvanı uyğun olmalıdır

Marşrutun src üstünlüyü yalnız öz mənbəyini bağlamayan bağlantılar üçün mənbə doldurur. Bu tərcümə deyil və açıq bağlamanı üstələmir, ona görə fiziki ünvana bağlanmış demon həmin ünvandan göndərməyə davam edir. Əgər tapdığınız budursa, demonun öz ayarını dəyişin və ya qəsdən tərcümə siyasəti hazırlayın, çünki gecikmiş hərtərəfli masquerade fərqli nəticələri olan fərqli bir həlldir.

Şlüzda müştərinin peer-i faktiki aldığı mənbəyə icazə verməlidir, yəni geniş təyinat prefiksi deyil, 10.77.0.2/32. Müştərinin 0.0.0.0/0 dəyərini hər şlüz peer-inə köçürmək hansı trafikin kimə aid olduğunu qarışdırır. Şlüz həmçinin forwardinq, axına icazə verən firewall siyasəti və yuxarı axın xüsusi tunel ünvanını marşrutlaşdıra bilmədikdə çıxış tərcüməsi də daxil olmaqla geri dönüş yolu tələb edir.

Geri dönüş yolunu, sonra davamlılığı yoxlayın

Heç nəyə güvənməzdən əvvəl axtarışları oxuyun, çünki onlar hər istiqamətin hansı cədvəli və hansı mənbəyi aldığını göstərir. Port 25 üzrə bir təyinat və eyni təyinat port 443 üzrə kifayətdir:

ip -4 route get 198.51.100.25 ipproto tcp dport 25
ip -4 route get 198.51.100.25 ipproto tcp dport 443

Birinci axtarış wg0 və nəzərdə tutulan mənbəni göstərməli, ikincisi isə adi yuxarı linki saxlamalıdır. Tətbiq öz ünvanını bağlayanda axtarışa həmin ünvanla from əlavə edin. wg0-a çatıb sonra lokal olaraq atılan cavab istiqaməti IPv4 tərs yol filtrinə işarə edir, çünki yalnız çıxan port qaydası tərs axtarışın tuneli seçməsinə səbəb olmur.

Asimmetrik marşrutlaşdırmaya icazə verildiyi yerdə net.ipv4.conf.wg0.rp_filter=2 vasitəsilə interfeysə bağlı boş rejim uyğun ola bilər və əvvəlcə all ilə interfeys dəyərlərinin effektiv maksimumunu yoxlamağa dəyər. Doğrulamanı qısayol kimi qlobal söndürməyin. Sonra cədvəli, prioritetləri və qoruyucunu konfiqurasiyanın sahibinə təhvil verin və yenidən qoşulmadan sonra seçimin hələ də qaldığını təsdiqləmək üçün təzə bağlantılar açın. Yadda saxlayın ki, lokal SMTP dinləyicisindən gələn cavablar təyinat portu 25 deyil, mənbə portu 25 daşıyır və bu, ayrı bir siyasət məsələsidir.

Əlaqəli məqalələr