მოათავსეთ ნებართვის წესი არასწორ ადგილას და ის ისე იქცევა, თითქოს წესი საერთოდ არ არსებობს. nftables-ში insert-სა და add-ს შორის არჩევანი განსაზღვრავს, მითითებული წესის რომელ მხარეს დაჯდება ახალი დებულება, ხოლო სახელური წესს ცოცხალ წესების სიმრავლეში ასახელებს და არა მისი სტრიქონის ნომერს. თუ განლაგება არასწორია, პაკეტი ჯერ ჩამოშლას აღწევს.

ქვემოთ მოცემული შედარება იყენებს ერთ ფიქსირებულ პარტნიორს და ერთ გარე მსმენელის გაცვლას. ის განზრახ ვიწროა; მთელი ჯაჭვის შეცვლა სხვა რისკის პროფილის მქონე სხვა ცვლილებაა.

ორი განლაგება, ორი განსხვავებული შედეგი

insert წესს მითითებული წესის წინ ათავსებს. add მის შემდეგ ათავსებს. თუ მითითებული წესი ნაკადის საბოლოო ჩამოშლაა, ეს ორი ბრძანება საპირისპირო შედეგებს იძლევა, მაშინაც კი, როცა წესის ტექსტი იდენტურია.

ადგილის გამოტოვებას თავისი ნაგულისხმევი ქცევა აქვს, რაც კიდევ ერთი მიზეზია, რომ ფორუმიდან ბრძანება არ დააკოპიროთ იმის წაკითხვის გარეშე, რასაც ის არის მიმაგრებული. სამაგრი მთელი გადაწყვეტილებაა. ჩაწერეთ სასურველი მხარე ბრძანების აკრეფამდე. ფაილში insert და add ერთი სიტყვით განსხვავდება.

განლაგება ფარდობითია კონკრეტულ ჯაჭვში არსებულ წესთან. იმავე დებულების სხვა ჯაჭვში ან სხვა hook-პრიორიტეტში გადატანა ცვლის, რომელ პაკეტებს ხედავს ის, მაშინაც კი, როცა წესის სინტაქსი სწორად გამოიყურება.

სახელური წესს ამოიცნობს, არა სტრიქონის ნომერს

42-ის მსგავსი სახელური იდენტიფიკატორია წესების სიმრავლის მიმდინარე მდგომარეობაში. ის არ არის ორმოცდამეორე წესი და არ არის სტაბილური ჰოსტებს, ხელახალ აწყობასა თუ კონფიგურაციის ხელახლა ჩამტვირთავ მენეჯერს შორის.

სამაგრის არჩევამდე იპოვეთ ჯაჭვი და ფაქტობრივი საბოლოო ჩამოშლა. შემდეგ დაადასტურეთ სახელური იმ წესზე იმავე ჩამონათვალში, რომელიც ჩამოშლას აჩვენებს, რათა ნომერი და წესი ერთად წაიკითხოს. ძველი ჩამონათვალიდან წაკითხული სახელური შეიძლება უკვე სხვა წესს ეკუთვნოდეს. ხელახლა წაიკითხეთ ის სესიაში, რომელიც ცვლილებას გამოიყენებს.

iptables --version
nft -a list ruleset

iptables-ის ვერსია გვიჩვენებს, რომელი backend-ია გამოყენებული. iptables-nft წესების სიმრავლე და დამოუკიდებლად მართული მშობლიური ცხრილი შეიძლება თანაარსებობდეს, ამიტომ ერთი frontend-ის ჩამონათვალი ავტომატურად არ არის ფილტრაციის სრული სურათი. ჯაჭვის არჩევამდე შეამოწმეთ ორივე ხედი.

იპოვეთ ჯაჭვი და წესი, რომელიც ნამდვილად ჩამოშლის

წაიკითხეთ input hook, ჯაჭვის პრიორიტეტი და წესი, რომელიც უარყოფს ამ მსმენელის ნაკადს. inet ცხრილს შეიძლება ორივე მისამართის ოჯახი ჰქონდეს, მაგრამ ცალკეული წესი მაინც მხოლოდ IPv4-ს შეიძლება შეესაბამებოდეს.

