1 votes

Cisco Aironet AP1260 ne peut pas atteindre le serveur FreeRADIUS

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 de radtest 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 ?

0voto

namikiri Points 11

Le problème est résolu. Je suis nouveau sur CentOS et je ne savais pas que cela s'appliquait -A INPUT -j REJECT dans le pare-feu par défaut. Après avoir modifié (en la commentant car il s'agit d'un serveur de test) cette ligne, RADIUS a détecté les paquets d'authentification.

-1voto

drookie Points 7850

En fait, pour 802.1x, il faut aaa authentication ppp <...> ligne, pas login .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X