1.1、安装OpenLdap

# 在数据目录创建ldap文件存放ldap的配置文件
mkdir -p /data/ldap/{data,conf} docker run -p 389:389 -p 636:636 \
--name ldap \
--env LDAP_TLS_VERIFY_CLIENT="never" \
--env LDAP_ORGANISATTON="xxxx" \
--env LDAP_DOMAIN="xxxx.com" \
--env LDAP_ADMIN_PASSWORD="xxxx" \
-v /data/ldap/data:/var/lib/ldap \
-v /data/ldap/conf:/etc/ldap/slapd.d \
--detach docker.e6gpshk.com:8443/yunwei/e6yun-openldap:v1.2.5

参数说明

  • LDAP_TLS_VERIFY_CLIENT:是否需要TLS认证
  • LDAP_ORGANISATTON:配置LDAP组织者
  • LDAP_DOMAIN:配置LDAP域
  • LDAP_ADMIN_PASSWORD:配置LDAP密码
  • 默认登录用户名:admin

1.2、安装可视化操作界面

docker run \
-d --privileged \
-p 18004:80 \
--name phpldapadmin \
--env PHPLDAPADMIN_HTTPS=false \
--env PHPLDAPADMIN_LDAP_HOSTS=10.30.1.4 \
--detach docker.e6gpshk.com:8443/yunwei/e6yun-openldap-web:v1.2.5

参数说明

  • PHPLDAPADMIN_HTTPS:是否使用https
  • PHPLDAPADMIN_LDAP_HOSTS:填写主机地址

2.1、安装radius

将下面yml保存至radius.yml文件

version: "3"
services:
radius:
image: freeradius/freeradius-server:3.2.0-alpine
container_name: radius
restart: always
ports:
- '1812:1812/udp'
- '1813:1813/udp'
- '1833:1833/udp'
docker-compose -f ./radius.yml up -d

2.2、配置ldap

# 将容器中的ldap配置文件复制出来
docker cp radius:/etc/raddb/mods-available/ldap ./

将配置修改为如下配置

