xauth-pam Plugin
Purpose
The xauth-pam
plugin for libcharon
is an IKEv1 XAuth server backend. It
requests username/password XAuth credentials and verifies them against Pluggable
Authentication Modules (PAM
). It may be used for IKEv2 connections via
the eap-gtc
plugin.
The plugin is disabled by default and can be enabled with the
./configure
option
--enable-xauth-pam
Configuration
The xauth-pam
plugin is configured using the following options in the
charon.plugins.xauth-pam
section of strongswan.conf
:
Key | Default | Description |
---|---|---|
pam_service |
[→] |
PAM service to use for authentication.
|
session |
|
Open/close a PAM session for each active IKE_SA |
trim_email |
|
If an email address is received as an XAuth username, trim it to just the username part |
By default the plugin uses the PAM service login
which should be available
on most systems. But you may create your own service, e.g in /etc/pam.d/ipsec
:
#%PAM-1.0 auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_unix.so likeauth nullok auth required /lib/security/pam_deny.so
To use that service, set the pam_service
option above to ipsec
.
Connections
To authenticate clients with this backend, set:
connections { <conn>: { remote-rsa { auth = pubkey } remote-xauth { auth = xauth-pam } version = 1 # ... } }
for traditional XAuth
plus RSA. For Hybrid authentication, use
connections { <conn>: { remote { auth = xauth-pam } version = 1 # ... } }