About
Usermin is a web-based interface for webmail, password changing, mail filters, fetchmail and much more. It is designed for use by regular non-root users on a Unix system, and limits them to tasks that they would be able to perform if logged in via SSH or at the console.
Most users of Usermin are sysadmins looking for a simple webmail interface to offer their customers. Unlike most other webmail solutions, it can be used to change passwords, read email with no additional servers installed (like IMAP or POP3), and setup users’ configurations for forwarding, spam filtering and autoreponders.
Usermin also provides web interfaces for viewing and managing data in MySQL and PostgreSQL databases, editing Apache .htaccess
configuration files, running commands on the server, and full featured File Manager. The administrator has full control over which of these modules are available to users.
Integration
The easiest way to configure Usermin is via the Webmin ⇾ Usermin Configuration module in Webmin.
Repository
Setup
The simplest and best way to get Usermin is to use automatic usermin-setup-repos.sh
script to configure repositories on your RHEL or Debian derivative systems. It can be done in two easy steps:
curl -o usermin-setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh
sh usermin-setup-repos.sh
This script will automatically setup our repository and install our GPG keys on your system, and provide usermin
package for installation and easy upgrades in the future. The supported and tested systems are Red Hat Enterprise Linux, Alma, Rocky, Oracle, CentOS Stream, Fedora or Debian, Ubuntu, Kali.
Install
If Usermin repository was setup using our usermin-setup-repos.sh
as described earlier then Usermin can be installed as easy as:
RHEL and derivatives
dnf install usermin
Debian and derivatives
apt-get install usermin --install-recommends
Access
After successful Usermin installation, you can access its interface by entering https://<Your-Server-IP>:20000
in your browser. Check that your firewall configuration allows access through port 20000.
Manual
The latest Usermin distribution is available in various package formats for download:
rpm
— Red Hat Enterprise Linux, Alma, Rocky, Oracle, CentOS Stream, Fedora, openSUSE
deb
— Debian derivatives (Ubuntu, Kali, Parrot, Pop!, Lite, Devuan)
tar
— FreeBSD or any other Linux distribution
Checksum Verification
To verify that you have downloaded Usermin fully and correctly, you can use the command sha256sum
on the downloaded file, and compare it against those listed below:
File | SHA256 Checksum |
---|---|
usermin_2.102_all.deb | 327fa7e1b42405beb2037349268f65926157163809b33ce580d50ddb20e7ae4b |
usermin-2.102-1.noarch.rpm | 225c32f80221e9134aae0fb37a977131fd4e89ed5df0e5b71e90c6dfd8840cac |
usermin-2.102-1.src.rpm | 7a3d82231b76d401a470205aa6fc66a021762ec784f1e2cdcd79c2e52c1bcc71 |
usermin-2.102.tar.gz | e1b3188cb9d2bab39b0e4517767e6e49946fd5d81e35c8e4f8ebbd4b1da41842 |
Configure
If Usermin package was downloaded manually it can be installed:
RHEL and derivatives
dnf install ./usermin-current.rpm
Debian and derivatives
apt-get install --install-recommends ./usermin-current.deb
FreeBSD and any other Linux installation from source
# Change directory
cd /tmp
# Uncompress
gunzip usermin-current.tar.gz
tar xf usermin-current.tar.gz
cd usermin-current
# Install
./setup.sh /usr/local/usermin
More details for installations from source..
Because it allows logins by any Unix user on your system, Usermin needs some way of checking user passwords. By default, this will be done by just reading the /etc/shadow
file directly, but if your system uses NIS this will not work. Instead, you will need to install the Authen::PAM
Perl module and configure Usermin a PAM service.
On Linux, this typically involves creating the file /etc/pam.d/usermin
containing:
#%PAM-1.0
auth required pam_unix.so shadow nullok
account required pam_unix.so
password required pam_unix.so shadow nullok use_authtok
session required pam_unix.so
Under macOS, the PAM service file has to be slightly different. If you are running macOS, /etc/pam.d/usermin
should instead contain:
# login: auth account password session auth sufficient pam_opendirectory.so try_first_pass auth required pam_deny.so account required pam_permit.so password required pam_deny.so session required pam_permit.so
On FreeBSD, you probably will not need to edit the PAM config file /etc/pam.conf
as it is setup to do Unix authentication for unknown services by default.
If you installed it by specifying an installation directory parameter to setup.sh
as the instructions above show, i.e. /usr/local/usermin
, the original usermin-current
directory can now be safely deleted.
The source package can be installed on any of the supported OS, such as FreeBSD, macOS, and all other flavors of Linux. However, if your system supports one of the other package formats like rpm
or deb
packages, it is recommended to install it from that type of package.
Standard Modules
The standard modules that you may have deleted from Usermin on your system can be re-installed by downloading using this link.
Supported Languages
Translation of Usermin modules into different languages is done by volunteers. The partial module translations made by humans are covered by automated language manager script.
All translated modules have a main language file without extension, i.e. de
and automatically translated variant, i.e. de.auto
. Volunteers willing to contribute to the translations, should take automatically translated strings from .auto
language file (located in lang/
or in ulang/
directory of each module), review, edit and move them to the main language file.
Each .auto
file is correctly formatted, and only the language may need adjustments. It's important to maintain the exact formatting of the language strings, including the presence or absence of dots at the beginning or end of strings, as well as other formatting details.
All language files must use utf-8
encoding. The following languages are supported by the current Webmin version:
Code | Language | Human Translated | Machine Translated |
---|---|---|---|
en | English | 100% | 100% |
de | Deutsch | 98% | 100% |
ca | català | 97% | 100% |
no | norsk | 91% | 100% |
nl | Nederlands | 89% | 100% |
fr | français | 65% | 100% |
pl | polski | 65% | 100% |
hu | magyar | 53% | 100% |
cs | čeština | 62% | 100% |
es | español | 58% | 100% |
ja | 日本語 | 53% | 100% |
ru | русский | 51% | 100% |
pt_BR | português (Brasil) | 44% | 100% |
ko | 한국어 | 42% | 100% |
zh | 中文 (简体) | 40% | 100% |
uk | українська | 39% | 100% |
it | italiano | 38% | 100% |
zh_TW | 中文 (繁體) | 34% | 100% |
tr | Türkçe | 34% | 100% |
sv | svenska | 31% | 100% |
bg | български | 30% | 100% |
fa | فارسی | 26% | 100% |
ms | Melayu | 16% | 100% |
hr | hrvatski | 13% | 100% |
el | Ελληνικά | 11% | 100% |
sk | slovenčina | 11% | 100% |
pt | português | 10% | 100% |
da | dansk | 6% | 100% |
ar | العربية | 3% | 100% |
eu | euskara | 3% | 100% |
fi | suomi | 1% | 100% |
af | Afrikaans | 0% | 100% |
be | беларуская | 0% | 100% |
he | עברית | 0% | 100% |
lt | lietuvių | 0% | 100% |
lv | latviešu | 0% | 100% |
mt | Malti | 0% | 100% |
ro | română | 0% | 100% |
sl | slovenščina | 0% | 100% |
th | ไทย | 0% | 100% |
ur | اردو | 0% | 100% |
vi | Tiếng Việt | 0% | 100% |
Development Builds
There are development pre-release and nightly builds available for testing purposes only. These builds may be unstable or lack certain features. Use them at your own risk!
Pre-release Builds
Pre-release builds can be found on devel.webmin.com page.
Nightly Builds
Nightly builds can be found on builds.webmin.dev page.