Miten etäkäytetään X Window Systemiä turvallisesti?

Ensinnäkin omalla koneella pitää olla X-serveri käytössä eli kirjoita startx, jos et ole jo X:ssä. Ikkunoiden avaamisen toiselta koneelta voi sallia kahdella tavalla. Joko koneen nimen (IP-osoitteen) perusteella (huono ajatus turvallisuuden kannalta) tai "taikapiparilla" (MIT-MAGIC-COOKIE).

Ensimmäinen menetelmä toimii komennolla xhost [+|-]koneennimi. Jos koneen nimen tai IP-osoitteen edessä on '+' tai ei mitään, niin tuo lisätään sallittujen koneiden listalle ja '-' puolestaan poistaa sen. Tosin silloin kuka tahansa voi avata koneellesi ikkunoita, jotka vaikkapa salakuuntelevat näppäimenpainalluksia. Niinpä parempi tapa on käyttää taikapipareita (magic cookies).

Omalla koneellasi sanot

$ xauth extract <tiedosto> <naytto>
      

Tämä hakee X-näytön <naytto> taikapiparin ja kirjoittaa sen tiedostoon <tiedosto>. Sitten siirrät tämän tiedoston toiselle koneelle, jossa liität sen komennolla xauth merge <tiedosto>:lla muiden tunnisteiden joukkoon. Eli tähän tapaan:

ekakone $ xauth extract xauth $DISPLAY
ekakone $ ftp tokakone
ftp> send xauth
ftp> quit
ekakone $ telnet tokakone
tokakone $ xauth merge xauth
tokakone $ export DISPLAY=ekakone:0.0
tokakone $ xeyes
      

Jos rsh toimii rhostsin avulla, niin silloin tuon siirron saa aikaan komennolla

$ xauth extract - $DISPLAY | rsh tokakone \
          xauth merge - 
      

Tosin paras tapa on käyttää SSH-ohjelmaa, niin ei tarvitse murehtia X-serverin oikeuksista eikä DISPLAY-muuttujista. SSH tekee salatun yhteyden koneiden välille sekä tunneloi myös X-yhteydet ja tekee tarvittavat asetukset automaattisesti. Koneille tarvii vain asentaa asentaa SSH, ottaa sillä yhteys ja käynnistellä X-ohjelmia normaaliin tapaan. SSH löytyy ftp:llä osoitteesta ftp://ftp.replay.com/pub/crypto/linux/

SSH:lla voi käyttää X Window -ohjelmia helposti; seuraava komento esimerkiksi aukaisee xtermin, josta voi käynnistää lisää X-ohjelmia: ssh -f -X -l tunnus host.domain.example xterm (katso kohtaa SSH:n hankkimisesta ja asentamisesta)