ldap {

	server = 'ldap.e6gpshk.com'
port = 389
identity = 'cn=admin,dc=xxxx,dc=com'
password = xxxx
base_dn = 'ou=People,dc=xxxx,dc=com'
sasl {
}
update {
control:Password-With-Header += 'userPassword'
control: += 'radiusControlAttribute'
request: += 'radiusRequestAttribute'
reply: += 'radiusReplyAttribute'
}
user_dn = "LDAP-UserDn"
user {
base_dn = "${..base_dn}"
filter = "(&(objectClass=inetOrgPerson)(memberOf=cn=wifi,ou=Group,dc=e6yun,dc=com)(!(gidNumber=503))(cn=%{%{Stripped-User-Name}:-%{User-Name}}))"
sasl {
}
}
group {
base_dn = "${..base_dn}"
filter = '(objectClass=posixGroup)'
membership_attribute = 'memberOf'
}
profile {
}
client {
base_dn = "${..base_dn}"
filter = '(objectClass=radiusClient)'
template {
}
attribute {
ipaddr = 'radiusClientIdentifier'
secret = 'radiusClientSecret'
}
}
accounting {
reference = "%{tolower:type.%{Acct-Status-Type}}"
type {
start {
update {
description := "Online at %S"
}
}
interim-update {
update {
description := "Last seen at %S"
}
}
stop {
update {
description := "Offline at %S"
}
}
}
}
post-auth {
update {
description := "Authenticated at %S"
}
}
# 将修改好的复制回容器
docker cp ./ldap radius:/etc/raddb/mods-available/ldap
# 创建 site_ldap文件
vim site_ldap
server site_ldap {
listen {
ipaddr = 0.0.0.0
port = 1833
type = auth
}
authorize {
update {
control:Auth-Type := ldap
}
}
authenticate {
Auth-Type ldap {
ldap
}
} post-auth {
Post-Auth-Type Reject {
}
}
}
# 将文件复制到容器/etc/raddb/sites-available/ldap
docker cp ./site-ldap radius:/etc/raddb/sites-available/ldap
# 复制/etc/raddb/clients.conf 文件到本地进行修改
docker cp radius:/etc/raddb/clients.conf ./clients.conf
client localhost {
ipaddr = 0.0.0.0/0 # 主要是修改这里
proto = * secret = qqqqqqqq require_message_authenticator = no limit {
max_connections = 16 lifetime = 0 idle_timeout = 30
}
} client localhost_ipv6 {
ipv6addr = ::1
secret = testing123
}
# 将修改好的文件复制回容器
docker cp ./clients.conf radius:/etc/raddb/clients.conf
# 创建软连接启用ldap插件
ln -s /etc/raddb/mods-available/ldap /etc/raddb/mods-enabled/
ln -s /etc/raddb/sites-available/ldap /etc/raddb/sites-enabled/
# 重启容器
docker restart radius # 到这里已经配置好了

接下来配置防火墙radius服务器,使用openldap导入用户

Radius+OpenLdap+USG防火墙认证的更多相关文章

  1. Radius 远程用户拨号认证系统

    RADIUS 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系 ...

  2. [EAP]将hostapd作为radius服务器搭建EAP认证环境

    文章主要由以下几部分组成: 0.概念理解: WPA/WPA2,EAP,IEEE, 802.11i, WiFi联盟, 802.1x 1.编译hostapd 2.配置hostapd的conf文件 3.外接 ...

  3. USG防火墙基础

    http://support.huawei.com/huaweiconnect/enterprise/thread-331003.html 华为防火墙产品线 安全区域 1.     默认防火墙区域 T ...

  4. 华为USG防火墙nat环回配置

    网络环境介绍: 公司内网有一台web服务器,地址是192.168.100.100,web服务端口为80,并且为这台web服务器申请了DNS A记录的域名解析服务,解析记录是公司出口ip地址100.10 ...

  5. USG防火墙DHCP设置保留IP地址

    在使用disp cur查看当前配置 然后使用undo修改 这样10.0.1.1网段到10.0.1.100之间的IP地址不会分出去

  6. Freeradius+Cisco2500AC+OpenLdap认证

    为了将公司内部认证统一化,启用了802.1x认证,认证流程如下: UserClient->AC控制器->Freeradius->OpenLdap 其中: Freeradius做认证使 ...

  7. CentOS7用hostapd做radius服务器为WiFi提供802.1X企业认证

    CentOS7用hostapd做radius服务器为WiFi提供802.1X企业认证 来源: https://www.cnblogs.com/osnosn/p/10593297.html 来自osno ...

  8. LDAP落地实战(三):GitLab集成OpenLDAP认证

    上一篇文章介绍了svn集成OpenLDAP认证,版本控制除了svn外,git目前也被越来越多的开发者所喜爱,本文将介绍GitLab如何集成openldap实现账号认证 GitLab集成OpenLDAP ...

  9. Openldap基于digest-md5方式的SASL认证配置

    1. openldap编译 如果需要openldap支持SASL认证,需要在编译时加上–enable-spasswd选项安装完cyrus-sasl,openssl(可选),BDB包后执行: 1 2 $ ...

  10. Radius 认证协议介绍-兼rfc导读

    老规矩, 先看维基: 远端用户拨入验证服务(RADIUS, Remote Authentication Dial In User Service)是一个AAA协议,意思就是同时兼顾验证(authent ...

随机推荐

  1. 安装mysql5.7.20,和遇到的一些错误及解决方案

    下载: mysql-5.7.20是解压版免安装的,mysql-5.7.20下载地址:http://dev.mysql.com/downloads/mysql/ 2.安装 解压在你喜欢的位置 3.配置 ...

  2. C语言基础--逻辑判断和循环

    目录 一.储存标识符 1.auto 2.register 3.static 4.const 二.运算符 1.逻辑运算符 2.位运算符 3.运算符 4.三元运算符 三.选择结构 1.if判断 1.1 i ...

  3. MAUI Blazor项目中如何添加一个返回服务,并支持安卓返回键

    前言 MAUI Blazor中,安卓项目的返回键体验很不好,只能如同浏览器一样返回上一页.但很多时候,我们想让他返回的上一页,不一定就是实际上的上一页.而且也想让返回键去支持一些事件,按下返回键触发, ...

  4. Unity UGUI的EventSystem(事件系统)组件的介绍及使用

    Unity UGUI的EventSystem(事件系统)组件的介绍及使用 1. 什么是EventSystem组件? EventSystem是Unity UGUI中的一个重要组件,用于处理用户输入事件, ...

  5. redis 使用 nologin 用户启动

    添加不可登录的redis用户 sudo useradd -M -s /sbin/nologin redis 为redis新建目录,并设置属性 mkdir -p /data/redis &&am ...

  6. Redis从入门到放弃(2):数据类型

    在Redis中,数据以键值对的形式存储.Redis支持五种主要的数据类型,每种类型都有不同的用途和特性. 本文将介绍Redis的五种数据类型:字符串(string),哈希(hash),列表(list) ...

  7. 记一次 .NET 某物流API系统 CPU爆高分析

    一:背景 1. 讲故事 前段时间有位朋友找到我,说他程序CPU直接被打满了,让我帮忙看下怎么回事,截图如下: 看了下是两个相同的程序,既然被打满了那就抓一个 dump 看看到底咋回事. 二:为什么会打 ...

  8. [nginx]反向代理grpc

    前言 nginx从1.13.10版本开始提供对gRPC代理的支持.由于grpc基于http2,因此编译nginx时需要添加参数--with-http_v2_module来启用对http2协议的支持. ...

  9. SpringBoot3分库分表

    标签:ShardingSphere5.分库.分表: 一.简介 分库分表的设计和实现方式,在之前的内容中总结过很多,本文基于SpringBoot3和ShardingSphere5框架实现数据分库分表的能 ...

  10. 如何使用io_uring构建快速响应的I/O密集型应用?

    本文分享自华为云社区<如何使用io_uring构建快速响应的I/O密集型应用>,作者: Lion Long . 当涉及构建快速响应的I/O密集型应用时,io_uring技术展现出了其卓越的 ...