Zahteve: Recimo, da ima program na strežniku A omogočen samo UDS listening, kaj naj stori strežnik B, če želi poklicati program na strežniku A? Uporabite lahko UNIX Domain Socket (UDS) preko TCP za posredovanje procesa s strežnika A na strežnik B.
pregled
UNIX domenske vtičnice so mehanizem za medprocesno komunikacijo, ki temelji na poteh datotek, ne pa na datotekah v datotečnem sistemu. Tudi pri SFTP ali SSHFS UNIX domena sockets ni dostopna prek omrežja.
socat uporablja UNIX domenske vtičnice
Ukazi za namestitev:
Zaženi strežnik
Najprej recimo, da strežnik obdela /tmp/example-server.sock za strežnik z imenom "server-program". /tmp/example-server.sock Če se lahko povežete na ta socket z drugega gostitelja in ga dostopate, lahko rečete, da ste z uporabo kot UNIX domene presegli omrežje.
Če želiš samo preizkusiti, lahko uporabiš socat.
Testni klic, ukaz je naslednji:
Kot je prikazano spodaj:
Ali pa povežite z uporabo ukaza socat, kot je prikazano spodaj:
Uporaba TCP povezav
Uporabite ukaz socat na gostitelju, na katerem teče strežniški proces.
Povežite se s TCP iz oddaljenega gostitelja
Posluša UNIX domeno z enakim imenom in ga poveže z gostiteljem, na katerem teče strežniški proces.
Uporabite odjemalca na oddaljenem gostitelju
Zdaj, ko je vse pripravljeno, se povežimo s strežniškim procesom preko omrežja. Če želiš tudi ti preizkusiti, lahko uporabiš socat.
Uporaba OpenSSH
Če imaš SSH dostop, obstaja lažja pot. /tmp/example-server.sock Najprej zaženite gostitelja strežnika (izpuščeno). Uporabite -L na gostiteljskem odjemalcu. Ukaz je naslednji:
Zdaj je dostopen iz gostiteljskega odjemalca. |