ორი კლიენტთა ჯგუფი, ერთი სერვერი: სად გამოვიყენოთ პოლიტიკა
ქვექსელები ჯგუფებს აღნიშნავენ და არ იზოლირებენ მათ. გადაწყვიტეთ, რომელი გადაცემის გზა ფლობს წესს, შემდეგ დაწერეთ მატრიცა, რომელიც იმპლემენტაციამ უნდა განახორციელოს.
ორი კლიენტთა ჯგუფის სხვადასხვა ქვექსელში განთავსება იზოლაციას ჰგავს და არ არის. მისამართები აღწერენ, საიდან თითქოს მოდის პაკეტი, ხოლო ნებართვა გადაწყვეტილებაა, რომელსაც ის იღებს, ვინც მას გადასცემს. ამ კითხვას კონფიგურაცია პასუხობს და არა ნიღაბი, ამიტომ სანამ რომელიმე წესს დაწერთ, გადაწყვიტეთ რომელი კომპონენტი გადასცემს თანატოლთა ტრაფიკს.
ქვექსელი იარლიყია, არა წესი
თითო ჯგუფზე ერთი აუზის მიცემა გაძლევთ წაკითხვად მისამართებს და მეტს არაფერს. კლიენტმა, რომელიც დამატებით მარშრუტს იღებს, მიიღო ხელმისაწვდომობა, და ხელმისაწვდომობა არ არის ავტორიზაცია. ლაპარაკის ნებართვა გადაცემის გადაწყვეტილებაშია, რომელიც შეიძლება დემონში ან ბირთვში იყოს, იმის მიხედვით, თუ როგორ არის სერვერი კონფიგურირებული.
მისამართის საკუთრება არის ის, რაც პრეფიქსს ჯგუფის ამომრჩევად გამოსაყენებელს ხდის. ყოველი ავთენტიფიცირებული იდენტობა უნდა შეესაბამებოდეს წინასწარმეტყველებად მისამართს ან დიაპაზონს, და ეს შესაბამისობა ფუჭდება, როგორც კი რამდენიმე მოწყობილობა ერთ საკრედიტო მონაცემს და ერთ გამოყოფას იზიარებს. გადაწყვიტეთ იდენტობა და ერთდროულობა, სანამ წყაროს პრეფიქსს დაეყრდნობით, რადგან პოლიტიკა, რომელიც ხვდება, რომელი მანქანა რეკავს, უარეს მომენტში არასწორს აძლევს ავტორიზაციას.
აირჩიეთ გზა, რომელიც თანატოლთა ტრაფიკს ატარებს
როდესაც დემონი თანატოლთა პაკეტებს საკუთარ პროცესში გადასცემს, ეს პაკეტები არასოდეს აღწევს ჰოსტის გადაცემის კაუჭს, ამიტომ ბირთვის წესი ვერ ხედავს მათ. გამორთეთ ეს შიდა გადაცემა და ბირთვი გახდება გადაცემის წერტილი, სადაც ჩვეულებრივი გადაცემის წესები მოქმედებს.
# peer forwarding inside the daemon: enforce with per-group policy instead of FORWARD rules
client-to-client
# kernel forwarding path: remove the line above, then filter in the forward chain
გადმოტვირთული მონაცემთა არხები და პროდუქტის მიერ მართული სერვერები აქვეყნებენ საკუთარ აღსრულების მოდელებს, ამიტომ დაადასტურეთ, რომელს ამუშავებთ, ნაცვლად იმისა, რომ საზოგადოების ქცევა ჩათვალოთ. თავიდან ასაცილებელი მარცხი არის წესი, რომელიც მიმოხილვაში სწორად გამოიყურება და არასოდეს იკითხება გაშვების დროს.
მატრიცა დაწერეთ წესებამდე
მოკლე მატრიცის მიმოხილვა უფრო ადვილია, ვიდრე წესების ნაკრების, და ეს არის ხელშეკრულება, რომელიც იმპლემენტაციამ უნდა შეასრულოს: ერთი ჯგუფის თანატოლები დაშვებულია, ჯგუფებს შორის თანატოლები აკრძალულია, ორივე ჯგუფს ნებადართული აქვს ერთ დასახელებულ საერთო სერვისზე, დანარჩენი ყველაფერი აკრძალულია. დაწერეთ ეს ოთხი სტრიქონი, სანამ ფაირვოლის რედაქტორს გახსნით. მიმომხილველს, რომელიც წესების სინტაქსს არ კითხულობს, მაინც შეუძლია მატრიცის შემოწმება. შემდეგ იმპლემენტაციას მხოლოდ სტრიქონებთან შესაბამისობა უწევს.
| Source | Destination | Decision |
|---|---|---|
| Group A address | Another Group A address | Allow |
| Group A address | A Group B address | Deny |
| Either group | The shared internal service | Allow |
| Either group | Anything not listed | Deny |
წერისას სამი დანიშნულების კლასი ცალკე შეინახეთ. VPN ჰოსტზე სერვისი ლოკალური შეყვანაა, სხვა კლიენტი თანატოლთა ტრანზიტია, და კარიბჭის უკან მდგარი მანქანა სხვა გადაცემის გზაა. ერთმა გულუხვმა წესმა შეიძლება შემთხვევით სამივე მისცეს, და ასე იქცევა ჯგუფური პოლიტიკა ბრტყელ ქსელად დამატებითი ნაბიჯებით. დაწერეთ კლასი ყოველი სტრიქონის გვერდით, რათა განზრახვამ შემდეგი რედაქტირება გადაიტანოს.
წესები იქ მოათავსეთ, სადაც ისინი გადარჩებიან
გადაწყვეტილებები დაამატეთ იმავე ადგილას, სადაც ფაირვოლის დარჩენილი ნაწილი მოვლილია, ნებისმიერ ნებადამრთველ წესამდე, რომელიც სხვაგვარად გადაყლაპავდა მათ. წესების რიგი პოლიტიკის ნაწილია, და ფართო დაშვების შემდეგ მოთავსებული სწორი წესი არაფერს აღასრულებს. ჩაწერეთ წესების ნომრები ცვლილებამდე და შემდეგ. პოლიტიკა, რომელიც რედაქტორში არსებობს, მაგრამ მოქმედ წესების ნაკრებში არა, გეგმაა და არა კონტროლი.
გადაწყვიტეთ, რა მოხდება უკვე არსებულ ნაკადებთან, როცა პოლიტიკა იცვლება, რადგან ცვლილებამდე გახსნილი სესია შეიძლება მის შემდეგაც გაგრძელდეს. თუ წასული წევრი დაუყოვნებლივ უნდა დაკარგოს წვდომა, წესების ნაკრებს სჭირდება ამ მდგომარეობის დასრულების გზა, ნაცვლად იმისა, რომ დაელოდოს კავშირის თავისით დახურვას.
წესები მუდმივი გახადეთ იმ მექანიზმით, რომელიც ფაირვოლის დარჩენილ ნაწილს ფლობს, და მატრიცა მათ გვერდით ჩაწერეთ. დაურეგისტრირებელი პოლიტიკა შემდეგი ინციდენტის დროს ხელახლა გამოიყვანება მეხსიერებიდან, ჩვეულებრივ ნაჩქარევი ადამიანის მიერ.
ორივე მხრიდან დაამტკიცეთ
შეამოწმეთ ხელმისაწვდომობა ერთი ჯგუფის შიგნით, მარცხი ჯგუფებს შორის და საერთო სერვისი თითო კლიენტიდან თითოეულ ჯგუფში. ერთი კლიენტიდან ერთი ტესტი მატრიცის ნახევარს ამტკიცებს, და ის ნახევარი, რომელიც გამოტოვებულია, ჩვეულებრივ არასწორია. გაიმეორეთ აკრძალვის მიმართულება ორჯერ, რადგან ქეშირებულმა სესიამ შეიძლება დამალოს აღსრულების შეცდომა. ჩაწერეთ, რომელი წყვილი შეამოწმეთ, რათა შემდეგმა ადამიანმა არ გაიმეოროს.
გაიმეორეთ შემოწმება IPv6-ზე, თუ გვირაბი მას ატარებს, და შეინარჩუნეთ აპლიკაციების ჩვეულებრივი ავთენტიფიკაცია. წყაროს პრეფიქსი ანგარიში არ არის, ამიტომ ქსელური პოლიტიკის გავლა არ ნიშნავს, რომ სერვისმა მოძახებულს უნდა ენდოს.