Open h-lopez opened 7 months ago
side notes for future PR once this more or less works:
i thought wrapping an ipv4 address in brackets leads to an invalid config but it works... if there's an existing TACACs session already going on similar to the ipv6 issue already mentioned
#server=172.21.50.106:49
server=[172.21.50.106]:49
i'm not 100% sure how the underlying modules interact but i guess nss_tacplus can't parse addresses if they have brackets? fwiw passing along an ipv6 addr without brackets doesn't work either.
you can specify fqdn in cumulusvx, results in:
prefer_ip_version=4
secret=[redacted]
server=tacacs1.hlnet.us:49
got it to work if you specify ipv6 tacacs host as fqdn....but not as the actual v6 addr
this is interesting, throwing this into an issue to look at later.
relevant docs:
relevant files:
/etc/tacplus_nss.conf
/etc/tacplus_servers
vyos currently adds the servers+keys to both files which seems excessive, from the tacacs config template vyos ships with, we can just have
tacplus_nss.conf
read the server list fromtacplus_servers
, so uncommented that linerelevant section in
tacplus_servers
:however, trying to actually use this config results in failure, tacacs fails to authenticate against the remote server
despite the syslog errors about "invalid server", pcap shows it reaching out to the remote server via ipv6 but failing. i can see it log to my tacacs server, again sourcing from an ipv6 address, so ipv6 transport def works.
if i revert to using ipv4 AND remote in and leave that TACACS user session connected:
...then update the config to use IPv6 servers again:
i can authenticate new TACACS sessions using an IPv6 TACACS server, under different accounts (with differing priv level)
as soon as I disconnect all active TACACS users sessions, it goes back to failing. WTF