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

დახაზეთ ორი ნაკადი პოლიტიკის რედაქტირებამდე

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

FlowZone relationshipWhat to constrain
Encrypted OpenVPN transportInternet to the firewall hostThe listener's actual protocol and port
Decrypted request to a LAN serviceVPN clients to the LAN zoneOne approved server and service
Decrypted request to the gatewayVPN clients to the firewall hostOnly the local services required
Request to another VPN clientVPN clients to VPN clientsDenied unless deliberately required

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

მიანიჭეთ გვირაბის ზონა და ინტერფეისის ფარგლები

მოგზაურის ზონა გამოცხადებულია /etc/shorewall/zones-ში, გვირაბის ინტერფეისი ერთვის /etc/shorewall/interfaces-ში, ხოლო გარე კავშირი აღწერილია /etc/shorewall/tunnels-ში. მოერგეთ დაყენებული გამოცემის სინტაქსს, რადგან სვეტების რიგი და ოფციების სახელები მთავარ ვერსიებს შორის შეიცვალა. სახელმძღვანელოს სანიმუშო პორტი არ არის საფუძველი იმისა, რომ ნებადართული იყოს პორტი, რომელზეც დემონი რეალურად უსმენს. TCP და UDP ურთიერთშენაცვლებადი არ არის მხოლოდ იმიტომ, რომ რიცხვები ემთხვევა.

სახელმძღვანელო ინტერფეისებს აჯგუფებს tun+-ით. ჰოსტზე, სადაც ერთზე მეტი გვირაბია, ამ ნიშანს შეუძლია სხვა ნდობის დონის მეორე VPN იმავე ზონაში მოათავსოს. გადახედეთ ფარგლებს რეალურად არსებული ინტერფეისების მიმართ და შენარჩუნეთ დასახელება კავშირების მმართველის სასიცოცხლო ციკლის ქვეშ, ნაცვლად ინტერფეისების სახელების ხელით რედაქტირებისა.

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

ნებადართეთ მხოლოდ ის გზა, რომელიც კლასიფიცირეთ

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

კლიენტებს შორის ტრაფიკს საკუთარი გადაწყვეტილება სჭირდება. OpenVPN-ის client-to-client და Shorewall-ის routeback ორივე გავლენას ახდენს იმაზე, შეუძლიათ თუ არა კლიენტებს ერთმანეთამდე მისვლა, და არც ერთი არ უნდა ჩაირთოს მხოლოდ ერთი LAN აპლიკაციის მუშაობისთვის. გადაწყვიტეთ, სად სრულდება იზოლაცია, სანამ გამოსცდით.

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

გადაამოწმეთ, შემდეგ დაამტკიცეთ ორივე გზა

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

shorewall check

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

shorewall show zones
ip route get 192.168.10.20

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

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