TCP 873:n salliminen tunnelin rajapinnalla ei työnnä rsyncia OpenVPN, läpi eikä saa vastapäätä hyväksymään moduulia. Tunneli kuljettaa sisäistä yhteyttä, jonka protokolla- ja kohdesäännöt pysyvät täsmälleen ennallaan. Ensimmäinen kysymys ei siis ole, mikä portti avataan, vaan millaisen yhteyden rsync muodostaa. Kaikki jäljempänä olettaa, että tunneli on jo pystyssä ja vain sisäinen palvelu on vielä epäselvä.

Päätä, millaisen yhteyden rsync todella muodostaa

Komennon etäargumentti vastaa yleensä tuohon kysymykseen ennen mitään palomuurimuutosta. Kaksoispiste tai URL-kaava valitsee daemonin, kun taas yksittäinen kaksoispiste isäntänimen jälkeen valitsee etäkuoren. Lue argumentti, jonka todella suoritat, älä sitä, joka on dokumentaation esimerkissä.

Selkeä etäkuoren valinta voi muuttaa vastausta uudelleen, koska se kertoo rsyncille, mikä ohjelma kuljetusta varten käynnistetään. Lue koko komentorivi, mukaan lukien perityt kääreskriptit, ei vain isäntäosaa.

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

Daemon-tila: sidontaosoite, moduuli ja portti

Daemonin syntaksissa polkusegmentti nimeää määritetyn moduulin, ei levyllä olevaa hakemistoa. Moduulin salasana tarkistetaan vasta, kun yhteys on hyväksytty, ja moduuli voi lisäksi olla vain luku -tilassa tai piilotettu listauksesta. Tällä järjestyksellä on väliä virhettä lukiessa, koska hylätty yhteys ja hylätty moduuli ovat epäonnistumisia kahdessa eri vaiheessa. Kumpikaan viesti ei kerro sinulle mitään itse tunnelista.

Itsenäinen daemon voidaan kiinnittää tunnelin osoitteeseen sen asetustiedostossa, mikä pitää sen poissa julkisesta rajapinnasta ilman yhtäkään palomuurisääntöä. Arvon on oltava olemassa, kun daemon sitoutuu, ja socketilla aktivoitu tai inetdin hallitsema kuuntelija voi jättää sen kokonaan huomiotta.

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

Testaa sitten yksityistä osoitetta vasten julkisen nimen sijaan. Julkinen isäntänimi ratkeaa WAN-osoitteeksi ja kulkee eri polkua, vaikka yksi kone vastaisi molempiin.

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

Etäkuoritila: SSH kuljettaa siirron

Yhdellä kaksoispisteellä rsync käynnistää etäkuuriohjelman ja puhuu sen protokollaa kyseisen kanavan yli, joten ainoa tavoitettava palvelu on SSH sillä portilla, jota palvelin kuuntelee. rsync-daemon ei koskaan käynnisty, portti 873 on merkityksetön ja pääsypäätöksestä tulee SSH-tilipäätös. Etäpolku on silloin todellinen tiedostojärjestelmän polku, jonka toisessa päässä oleva kuori tulkitsee. Siksi porttiin 873 kohdistuva palomuurimuutos ei tee tälle tilalle yhtään mitään.

Tällainen rakenne tarvitsee valtuutetun tilin ja isäntäavaimen vahvistuksen, ja se perii SSH:n oman todennuskäytännön. Se on usein parempi valinta, kun siirron on ylitettävä epäluotettu verkko, koska salaus kuuluu protokollaan, joka rakennettiin sitä varten. Salasanaa kysyvä daemon ei ole sama asia.

Avaa vain valitsemasi polku

Kun tila on ratkaistu, salli ainoa sisäinen palvelu sillä ainoalla rajapinnalla, joka kuljettaa tunnelia. Rajaa sääntö rajapinnan, lähdealtaan ja kohdeosoitteen mukaan, jotta myöhempi oletuskiellon muutos ei voi äänettömästi laajentaa sitä. Tarkista sen jälkeen sääntöjen järjestys, koska ketjussa aiemmin oleva salliva sääntö tekee kapeasta säännöstä vain koristeellisen.

Jos daemon pyörii VPN-yhdyskäytävän takana olevalla koneella eikä itse yhdyskäytävällä, yhdyskäytävä tarvitsee myös edelleenlähetyspolun ja kohde oman lupansa ja paluureittinsä. Portin avaaminen vain yhdyskäytävällä tuottaa yhteyden, joka hyväksytään ja joka ei sitten mene minnekään.

Vahvista asiakkaasta samalla tilalla ja kohteella, jota aiot käyttää tuotannossa. Onnistunut listaus todistaa kuuntelijan, reitin ja säännön yhdessä; aikakatkaisu osoittaa polkuun ja kieltäytyminen kuuntelijaan.

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

Aiheeseen liittyvät artikkelit