Ferrets家的Wordpress

杂记

radius

Windows Server作为Mikrotik设备管理员的3A服务器

2020年7月6日 by Ferrets Leave a Comment

在使用了Mikrotik的RouterOS作为出口路由使用了相当一段时间之后,我彻底成为了ROS的粉丝,现在手里有一个x86的小机和一直RB750Gr3分别在家里和出租屋做出口路由。

虽然设备不多,管理员也就我一个,根本没有3A什么的出场的机会,只不过嘛,生命在于折腾,研究研究不是也很好嘛。

安装NAPS服务器并配置

首先,安装网络访问策略服务器(NAPS),这可以用来作为Radius服务器。通过服务器管理器添加角色与功能,一路下一步,在角色一页勾选上“网络策略与访问服务”,然后继续下一步直至安装完毕为止。我因为懒得卸掉重装,后面的就没继续截图了。

  • 添加角色与功能
  • 没啥的,下一步
  • 直接下一步
  • 选择服务器
  • 勾选“网络策略与访问服务”

安装完NPS之后,就可以开始配置。当然,首先,是添加用户组,并将用户添加到组,顺便确认一下用户的拨入属性由NAPS控制。

  • MikrotikAdmin用户组
  • 把用户添加到组
  • 用户的拨入属性由NAPS指定

然后,去网络策略服务器,添加radius客户端。允许ROS使用NPS作为radius服务器。IP地址写ROS使用的源地址,机密随意只要和ROS设备上一样即可。

  • 打开网络策略服务器
  • 添加Radius客户端

下一步是新建网络策略,填写策略名称之后,服务类型选择未指定。

  • 填写用户组

然后下一步里面,指定匹配那个Mikrotik管理员组;这时候可以限定NAS标识符或者限定被叫站ID(前者默认是ROS的system identity,后者默认是radius客户端的IP地址)。

  • 指定条件
  • 指定用户组
  • 只匹配MikrotikAdmin用户组
  • 限定NAS标识符
  • 匹配-Mikrotik-
  • 指定条件

选择匹配策略的授权访问。至于身份验证方法,暂时知道ROS使用的mschapv2,以后会不会改就不知道了。至于约束,默认下一步。

  • 选择授权访问
  • 认证方法
  • 指定约束

到了配置设置的一步,把默认的两个标准删掉,手动添加Service-Type,值为Login,虽然默认的似乎也能用。

  • 添加属性“Service-Type”,类型为Login
  • 只保留一个

然后就是精华所在:在“供应商特定”一项里面,手动添加一个属性,属性是Vendor-Specific,添加。添加一个属性,供应商为“14988”,符合RFC规格,然后配置属性。供应商分配的属性号为3,属性格式为字符串,属性值就是用户组的名字。系统默认最高权限的组的名字是full,我这里填的就是full。

  • 选择Vendor-Specific
  • 添加指定属性

然后禁用BAP(因为感觉没什么乱用,似乎不禁用也行),下一步,完成。Windows Server这边就OK了。

  • 引用BAP
  • 保存

配置ROS

首先,选好ROS的系统名称,保证能够匹配到NAPS上的那个过滤策略。

然后,在ROS上配置Radius客户端。Service选择login就行,address填NAPS的地址,Secret就是刚才在NAPS添加Radius客户端的机密,同时,建议指定一下源地址,特别是ROS有多个接口IP地址的时候。

下一步,在system-users中启用AAA登录,Default Group选择最低权限的一个,那就行了。

最后验证一下,大功告成!

Posted in: 搭建服务, 网络 Tagged: Mikrotik, NAPS, radius, ROS, RouterOS, User Group, windows server

在openwrt上使用EAP加密wifi

2016年3月12日 by Ferrets Leave a Comment

参考资料:

https://wiki.openwrt.org/oldwiki/wpa2enterprise

http://mailing.unix.freeradius-users.narkive.com/6aB8aIhP/eap-mschap-v2-mschap-failed-no-nt-lm-password-cannot-performauthentication

暂时来说,EAP是起来了,但是还是没搞懂怎么用该死的sql来做储存。而且我根据教程用原版配置文件慢慢改出来的配置超他妈神奇的不能接受localhost的请求,偏偏来自其他机器的请求就能收到,真是理解不能。

废话不多说,直接开始:

 

1:替换掉原有的mini工具包,官方出场的固件自带的不支持EAP。如果没有openssl的话,也顺便装上。

opkg remove wpad-mini hostapd-mini
opkg install wpad hostapd openssl-util

2:安装freeradius

