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

გადაწყვიტეთ, რა კავშირს ამყარებს rsync სინამდვილეში

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

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

Remote argumentWhat it opens
rsync://vault.corp.internal/archive/rsync daemon, normally TCP 873
vault.corp.internal::archive/rsync daemon, normally TCP 873
[email protected]:/srv/archive/Remote shell, normally SSH on its configured port

დემონის რეჟიმი: მიბმის მისამართი, მოდული და პორტი

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

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

address = 10.44.0.1
port = 873
[archive]
    path = /srv/archive
    read only = yes

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

rsync --list-only rsync://10.44.0.1/archive/

დისტანციური ჭურვის რეჟიმი: SSH ატარებს გადაცემას

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

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

გახსენით მხოლოდ თქვენ მიერ არჩეული გზა

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

თუ დემონი მუშაობს VPN კარიბჭის უკან მდგარ მანქანაზე და არა თავად კარიბჭეზე, კარიბჭესაც სჭირდება გადამისამართების გზა, ხოლო სამიზნეს — საკუთარი ნებართვა და დაბრუნების მარშრუტი. პორტის გახსნა მხოლოდ კარიბჭეზე ქმნის კავშირს, რომელიც მიიღება და შემდეგ არსად მიდის.

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

ufw allow in on tun0 from 10.44.0.0/24 to 10.44.0.1 port 873 proto tcp
ss -ltnp | grep 873

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