raddb/radiusd.conf Проверьте раскомментирован ли mschap в секции «MODULES»
mschap {
authtype = MS-CHAP
use_mppe = yes
require_encryption = yes
require_strong = yes
}
authorize {
preprocess
pre_auth
mschap
eap
files
}
authenticate {
#
# MSCHAP authentication.
Auth-Type MS-CHAP {
mschap
}
#
# Allow EAP authentication.
eap
}
Оповещать о неавторизированных пользователях.
post-auth {
Post-Auth-Type REJECT {
post_auth
}
}
Нужно создать функции для преавторизации и поставторизации
exec pre_auth {
wait = yes
program = "/usr/abills/libexec/rauth.pl pre_auth"
input_pairs = request
output_pairs = config
}
exec post_auth {
wait = yes
program = "/usr/abills/libexec/rauth.pl post_auth"
input_pairs = request
output_pairs = config
}
Файл raddb/eap.conf
eap {
default_eap_type = md5
timer_expire = 60
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
# Supported EAP-types
md5 {
}
leap {
}
gtc {
#challenge = "Password: "
auth_type = PAP
}
tls {
private_key_password = whatever
private_key_file = /usr/abills/Certs/eap/cert-srv.pem
certificate_file = /usr/abills/Certs/eap/cert-srv.pem
CA_file = /usr/abills/Certs/eap/root.pem
dh_file = /usr/abills/Certs/eap/dh
random_file = /usr/abills/Certs/eap/random
fragment_size = 1024
include_length = yes
}
peap {
default_eap_type = mschapv2
}
mschapv2 {
}
}
(В данном примере используются сертификаты поставляемые вместе с FreeRadius желательно заменить их на реальные)
В raddb/clients.conf внесите Ваш сервер доступа
client 192.168.0.16 {
secret = radiussecret
shortname = testnet
}
raddb/users
DEFAULT Auth-Type = Accept Exec-Program-Wait = "/usr/abills/libexec/rauth.pl"
raddb/acct_users
DEFAULT Acct-Status-Type == Start Exec-Program = "/usr/abills/libexec/racct.pl" DEFAULT Acct-Status-Type == Alive Exec-Program = "/usr/abills/libexec/racct.pl" DEFAULT Acct-Status-Type == Stop Exec-Program = "/usr/abills/libexec/racct.pl"
! aaa new-model aaa authentication dot1x default group radius !
! dot1x system-auth-control !
Настраиваем параметры доступа к RADIUS серверу:
! radius-server host 10.0.0.1 auth-port 1812 acct-port 1813 radius-server key testkey !
Настройка порта
! interface FastEthernet0/1 switchport mode access no ip address dot1x port-control auto !
Настройка гостевого VLAN для пользователей не прошедших авторизацию но EAP.
Пользователя перкидывает в гостевой VLAN поле 3 безуспешних периодов аторизации или если авторизация непрошла на протяжении 15 секунд.
Switch(config-if)# dot1x timeout quiet-period 3 Switch(config-if)# dot1x timeout tx-period 15 Switch(config-if)# dot1x guest-vlan 2 Switch(config-if)# dot1x reauthentication Switch(config-if)# dot1x auth-fail vlan 2
/ System configuration/ NAS/
| Type: | Other |
|---|---|
| RADIUS Parameters (,) | Tunnel-Medium-Type=IEEE-802, Tunnel-Private-Group-Id=20, Tunnel-Type=VLAN |
DES-3018 Firmware: Build 3.00.034
Guest VLAN
Настройка с возможностью занесения пользователя в определённый VLAN
D-Link
config vlan default delete 1-18 create vlan v20 tag 20 config vlan v20 add tag 17 config ipif System ipaddress 10.254.254.4/24 vlan v20 create vlan v10 tag 10 config vlan v10 add untagged 1-12 # Включите 802.1x и Guest VLAN # enable 802.1x create 802.1x guest_vlan v10 config 802.1x guest_vlan ports 1-12 state enable # Сделайте коммутатор посредником в процессе 802.1x # config 802.1x capability ports 1-12 authenticator config radius add 1 10.254.254.1 key radsec default create iproute default 10.254.254.1
Просмотреть состояние порта
show 802.1x auth_configuration ports 1
| Type: | Other |
|---|---|
| RADIUS Parameters (,) | Tunnel-Medium-Type=IEEE-802, Tunnel-Private-Group-Id=20, Tunnel-Type=VLAN |
После успешной авторизации RADIUS выдаёт следующие пары:
Access-Accept - авторизация прошла успешно.
Sending Access-Accept of id 4 to 10.1.90.6 port 8021
EAP-Message = 0x03030004
Message-Authenticator = 0x00000000000000000000000000000000
User-Name = "test"
Session-Timeout = 1412650
Tunnel-Type:0 = VLAN
Tunnel-Medium-Type:0 = IEEE-802
Tunnel-Private-Group-Id:0 = "20"
Акаунтинг Start от D-link
rad_recv: Accounting-Request packet from host 10.1.90.6:8022, id=5, length=103
Acct-Session-Id = "000000000001"
Acct-Status-Type = Start
Acct-Authentic = RADIUS
Acct-Delay-Time = 0
NAS-Port = 2
Calling-Station-Id = "00-13-77-34-5F-A8"
Service-Type = Framed-User
NAS-IP-Address = 10.1.90.6
NAS-Identifier = "D-Link"
User-Name = "test"
Sending Accounting-Response of id 5 to 10.1.90.6 port 8022
Console(config)#radius-server key radsecret Console(config)#radius-server 1 host 192.168.34.2 #Accounting Console(config)#aaa group server radius tps-radius Console(config)#server 1 Console(config)#aaa accounting dot1x tps start-stop group radius Console(config)#aaa accounting update periodic 5 Console(config)#interface ethernet 1/2 Console(config-if)#accounting dot1x tps #show 802.1x Console#show dot1x #enable 802.1x Console(config)#dot1x system-auth-control #Auth add port 1 Console(config)#interface ethernet 1/1 Console(config-if)#dot1x port-control auto Console(config-if)#dot1x re-authentication Console(config-if)#dot1x max-req 5 Console(config-if)#dot1x timeout quiet-period 30 Console(config-if)#dot1x timeout re-authperiod 1800 Console(config-if)#dot1x timeout tx-period 40 Console(config-if)#dot1x intrusion-action guest-vlan Console(config-if)#exit Console(config)#exit Console#show dot1x
Hits: 389