აიღეთ ერთი დამტკიცებული პარტნიორი და მაგალითად გამოიყენეთ 198.51.100.25 დოკუმენტაციის დიაპაზონიდან. განხილულ მშობლიურ ფაილს შეუძლია გარე ნებართვა 42 სახელურამდე მოათავსოს:

insert rule inet filter input handle 42 iifname "eth0" ip saddr 198.51.100.25 udp dport { 500, 4500 } counter accept

შემოწმების შემდეგ შეცვალეთ ოჯახი, ცხრილი, ჯაჭვი, სახელური, შემავალი ინტერფეისი და პარტნიორი. მაგალითი იყენებს nft 1.0.9-ისთვის დოკუმენტირებულ სახელურ-მდებარეობის ფორმას და ის შემავალ ფაილს ეკუთვნის; ბრჩხილების ბრჭყალებში ჩასმა ცალკე საკითხია, როცა ბრძანება ინტერაქტიულად იბეჭდება.

შეინარჩუნეთ კონფიგურაციის მფლობელი ნათელი. მენეჯერს, რომელიც თავის წესებს ხელახლა აშენებს, შეუძლია გაშვების დროის ცვლილება გადააწეროს, ხოლო მოძველებული სახელურის ხისტად ჩაშენებული ჩამტვირთავი სკრიპტი ან ჩავარდება, ან არასწორ წესს მიეკრობა.

ნებართვა შემოსაზღვრულია, ჩამოშლა საბოლოოა

ნებართვის განაჩენი ამთავრებს შეფასებას მის მიმდინარე გზაზე, მაგრამ მოგვიანებით გამოსაყენებელ საბაზო ჯაჭვს მაინც შეუძლია პაკეტის ჩამოშლა. ჩამოშლის განაჩენი საბოლოოა. ამიტომ მზარდი ნებართვების მრიცხველი არ არის ნაკადის წარმატების მტკიცებულება.

შეამოწმეთ ყველა შესაბამისი hook-პრიორიტეტი და არა ერთი ჯაჭვი იზოლირებულად. პაკეტს შეუძლია input ფილტრი გაიაროს და მაინც უარყოს სხვა ცხრილის hook-მა სხვა პრიორიტეტზე. ჩამოთვალეთ ყოველი საბაზო ჯაჭვი, რომელსაც ნაკადის დანახვა შეუძლია.

ეს წესი მხოლოდ გარე მსმენელის გაცვლას ფარავს. ტრანსპორტით ინკაფსულირებული ESP, მშობლიური ESP, IPv6 პარტნიორები და გვირაბის შიგნით გაშიფრული ტრაფიკი ყველას საკუთარი პოლიტიკა სჭირდება. ეს არ არის საიტის VPN-ის სრული ბრანდმაუერი.

შეამოწმეთ ფაილი, შემდეგ დაადასტურეთ ცოცხალი შედეგი

გამოყენებამდე გაუშვით სინტაქსისა და ტრანზაქციის შემოწმება განხილულ ფაილზე. შემოწმების რეჟიმი გვატყობინებს, შეუძლია თუ არა nft ცვლილების გარჩევა და მომზადება; ის არ იყენებს მას და არ ამტკიცებს, რომ სხვა hook პაკეტს დაუშვებს. ფაილი წინადადებად რჩება, სანამ მფლობელი გამოიყენებს მას:

nft -c -f reviewed-vpn-rule.nft

გამოიყენეთ მფლობელის კონტროლირებული პროცესით და შეინარჩუნეთ აღდგენის წვდომა. თუ წესი არასწორია, ჩამოშლამ, რომლის წინ გადასვლასაც ცდილობდით, შეიძლება გაჭრას ის გზაც, რომელსაც მის გასწორებას იყენებთ.

ცვლილების შემდეგ დააკვირდით დაშვებული პარტნიორის ახალ ცდას და შეამოწმეთ, რომ დამტკიცებული პარტნიორის გარეთ არსებული წყაროები კვლავ უარყოფილია. გადაიტანეთ მუდმივი წესი იმ მენეჯერში, რომელიც ფლობს წესების სიმრავლეს, რადგან გაშვების დროის სახელურები მიმდინარე ობიექტებს პოულობენ და არა მათ ჩატვირთვებს შორის იდენტიფიცირებენ.

დაკავშირებული სტატიები