X Fönsterbehörighet

I X Window System körs program som X-klienter , och som sådana ansluter de till X- displayservern , möjligen via ett datornätverk . Eftersom nätverket kan vara tillgängligt för andra användare krävs en metod för att förbjuda åtkomst till program som drivs av andra användare än den som är inloggad.

Det finns fem standardmekanismer för åtkomstkontroll som styr om en klientapplikation kan ansluta till en X-displayserver. De kan grupperas i tre kategorier:

  1. åtkomst baserat på värd
  2. åtkomst baserat på cookie
  3. åtkomst baserat på användare

Dessutom, som alla andra nätverksanslutningar, kan tunnling användas.

Värdbaserad åtkomst

Den värdbaserade åtkomstmetoden består i att specificera en uppsättning värdar som är auktoriserade att ansluta till X-visningsservern. Detta system har sämre säkerhet, eftersom det tillåter varje användare som har tillgång till en sådan värd att ansluta till skärmen. Xhost - programmet och tre X Window System-kärnprotokollförfrågningar används för att aktivera denna mekanism och för att visa och ändra listan över auktoriserade värdar. Felaktig användning av xhost kan oavsiktligt ge varje värd på Internet full tillgång till en X-visningsserver.

Cookie-baserad åtkomst

De cookie-baserade auktoriseringsmetoderna är baserade på att välja en magisk cookie (en godtycklig databit) och skicka den till X-visningsservern när den startas; varje klient som kan bevisa att ha kunskap om denna cookie är sedan auktoriserad att ansluta till servern.

Dessa cookies skapas av ett separat program och lagras som standard i filen .Xauthority i användarens hemkatalog. Som ett resultat kan varje program som körs av klienten på den lokala datorn komma åt denna fil och därmed den cookie som är nödvändig för att auktoriseras av servern. Om användaren vill köra ett program från en annan dator i nätverket måste kakan kopieras till den andra datorn. Hur cookien kopieras är ett systemberoende problem: till exempel på Unix-liknande plattformar kan scp användas för att kopiera kakan.

De två systemen som använder denna metod är MIT-MAGIC-COOKIE-1 och XDM-AUTHORIZATION-1 . I den första metoden skickar klienten helt enkelt cookien när den uppmanas att autentisera. I den andra metoden lagras även en hemlig nyckel i .Xauthority -filen. Klienten skapar en sträng genom att sammanfoga den aktuella tiden, en transportberoende identifierare och cookien, krypterar den resulterande strängen och skickar den till servern.

Xauth - applikationen är ett verktyg för åtkomst till .Xauthority -filen. Miljövariabeln XAUTHORITY kan definieras för att åsidosätta namnet och platsen för den cookiefilen.

Inter -Client Exchange (ICE)-protokollet implementerat av Inter-Client Exchange Library för direkt kommunikation mellan X11-klienter använder samma MIT-MAGIC-COOKIE-1 autentiseringsmetod, men har sitt eget iceauth -verktyg för åtkomst till sin egen .ICEauthority -fil, vars placering kan åsidosättas med miljövariabeln ICEAUTHORITY . ICE används till exempel av DCOP och X Session Management-protokollet (XSMP).

Användarbaserad åtkomst

De användarbaserade åtkomstmetoderna fungerar genom att tillåta specifika användare att ansluta till servern. När en klient upprättar en anslutning till en server måste den visa sig vara kontrollerad av en auktoriserad användare.

De två metoderna baserade på autentisering av användare med hjälp av nätverksanslutna identitetshanteringssystem är SUN-DES-1 och MIT-KERBEROS-5 . Det första systemet är baserat på en säker mekanism i ONC-systemet för fjärranropsprocedurer som utvecklats i SunOS . Den andra mekanismen är baserad på att både klient och server litar på en Kerberos- server.

En tredje metod är begränsad till lokala anslutningar, med systemanrop för att fråga kärnan vilken användare som finns i andra änden av en lokal socket. Programmet xhost kan användas för att lägga till eller ta bort poster för lokala användare och lokala grupper med denna metod.

Tunneldrivning

SSH - verktyget (när det anropas med alternativ -X eller alternativ ForwardX11 ) tunnlar X11-trafik från fjärranropade klienter till den lokala servern. Det gör det genom att ställa in miljövariabeln DISPLAY på fjärrplatsen så att den pekar på en lokal TCP-socket som öppnas där av sshd, som sedan tunnlar X11-kommunikationen tillbaka till ssh. Sshd anropar sedan också xauth för att lägga till en MIT-MAGIC-COOKIE-1-sträng på fjärrplatsen i .Xauthority där, som sedan ger X11-klienter där åtkomst till ssh-användarens lokala X-server.

X11-anslutningar mellan klient och server över ett nätverk kan också skyddas med andra protokoll för säkra kanaler, såsom Kerberos / GSSAPI eller TLS , även om sådana alternativ nu används mycket mer sällan än SSH.

externa länkar