opkg install freeradius2 freeradius2-common freeradius2-democerts freeradius2-mod-always freeradius2-m
od-attr-filter freeradius2-mod-attr-rewrite freeradius2-mod-chap freeradius2-mod-detail freeradius2-mod-eap freeradiu
s2-mod-eap-gtc freeradius2-mod-eap-md5 freeradius2-mod-eap-mschapv2 freeradius2-mod-eap-peap freeradius2-mod-eap-tls
freeradius2-mod-eap-ttls freeradius2-mod-exec freeradius2-mod-expiration freeradius2-mod-expr freeradius2-mod-files f
reeradius2-mod-ldap freeradius2-mod-logintime freeradius2-mod-mschap freeradius2-mod-pap freeradius2-mod-passwd freeradius2-mod-preprocess freeradiu
s2-mod-radutmp freeradius2-mod-realm freeradius2-mod-sql freeradius2-mod-sql-mysql freeradius2-mod-sql-pgsql freeradi
us2-mod-sql-sqlite freeradius2-mod-sqlcounter freeradius2-mod-sqllog freeradius2-utils

可以酌情减掉不需要的部分,这次主要用到的有chap eap-mschapv2 eap-tls files这几个。

3.把全部的配置文件备份起来包括/etc/freeradius2/下面的几个.conf还有sites里面的那个default,通通移到别的地方,因为完全不需要这么臃肿的配置文件(而且我试过用了反而连不上这种糟糕的状况)。然后创建下面几个配置文件

radiusd.conf

prefix = /usr
exec_prefix = /usr
sysconfdir = /etc
localstatedir = /var
sbindir = /usr/sbin
logdir = ${localstatedir}/log/radius
raddbdir = /etc/freeradius2
dictionary = /usr/share/freeradius2/
db_dir = ${raddbdir}/db
libdir = /usr/lib/freeradius2
radacctdir = ${logdir}/radacct
confdir = ${raddbdir}
run_dir = ${localstatedir}/run
listen {
        ipaddr = *
        port = 0
        type = auth
}
thread pool {
        start_servers = 1
        max_servers = 4
        min_spare_servers = 1
        max_spare_servers = 3
        max_requests_per_server = 0
}
$INCLUDE  ${confdir}/clients.conf
modules {
        mschap {
                authtype = MS-CHAP
        }
        $INCLUDE ${confdir}/eap.conf
        mschapv2 {
        }
        files {
                usersfile = ${confdir}/users
                compat = no
        }
}
authorize {
        files
        mschap
        eap
}
authenticate {
        Auth-Type MS-CHAP {
                mschap
        }
        eap
}

clients.conf

client 127.0.0.1 {
        secret          = thisisafuckingsecrectpasswordyoudontknow
        shortname       = localhost
        nastype     = other     # localhost isn't usually a NAS...
}

eap.conf

eap {
        default_eap_type = peap
        timer_expire     = 60
        ignore_unknown_eap_types = no
        cisco_accounting_username_bug = no
        mschapv2 {
        }
        tls {
                rsa_key_length = 2048
                dh_key_length = 1024
                private_key_password = whatever
                private_key_file = ${raddbdir}/certs/radius.key
                certificate_file = ${raddbdir}/certs/radius.crt
                CA_file = ${raddbdir}/certs/radius.crt
                dh_file = ${raddbdir}/certs/dh
                fragment_size = 1024
        }
        peap {
                default_eap_type = mschapv2
        }
}

PS:记得创建证书和dh文件

openssl req -x509 -newkey rsa:2048 -keyout radius.key -out radius.crt -days 3650
openssl dhparam -out dh 1024

user

DEFAULT Group == "disabled", Auth-Type := Reject
 Reply-Message = "Your account has been disabled."
fruser Cleartext-Password := "fruser"
 Reply-Message = "Hello, %{User-Name}",
 Fall-Through = no

PS:如果后面还有其他的用户,Fall-Through就用yes,否则用no

配置文件都写好之后,用 radiusd -XX 来检查服务器是否能够正常工作。如果没问题的话就下一步,如果有问题……自己google吧。

3:修改openwrt的无线设置,选择EAP作为加密方式,就像下面这样

捕获

保存并应用,搞定收工。

Posted in: OpenWrt Tagged: EAP, freeradius, OpenWrt, radius, WiFi

搜索站点

日历

2022年 5月
一二三四五六日
 1
2345678
9101112131415
16171819202122
23242526272829
3031 
« 3月    

分类

  • Android
  • docker
  • Linux
  • OpenWrt
  • PHP
  • Proxmox
  • RaspberryPi
  • RouterOS
  • Windows
  • 吐槽
  • 搭建服务
  • 未分类
  • 生活
  • 网络

近期文章

  • Proxmox中LXC容器中docker调用宿主机的显卡加速
  • Linux上iptables端口触发拦截
  • 通过DHCP指定mtu
  • openwrt 国内镜像源
  • 为RDP启用显卡加速,提升远程桌面效果
  • 为proxmox启用intel核显的虚拟化
  • windows无法解析域名
  • 在openwrt路由上运行shairplay作为远程音箱
  • 建立私有docker镜像源
  • RouterOS上抵挡扫描的防火墙策略

友链

  • ntzyz's space
  • Openwrt中文论坛
  • SNGR
  • Trevikids行止由心
  • 煎蛋

归档

管理

  • 登录
  • 条目feed
  • 评论feed
  • WordPress.org

Copyright © 2022 Ferrets家的Wordpress.

Omega WordPress Theme by ThemeHall

 

正在加载评论...