7.3. Autenticazione degli utenti internet con TACACS

Sul mio posto di lavoro, per l'autenticazione TACACS degli utenti Internet (che si connettono ai nostri modem che sono a loro volta collegati a un paio di access server Cisco 250x), utilizziamo la versione Vikas di "xtacacsd".

Dopo aver compilato e installato il pacchetto Vikas (le versioni più recenti si trovano su ftp://ftp.navya.com/pub/vikas; non credo sia disponibile in formato RPM), dovrete aggiungere questa riga al file "/etc/inetd.conf" in modo che il demone venga caricato dal demone inetd ogni volta che si riceve una richiesta TACACS.

# TACACS is a user authentication protocol used for Cisco Router products.
tacacs dgram udp wait root /etc/xtacacsd xtacacsd -c /etc/xtacacsd-conf

Dopo di che, dovrete editare il file "/etc/xtacacsd-conf" e personalizzarlo, se necessario, per il vostro sistema (comunque potrete utilizzare, probabilmente, le impostazioni predefinite così come sono).

Nota

Se state usando le shadow password (si veda la Sezione 6.6 per maggiori dettagli), avrete qualche problema con questo pacchetto. Sfortunatamente, PAM (Pluggable Authentication Module), che Red Hat utilizza per l'autenticazione degli utenti, non è supportato da questo pacchetto. La mia soluzione a questo problema è tenere un file "passwd" separato in "/usr/local/xtacacs/etc/" che combacia con quello presente in /etc/ ma non è in formato shadow. Se scegliete questo metodo ricordatevi di impostare i permessi sull'altro file delle password in modo che si leggibile solo da root:

chmod a-wr,u+r /usr/local/xtacacs/etc/passwd

Se usate davvero il formato shadow, dovrete certamente editare il file "/etc/xtacacsd-conf" e la posizione del file di password non shadow (posto che abbiate usato il metodo che vi ho suggerito sopra).

Il passo successivo è quello di configurare il vostro access server per autenticare i login, per i dispositivi desiderati (come i dial-up modem), con TACACS. Ecco un'esempio di come viene fatto:

mail:/tftpboot# telnet xyzrouter

Escape character is '^]'.
User Access Verification
Password: ****
xyzrouter> enable
Password: ****
xyzrouter# config terminal
Enter configuration commands, one per line.  End with CNTL/Z.
xyzrouter(config)# tacacs-server attempts 3
xyzrouter(config)# tacacs-server authenticate connections
xyzrouter(config)# tacacs-server extended
xyzrouter(config)# tacacs-server host 123.12.41.41
xyzrouter(config)# tacacs-server notify connections
xyzrouter(config)# tacacs-server notify enable
xyzrouter(config)# tacacs-server notify logouts
xyzrouter(config)# tacacs-server notify slip
xyzrouter(config)# line 2 10
xyzrouter(config-line)# login tacacs
xyzrouter(config-line)# exit
xyzrouter(config)# exit
xyzrouter# write
Building configuration...
[OK]  
xyzrouter# exit

Connection closed by foreign host.

Tutti i messaggi di log relativi all'attività di TACACS saranno registrati in "/var/log/messages" per un attenta lettura.