当前位置:首页 > 路由交换 > 正文

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

我们前面介绍了H3C设备SSL VPN的典型配置,VSR系列请参考一篇能解决90%以上SSL VPN问题的武林秘籍,MSR系列请参考实测确认!H3C MSR810路由器自带SSL VPN授权,免费搭建远程接入就这么简单

虽然设备的默认SSL VPN用户授权数量为15个,但有钱的用户可能会购买更多的授权。目前,设备上一般默认支持创建超过1000个本地用户,但SSL VPN用户目前好像还不能在WEB页面进行管理,这样命令行的配置就会非常多,管理用户就会变得不太方便。

当然,官方也考虑到了这一点。SSL VPN网关对用户的认证和授权可以通过AAA认证服务器来完成,目前支持的AAA协议包括RADIUS协议和LDAP协议。你可以使用我们前面刚刚介绍的FreeRADIUS免费又专业!FreeRADIUS对接H3C无线网络,完美实现Portal认证,或者试一下我们今天要介绍的ToughRADIUS。

ToughRADIUS是一个带友好Web管理界面的开源RADIUS服务器,支持主流Linux服务器操作系统;配合PostgreSQL作为其后台数据库,支持批量用户导入导出,方便大批量的用户操作。

本次,我们依旧在Ubuntu系统上来配置ToughRADIUS。

首先,我们需要安装PostgreSQL数据库。


apt update

apt install postgresql postgresql-contrib -y


告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

然后,启动PostgreSQL并使能开机自启。


systemctl start postgresql

systemctl enable postgresql

systemctl status postgresql



告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

接下来,我们以postgres用户身份登录PostgreSQL,并创建ToughRADIUS管理数据所需的PostgreSQL数据库和用户。


sudo -u postgres psql

CREATE USER toughradius WITH PASSWORD 'toughradius';

CREATE DATABASE toughradius WITH OWNER toughradius;

GRANT ALL PRIVILEGES ON DATABASE toughradius TO toughradius;

\q



告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

ToughRADIUS提供了便捷的脚本安装方式,我们直接下载并运行即可完成安装,一键式部署脚本命令如下,该脚本可以自动完成ToughRADIUS的编译、安装和系统服务注册。

bash -c "$(curl -fsSL https://raw.githubusercontent.com/talkincode/toughradius/main/installer.sh)"


安装完成后,我们需要修改ToughRADIUS的主配置文件/etc/toughradius.yml,调整配置文件中的database数据库连接部分,来连接到我们创建的PostgreSQL数据库。


nano /etc/toughradius.yml

    database:

      type: postgres

      host: 127.0.0.1

      port: 5432

      name: toughradius

      user: toughradius

      passwd: toughradius

      max_conn: 100

      idle_conn: 10

      debug: false



告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

配置完成后,我们就可以启动ToughRADIUS服务并开始使用了。


systemctl enable toughradius

systemctl start toughradius

systemctl status toughradius




告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

服务启动之后,检查服务监听的端口状态。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

如果要配置ufw防火墙ufw命令简介,这里的PostgreSQL数据库只需要本地访问,无需开放。用于ToughRADIUS系统管理的Web管理控制台的默认端口为TCP-1816,用户自助服务门户的默认端口为TCP-1819,用于RADIUS网络设备接入认证的默认端口为UDP-1812,用于RADIUS网络设备接入计费的默认端口为UDP-1813,这些端口需要配置为允许访问。

接下来,我们就可以通过浏览器来访问ToughRADIUS的Web管理控制台了,默认的用户名/密码为:admin/toughradius。首次登录后,建议立即修改默认密码。

http://192.168.1.222:1816/

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

登录成功的页面如下,还支持中文配置,比较友好。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

配置接入设备时,分为CPE设备和VPE设备两种,我看了一下,CPE设备主要是TR069设备,应该是给运营商用的;VPE设备的配置跟NAS设备差不多。那我们就进入【VPE设备】配置界面,单击【新建】,在弹出的配置页面中,配置MSR810设备为NAS设备,并单击【保存】使配置生效。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

然后,进入【Radius】下的【配置文件】页面,单击【新建】,创建一个Radius配置文件备用。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

接下来,切换到【账户】页面,单击【新建】,创建一个Radius账户,并单击【保存】生效配置。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

到这里,ToughRADIUS一侧基本上就配置完成了。我们修改MSR810设备上的SSL VPN用户认证方式为AAA,并创建对应的Radius策略。

#

radius scheme toughradius

 primary authentication 192.168.1.222

 key authentication simple tiejunge

 user-name-format without-domain

 nas-ip 192.168.1.81

#

domain toughradius

 authorization-attribute user-group tietou

 authentication sslvpn radius-scheme toughradius

 authorization sslvpn radius-scheme toughradius

#

sslvpn context tietou

 aaa domain toughradius




告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

然后,我们就可以使用ToughRADIUS上配置的账号登录SSL VPN了。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

登录成功之后,我们可以在ToughRADIUS上查看Radius在线会话。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

还可以查看Radius统计信息。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

最后,我们试一下批量创建账户。先在Radius账户界面导出现有账户,然后批量复制账号数据。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

最后再将导出的账号文件导入回去就可以了。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

还行,ToughRADIUS这个工具还算挺好用的。解决了FreeRADIUS命令行配置繁琐、批量管理不便的问题。

告别繁琐命令行:用开源ToughRADIUS轻松管理H3C SSLVPN千名用户

查看系统状态,资源利用率也不算太高,低配服务器也能流畅运行。这样的Radius工具,你喜欢吗?


相关文章:

文章已关闭评论!