Documentation
10.3. Operating system / Domain users¶
10.3.1. Introduction¶
The os authentication method can be used to grant access to SFTPPlus services for local users of the operating system that is running SFTPPlus.
To prevent accidentally allowing SFTPPlus access to local users, the default SFTPPlus configuration rejects OS users. You need to explicitly configure the allowed_groups option to include the names of the OS groups for which you want to allow access to SFTPPlus services.
The os authentication can also be used to authenticate administrators for the Web Manager service. For this, you need to explicitly define a group or a set of groups in the manager_allowed_groups configuration option.
Warning
On Linux systems, this authentication method can only be used when the SFTPPlus service is started as root. This restriction is enforced by the default Linux security model.
You can overwrite some of the account's settings (e.g. home folder path), by defining an account of type os inside the configuration file.
The os authentication method will authenticate the following account types:
Windows Local Accounts on Windows systems.
Windows Active Directory Accounts, when SFTPPlus runs on a Windows system which is part of a domain.
Linux accounts with passwords defined in the
/etc/passwd
file or by the Name Service Switch library.Linux accounts with passwords defined in the
/etc/shadow
file.
There are three types of accounts for operating system users:
os - OS accounts for which file transfers are performed as the OS user.
os user - OS accounts for which file transfers are performed as the SFTPPlus service account.
os with config - OS accounts also configured through SFTPPlus, for which file transfers are performed as the OS user. Their passwords are still managed by the operating system.
10.3.2. Linux PAM¶
On systems supporting PAM, PAM can also be used for authenticating users with username and password credentials.
On many Linux systems, PAM is used for enabling various authentication methods such as LDAP, System Security Services Daemon (SSSD), and PKCS#11 smart cards.
When the PAM authentication request returns PAM_SUCCESS, the account is authorized. Any response other than PAM_SUCCESS results in the local account being rejected.
PAM only handles authentication. The account configuration is retrieved using the same generic OS API.
Note
The SFTPPlus' pam authentication method will only use PAM for the authentication operation. PAM is not used for managing accounts, sessions, or passwords. Please get in touch with us if you need to integrate PAM accounts and session management with SFTPPlus.
10.3.3. name¶
- Default value:
''
- Optional:
Yes
- From version:
2.10.0
- Values:
Any text.
- Description:
Human-readable short text used to identify this method.
10.3.4. description¶
- Default value:
''
- Optional:
Yes
- From version:
2.10.0
- Values:
Any text.
- Description:
Human-readable text that describes the purpose of this authentication method.
10.3.5. type¶
- Default value:
''
- Optional:
No
- From version:
2.10.0
- Values:
application - Application accounts.
os - Accounts authenticated by the OS.
http - HTTP (unsecured).
ip-time-ban - Ban an IP address for a time interval.
deny-username - Deny authentication based on usernames.
anonymous - Anonymous account authentication.
ldap - Authenticate against an LDAP server.
local-file - Authenticate the accounts from a separate local file.
radius - Authenticate via a RADIUS server.
entra-id - Microsoft Entra ID
google-identity - Google Identity
- Description:
This option specifies the type of the method. Each type has a set of specific configuration options
10.3.6. Windows Security Policy settings¶
SFTPPlus can be configured to authenticate Windows accounts, both local ones and domain accounts. In addition, the SFTPPlus Windows Service can be configured to run as a dedicated service account. If both conditions apply, the dedicated service account requires the following user rights assignments:
These permissions are required to allow SFTPPlus to:
Discover the path to the default user home folder
Create the default user home folder
Set the user home folder as owned by the user itself.
10.3.7. access_filesystem_as_service_user¶
- Default value:
No
- Optional:
Yes
- Values:
Yes
No
- From version:
5.12.0
- Description:
When set to Yes, authenticated OS local accounts use the SFTPPlus service account for filesystem access. After the users are authenticated, they are handled inside SFTPPlus as application accounts with access to OS resources configured at the OS level for the local user running SFTPPlus.
This simplifies filesystem configuration at the operating system level. System administrators only need to setup the file hierarchy with permissions for the SFTPPlus service account. Then, the SFTPPlus web-based manager is used to define the actual access for each authenticated user.
When this is set to No, the actual file access for each user is defined using SFTPPlus' Web Manager within the constraints of the low-level OS filesystem permissions.
10.3.8. pam_usage¶
- Default value:
fallback
- Optional:
Yes
- Values:
fallback
exclusive
service (Since 5.12.0)
Empty
- From version:
3.3.0
- Description:
Defines how to use PAM for for authenticating accounts using username and password credentials.
The default mode is fallback. In this mode it first tries to authenticate accounts based on the
/etc/passwd
file. If the password is set in the operating system as one of the following x, NP, *NP* or *, it will continue to authenticate with PAM.In exclusive mode, the PAM authentication operations are executed under the root account. Only PAM is used for username and password authentications.
In service mode, the PAM authentication operation are executed under the regular SFTPPlus service account. Only PAM is used for username and password authentications. The service mode might not be available on most Linux systems because PAM is usually configured to require root privileges. You can only use the service mode effectively if your Linux system is configured to allow PAM access for non-root accounts.
Leave it empty to completely disable PAM usage.
Note
On Windows, this option is always disabled because PAM is not available on Windows.
10.3.9. pam_service¶
- Default value:
login
- Optional:
Yes
- Values:
Name of a PAM service.
- From version:
3.3.0
- Description:
Name of the PAM service used for account authentication requests.
10.3.10. allowed_groups¶
- Default value:
Empty
- Optional:
No
- Values:
Empty
OS group name
${ALL_OS_GROUPS}
Comma-separated list of OS group names.
- From version:
3.35.0
- Description:
Defines an operating system group or a list of OS groups with users that are allowed by this authentication method.
When this is empty, no OS account is accepted. You need to define a list of group names for which to allow access. For example, if you need to allow all users from the local system, you can typically use the default users group available on both Windows and Linux.
If you absolutely need to allow access to all OS users from all OS groups, set this to ${ALL_OS_GROUPS}. This should be the only value, and you can't mix ${ALL_OS_GROUPS} with other group names.
Note
This configuration takes operating system group names and not SFTPPlus group names.
10.3.11. base_groups¶
- Default value:
Empty
- Optional:
yes
- Values:
Empty
Group UUID.
Comma separated list of group UUIDs.
- From version:
4.23.0
- Description:
Defines the SFTPPlus groups that are associated with any authenticated user.
Leave empty to not have any default group and only use the groups associated via OS configuration.
The first configured base group is also the primary group.
10.3.12. group_association¶
- Default value:
base-groups
- Optional:
No
- Values:
base-groups (since 4.23.0)
base-and-os-groups (since 4.23.0)
group-name
group-name-with-default
- From version:
4.11.0
- Description:
Defines how the SFTPPlus groups are associated with authenticated users for which no explicit association is defined inside the SFTPPlus configuration.
When set to base-groups it will associate an OS user to the list of groups defined by the base_groups option.
When set to base-and-os-groups it will associate an OS user to the list of groups defined by the base_groups option and any other group that has the same name as one of the groups defined by the allowed_groups option.
When set to group-name, it will associate the user with the SFTPPlus group having the same name as the operating system group of this user. If the user is a member of multiple OS groups, the first group defined in allowed_groups will be used. If no SFTPPlus group is found with the same name, the authentication fails.
When set to group-name-with-default, it will try to associate the user with an SFTPPlus group having the same name as the first OS group. It will use the default SFTPPlus group if no SFTPPlus group is found to have the same name as the OS group.
Note
When an OS account is explicitly defined inside SFTPPlus configuration the group_association is ignored and the account's groups configuration is used instead.
10.3.13. manager_allowed_groups¶
- Default value:
Empty
- Optional:
Yes
- Values:
Empty
OS group name
Comma-separated list of OS group names.
- From version:
3.37.0
- Description:
Defines an operating system group or a list of OS groups with users that are allowed by this method to be used for the Web Manager service.
When this is empty, any administrators are denied.
Note
This configuration takes operating system group names and not SFTPPlus group names.
10.3.14. base_roles¶
- Default value:
Empty
- Optional:
yes
- Values:
Empty
Role UUID.
Comma-separated list of role UUIDs.
- From version:
4.27.0
- Description:
Defines the SFTPPlus roles that are associated with any authenticated administrator.
Leave empty to not have any default role and only use the roles associated via OS configuration.
The first configured role is also the primary role.
10.3.15. role_association¶
- Default value:
base-roles
- Optional:
No
- Values:
base-roles
base-and-os-groups
- From version:
4.11.0
- Description:
Defines how the SFTPPlus roles are associated with authenticated administrators.
When set to base-roles it will associate the administrator to the list of roles defined by the base_roles option.
When set to base-and-os-groups it will associate an administrator to the list of roles defined by the base_roles option and any other role that has the same name as one of the groups defined by the manager_allowed_groups option.
10.3.16. Windows Domain Accounts¶
When SFTPPlus is installed on a machine belonging to a Domain Controller, it can be configured to allow accounts from a Domain Controller to access the files located on the server. These accounts are authenticated using the os authentication method.
For Domain Controller accounts, there is the option for the username to be provided in the user principal name (UPN) format:
USERNAME@EXAMPLE.COM
To specify the domain, you should use UPN format, not the legacy NebBIOS names.
Note
Active Directory accounts are only available when SFTPPlus is running on a Windows operating system. If you want to allow Active Directory accounts to access an SFTPPlus instance running on Unix-like systems, please contact our support team.