Manuale di Sun Enterprise Authentication Mechanism

Rafforzamento della sicurezza

Queste procedure descrivono le operazioni da effettuare per rafforzare la sicurezza dei server di applicazioni SEAM e dei server KDC.

Abilitare solo le applicazioni basate su Kerberos

Questa procedura limita l'accesso via rete al server mediante telnet, ftp, rcp, rsh e rlogin alle sole transazioni autenticate da Kerberos.

  1. Modificare la voce telnet in /etc/inetd.conf.

    Aggiungere l'opzione -a user alla voce telnet per limitare l'accesso agli utenti che possono fornire informazioni di autenticazione valide.


    telnet stream  tcp     nowait  root    /usr/krb5/lib/telnetd  telnetd -a user
    
  2. Modificare la voce ftp in /etc/inetd.conf.

    Aggiungere l'opzione -a alla voce ftp per abilitare solo i collegamenti autenticati da Kerberos.


    ftp stream  tcp     nowait  root    /usr/krb5/lib/ftpd    ftpd -a
    
  3. Disabilitare le voci di Solaris per gli altri servizi in /etc/inetd.conf.

    Commentare o rimuovere le voci per shell e login.


    # shell   stream  tcp     nowait  root    /usr/sbin/in.rshd       in.rshd
    # login   stream  tcp     nowait  root    /usr/sbin/in.rlogind    in.rlogind

Limitare l'accesso ai server KDC

I server KDC master e slave memorizzano localmente le rispettive copie del database KDC. La limitazione dell'accesso a questi server e ai loro database è perciò importante per la sicurezza generale dell'installazione SEAM.

  1. Disabilitare i servizi remoti in /etc/inetd.conf.

    Per rendere sicuro un server KDC, è buona norma disabilitare tutti i servizi di rete non essenziali commentando le voci per l'avvio di questi servizi in /etc/inetd.conf. In genere, gli unici servizi di cui è richiesta l'esecuzione sono time e krdb5_kprop. I servizi che utilizzano i loopback tli (ticlts, ticotsord e ticots) possono restare abilitati. Dopo la modifica, il file dovrebbe avere la forma seguente (per ragioni di brevità, l'esempio non include tutte le righe commentate):


    kdc1 # cat /etc/inetd.conf
    #
    #ident  "@(#)inetd.conf 1.33    98/06/02 SMI"   /* SVr4.0 1.5   */
      .
      .
    #name     dgram   udp     wait    root    /usr/sbin/in.tnamed     in.tnamed
    #
    #shell    stream  tcp     nowait  root    /usr/sbin/in.rshd       in.rshd
    #login    stream  tcp     nowait  root    /usr/sbin/in.rlogind    in.rlogind
    #exec     stream  tcp     nowait  root    /usr/sbin/in.rexecd     in.rexecd
    #comsat   dgram   udp     wait    root    /usr/sbin/in.comsat     in.comsat
    #talk     dgram   udp     wait    root    /usr/sbin/in.talkd      in.talkd
    #
    #uucp     stream  tcp     nowait  root    /usr/sbin/in.uucpd      in.uucpd
    #
    #finger   stream  tcp     nowait  nobody  /usr/sbin/in.fingerd    in.fingerd
    #
    # Time service is used for clock synchronization.
    #
    time      stream  tcp     nowait  root    internal
    time      dgram   udp     wait    root    internal
    # 
      .
      .
    #
    100234/1  tli rpc/ticotsord wait  root    /usr/lib/gss/gssd     gssd 
    #dtspc    stream  tcp     nowait  root    /usr/dt/bin/dtspcd      /usr/dt/bin/dtspcd
    #100068/2-5 dgram rpc/udp wait    root    /usr/dt/bin/rpc.cmsd    rpc.cmsd
    100134/1 tli rpc/ticotsord wait   root    /usr/krb5/lib/ktkt_warnd kwarnd
    #klogin   stream  tcp     nowait  root    /usr/krb5/lib/rlogind   rlogind -k
    #eklogin  stream  tcp     nowait  root    /usr/krb5/lib/rlogind   rlogind -k -e
    #telnet   stream  tcp     nowait  root    /usr/krb5/lib/telnetd   telnetd
    #ftp      stream  tcp     nowait  root    /usr/krb5/lib/ftpd      ftpd
    #kshell   stream  tcp     nowait  root    /usr/krb5/lib/rshd      rshd -k -c -A
    krb5_prop stream  tcp     nowait  root    /usr/krb5/lib/kpropd  kpropd

    Al termine delle modifiche, riavviare il server.

  2. Limitare l'accesso all'hardware che supporta il KDC.

    Per limitare l'accesso fisico, collocare il server e il suo monitor in un luogo sicuro. Gli utenti normali non dovrebbero avere alcun tipo di accesso a questo server.

  3. Memorizzare copie di backup del database KDC su dischi locali o sui server slave.

    L'archiviazione su nastro del database KDC è consigliabile solo se i nastri possono essere riposti in un luogo sicuro. Questo vale anche per le copie delle tabelle di chiavi. La soluzione ideale è quella di memorizzare i file in un file system locale che non sia condiviso da altri sistemi. Il file system di memorizzazione può risiedere sia sul KDC master che sugli slave.