Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Projets publics
puppet-freeradius
Commits
ca24df07
Commit
ca24df07
authored
Nov 11, 2014
by
Jonathan Gazeley
Browse files
First pass support for native SQL connections
parent
6833798e
Changes
2
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
ca24df07
...
...
@@ -65,7 +65,7 @@ The maximum number of requests which the server keeps track of. This should be 2
Limit on the total number of servers running. Default:
`4096`
##### `mysql_support`
Install support for MySQL. Default:
`false`
Install support for MySQL.
Note this only installs the package. Use
`freeradius::sql`
to configure SQL support.
Default:
`false`
##### `perl_support`
Install support for Perl. Default:
`false`
...
...
@@ -238,6 +238,43 @@ freeradius::site { 'inner-tunnel':
}
```
#### `freeradius::sql`
Configure SQL connections. You can define multiple database connections by
invoking this resource multiple times. If you are using MySQL, don't forget to
also set
`mysql_support => true`
in the base
`freeradius`
class.
##### `database`
Default:
`undef`
. Required. Specify which FreeRADIUS database driver to use. Choose one of
`mysql`
,
`mssql`
,
`oracle`
,
`postgresql`
##### `server`
Default:
`localhost`
. Specify hostname of IP address of the database server.
##### `login`
Default:
`radius`
. Username to connect to the databae.
##### `password`
Default:
`undef`
. Required. Password to connect to the database.
##### `radius_db`
Default:
`radius`
. Name of the database. Normally you should leave this alone. If you are using Oracle then use this instead:
`(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SID=your_sid)))`
.
```
puppet
freeradius::sql
{
'mydatabase'
:
database
=>
'mysql'
,
server
=>
'192.168.0.1'
,
login
=>
'radius'
,
password
=>
'topsecret'
,
radius_db
=>
'radius'
,
}
```
#### `freeradius::statusclient`
Define RADIUS clients, specifically to connect to the status server for monitoring.
...
...
manifests/sql.pp
0 → 100644
View file @
ca24df07
# Configure SQL support for FreeRADIUS
define
freeradius::sql
(
$database
,
$password
,
$server
=
'localhost'
,
$login
=
'radius'
,
$radius_db
=
'radius'
,
)
{
$fr_package
=
$::freeradius::params::fr_package
$fr_service
=
$::freeradius::params::fr_service
$fr_basepath
=
$::freeradius::params::fr_basepath
$fr_group
=
$::freeradius::params::fr_group
# Validate our inputs
if
(
$database
!=
'mysql'
and
$database
!=
'mssql'
and
$database
!=
'oracle'
and
$database
!=
'postgresql'
)
{
error
(
'$database must be one of mysql, mssql, oracle, postgresql'
)
}
# Generate a module config, based on sql.conf
file
{
"
${fr_basepath}
/modules/
${name}
"
:
mode
=>
'0640'
,
owner
=>
'root'
,
group
=>
$fr_group
,
content
=>
template
(
'freeradius/sql.conf.erb'
),
require
=>
[
Package
[
$fr_package
],
Group
[
$fr_group
]],
notify
=>
Service
[
$fr_service
],
}
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment