ftao / vpn-deploy-playbook

A Collection of Ansible Playbook for deploy vpn services
GNU General Public License v3.0
919 stars 160 forks source link

freeradius virtual server support #72

Open ftao opened 9 years ago

ftao commented 9 years ago

在同一台服务器提供多组不同的认证规则, 不同的接入服务器(NAS) 可以连接到不同的端口。 涉及到的修改:

ftao commented 9 years ago

思路如下:

  1. 主配置 需要套一个 server
  2. sql.conf 需要重命名为 sql_virtual_server_name.conf
  3. 可以删除 customize diaup , 直接把内容放在 sql_virtual_server_name.conf 里面。
  4. 加一个 require_group 选项, 然后生成一段sql , 覆盖 authorize_check_query
        authorize_check_query = "SELECT id, username, attribute, value, op \
          FROM ${authcheck_table} \
          WHERE username = '%{SQL-User-Name}' \
          AND  EXISTS (SELECT 1 FROM $(usergroup_table) WHERE username = '%{SQL-User-Name}' AND groupname == "SOME GROUP")
          ORDER BY id"

唯一的问题是,如果include 两个role , 生成数据库那部分代码会跑两遍。 不过这个问题不大。