J'ai un problème avec un point d'accès autonome Cisco Aironet AP1260 et un serveur FreeRADIUS. J'essaie de configurer un point d'accès 802.11x avec authentification sur un serveur FreeRADIUS. J'ai configuré à la fois le point d'accès et le serveur, créé un utilisateur temporel dans la base de données FreeRADIUS. /etc/raddb/users
et testé le serveur RADIUS avec radtest
utilité. Mais lorsque j'essaie de me connecter à mon AP, je me vois refuser l'accès, et il n'y a pas de journal de bord. FreeRADIUS
du tout. Je suis sûr que la configuration de mes journaux est correcte (les journaux extrêmement verbeux sont activés). J'ai essayé d'exécuter radiusd -X
pour visualiser l'activité en temps réel, mais cela ne m'a donné aucun résultat : radtest
L'activité est bonne, mais aucune activité de l'AP.
J'ai bien vérifié le trafic UDP avec tcpdump
Les demandes de l'AP atteignent le serveur, mais sont ignorées par le démon FreeRADIUS. Les ports sont aussi correctement configurés (par défaut, ils ont pour valeur 1812
pour l'authentification).
Alors, comment faire pour que FreeRADIUS accepte les demandes d'authentification de Cisco ?
UPDATE : radtest
ne fonctionne que sur localhost. Même si je connecte directement deux machines sur lesquelles se trouve Linux et que je lance la commande radiusd -X
sur le premier, et essayer de radtest
sur le second, il n'y aura aucune réaction du serveur FreeRADIUS. Je pense qu'il y a une erreur de configuration dans FreeRADIUS, mais où se trouve-t-elle ?
Voilà mes configurations :
sasaika#sh run
Building configuration...
Current configuration : 2030 bytes
!
version 12.4
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
service password-encryption
!
hostname sasaika
!
logging rate-limit console 9
enable secret 5 *omitted*
!
aaa new-model
!
!
aaa group server radius rad_eap
server 172.16.10.13 auth-port 1812 acct-port 1813
!
aaa authentication login eap_methods group rad_eap
!
aaa session-id common
ip domain name ex.example.com
!
!
dot11 syslog
!
dot11 ssid Edhelwen
authentication open eap eap_methods
authentication network-eap eap_methods
authentication key-management wpa version 2
guest-mode
!
!
!
username *omitted* privilege 15 secret 5 *omitted*
!
!
ip ssh time-out 60
ip ssh version 2
bridge irb
!
!
interface Dot11Radio0
description Test-WiFi
no ip address
no ip route-cache
!
encryption mode ciphers aes-ccm
!
ssid Edhelwen
!
antenna gain 0
station-role root access-point
bridge-group 1
bridge-group 1 subscriber-loop-control
bridge-group 1 block-unknown-source
no bridge-group 1 source-learning
no bridge-group 1 unicast-flooding
bridge-group 1 spanning-disabled
!
interface Dot11Radio1
no ip address
no ip route-cache
shutdown
antenna gain 0
station-role root
bridge-group 1
bridge-group 1 subscriber-loop-control
bridge-group 1 block-unknown-source
no bridge-group 1 source-learning
no bridge-group 1 unicast-flooding
bridge-group 1 spanning-disabled
!
interface GigabitEthernet0
no ip address
no ip route-cache
duplex auto
speed auto
no keepalive
bridge-group 1
no bridge-group 1 source-learning
bridge-group 1 spanning-disabled
!
interface BVI1
ip address 172.16.10.12 255.255.255.128
no ip route-cache
!
ip http server
no ip http secure-server
ip http help-path http://www.cisco.com/warp/public/779/smbiz/prodconfig/help/eag
radius-server host 172.16.10.13 auth-port 1812 acct-port 1813 key 7 *omitted*
bridge 1 route ip
!
!
!
line con 0
line vty 0 4
transport input ssh
line vty 5 15
transport input ssh
!
end
/etc/raddb/radiusd.conf
:
prefix = /usr
exec_prefix = /usr
sysconfdir = /etc
localstatedir = /var
sbindir = /usr/sbin
logdir = ${localstatedir}/log/radius
raddbdir = ${sysconfdir}/raddb
radacctdir = ${logdir}/radacct
name = radiusd
confdir = ${raddbdir}
run_dir = ${localstatedir}/run/${name}
db_dir = ${raddbdir}
libdir = /usr/lib/freeradius
pidfile = ${run_dir}/${name}.pid
user = radiusd
group = radiusd
max_request_time = 30
cleanup_delay = 5
max_requests = 1024
listen {
type = auth
ipaddr = *
port = 1812
}
listen {
ipaddr = *
port = 1813
type = acct
}
hostname_lookups = no
allow_core_dumps = no
regular_expressions = yes
extended_expressions = yes
log {
destination = files
file = ${logdir}/radius.log
requests = ${logdir}/radiusd-%Y%m%d.log
syslog_facility = daemon
stripped_names = yes
auth = yes
auth_badpass = yes
auth_goodpass = yes
msg_goodpass = "Good: "
msg_badpass = "Bad: "
}
checkrad = ${sbindir}/checkrad
security {
max_attributes = 200
reject_delay = 1
status_server = yes
}
proxy_requests = off
$INCLUDE clients.conf
thread pool {
start_servers = 5
max_servers = 32
min_spare_servers = 3
max_spare_servers = 10
max_requests_per_server = 0
}
modules {
$INCLUDE ${confdir}/modules/
$INCLUDE eap.conf
}
instantiate {
exec
expr
expiration
logintime
}
$INCLUDE policy.conf
$INCLUDE sites-enabled/
/etc/raddb/clients.conf
:
client cisco-ap {
ipaddr = 172.16.10.12
nastype = cisco # i tried to disable it, no effect
secret = *omitted*
require_message_authenticator = no
}
client localhost {
ipaddr = 127.0.0.1
secret = *omitted*
require_message_authenticator = no
}
0 votes
Le pare-feu local de votre serveur autorise-t-il le port 1812 ? Si vous voyez le paquet sur le fil, mais pas dans les journaux de FreeRadius, quelque chose le bloque ou un autre processus écoute sur ce port.
0 votes
Si quelque chose écoute sur le port 1812, radiusd ne pourra pas démarrer. A propos,
radtest
ne fonctionne que sur localhost. Même si je connecte directement deux machines sur lesquelles se trouve Linux et que j'essaie deradtest
il n'y aura pas de réaction du serveur FreeRADIUS. Je pense qu'il y a une erreur de configuration dans FreeRADIUS, mais où se trouve-t-elle ?