Палітыка IPsec паглынае ваш лакальны трафік: як гэта распазнаць
Селектар, які ахоплівае ўвесь прыватны дыяпазон, ахоплівае і ваш прынтар. Прачытайце ўсталяваную палітыку, а потым звузьце выключэнне там, дзе жыве злучэнне.
Прынтар на стале перастае адказваць у той момант, калі ўздымаецца тунэль, і нішто ў канфігурацыі тунэля не згадвае прынтар. Звычайна адбылося тое, што абаронены дыяпазон быў запісаны настолькі шырока, што ўключае яго, таму машына цяпер спрабуе шыфраваць трафік, які павінен быў застацца ў лакальным сегменце. Чытанне ўсталяванай палітыкі тлумачыць перахоп; звужэнне яе ў патрэбным месцы захоўвае абарону аддаленага трафіку. Шлях ад няўдалага запыту да адпаведнай палітыкі займае некалькі хвілін.
Прасочыце паток, перш чым змяняць селектар
Пачніце з няўдалага запыту і запішыце чатыры значэнні: адрас крыніцы, які выкарыстоўвае машына, дакладнае прызначэнне, маршрут, які выбірае ядро, і палітыку, што адпавядае гэтай пары.
Гэтыя чатыры факты вырашаюць, ці з’яўляецца перахоп наўмысным або выпадковым. Прызначэнне, якое трапляе ў аддалены селектар, абаронена па задуме, нават калі задума была памылковай. Прызначэнне па-за ім, якое ўсё роўна перахопліваецца, азначае, што супадае нешта іншае, і змена селектара не дапаможа. Абодва выпадкі распаўсюджаныя, і іх адрознівае адна каманда.
Зрабіце гэта да таго, як што-небудзь рэдагаваць, бо цікавы выпадак — гэта лакальная падсетка, якая перакрываецца з прыватным дыяпазонам, які абараняе злучэнне. Знаёмыя прэфіксы накшталт 192.168.0.0/16 сустракаюцца ў многіх сетках, і селектар, напісаны для аднаго з іх, можа ціха ахапіць ваш.
Тры віды лакальнага, якія паводзяць сябе па-рознаму
Прызначэнне, прызначанае гэтаму хосту, прызначэнне на тым жа канале і прызначэнне за іншым інтэрфейсам — гэта тры розныя выпадкі. Ядро апрацоўвае кожны з іх па-рознаму, калі вырашае, ці патрэбна трафіку абарона.
Трафік, які стварае сам шлюз, таксама не тое самае, што трафік, перасланы ад кліента. Палітыка, якая выглядае правільнай для перасланага трафіку, можа перахапіць уласную сесію кіравання шлюзу, і так адміністратар губляе доступ, пакуль рамантуе тунэль.
Карысная звычка — назваць выпадак уголас: гэты пакет ідзе ад мяне, на мой канал ці праз мяне? Кожны адказ паказвае на іншае месца для звужэння. Запіс выпадку таксама не дае наступнаму чалавеку паўтарыць тую самую працу.
Калі абаронены дыяпазон — гэта ўвесь прыватны прастора, усе тры выпадкі могуць трапіць у яго адразу, і сімптомам становіцца машына, якая не дасягае нічога, акрамя канцавой кропкі тунэля.
Чытайце ўсталяваную палітыку, а не файл
Файлы канфігурацыі апісваюць намер; ядро захоўвае палітыкі, якія сапраўды супадаюць. Пакажыце абодва і лічыце разыходжанне першай знаходкай.
Гэтыя каманды паказваюць выбраны маршрут да прызначэння і ўсталяваныя палітыкі ў кожным напрамку:
ip route get 192.168.50.20
ip xfrm policy list
sudo swanctl --list-connsМаршрут кажа, які інтэрфейс выкарыстоўваў бы пакет. Спіс палітык кажа, ці будзе потым да гэтага пакета ўжыты шаблон, а спіс злучэнняў паказвае, якія селектары дэман лічыць усталяванымі. Калі прызначэнне з’яўляецца ў аддаленым селектары, вы знайшлі перахоп, не ўгадваючы.
Звузьце селектар або абыдзіце прызначэнне
Ёсць два падтрымліваныя выпраўленні, і яны адказваюць на розныя пытанні. Звужэнне селектара азначае, што гэта злучэнне абараняе толькі меншы дыяпазон, што правільна, калі шырэйшы дыяпазон быў памылкай. Даданне абыходу азначае, што гэта канкрэтнае прызначэнне ніколі не павінна абараняцца, што правільна, калі абаронены дыяпазон сапраўды шырокі, а адно прызначэнне — выключэнне.
Выбірайце першае, калі можаце, бо меншы селектар лягчэй асэнсаваць, і ён бачны ў вызначэнні злучэння. Выбірайце другое, калі шырокі дыяпазон наўмысны, а выключэнне — асобны хост або падсетка, якую вы можаце назваць.
Абодва рашэнні належаць канфігурацыі, якой належыць злучэнне. Правіла часу выканання, дададзенае ўручную, знікае пры наступным перападключэнні, і збой вяртаецца ў момант, калі ніхто ўжо не памятае абыходнага шляху.
Выключэнні, якія перажываюць пераўсталёўку
Пасля змены паўтарыце той самы бясшкодны запыт і паглядзіце на тыя самыя лічыльнікі. Лакальнае прызначэнне павінна адказаць, а патрэбнае аддаленае прызначэнне павінна далей паказваць шыфраваны трафік.
Гэтыя дзве праверкі пацвярджаюць, што выключэнне выжыла, а абарона не:
ip xfrm policy list | grep -c out
ping -c 3 192.168.50.20Затым наўмысна адключыце і зноў падключыце тунэль і паўтарыце абедзве. Выключэнне, якое працуе да перападключэння і не працуе пасля, было ўжыта не на тым узроўні, і гэта самы часты спосаб вяртання гэтай праблемы.