+
gh
+
+
clickhouse
svelte
+
docker
jax
htmx
+
+
+
+
go
+
puppet
phpstorm
+
rb
===
=
+
wasm
pascal
+
node
sqlite
+
lisp
+
zig
+
+
sinatra
+
+
+
preact
+
+
bundler
+
riot
azure
sklearn
mxnet
+
scipy
+
==
eslint
+
windows
gin
+
+
+
+
+
svelte
+
+
haskell
echo
+
+
+
+
+
matplotlib
html
+
+
koa
symfony
phoenix
+
+
wasm
+
+
+
{}
+
gulp
keras
Back to Blog
Installing and Setting Up Webmin on Alpine Linux
Linux Alpine Linux

Installing and Setting Up Webmin on Alpine Linux

Published Nov 14, 2023

Webmin is a popular web-based system administration tool for Linux and other Unix-like operating systems.

4 min read
0 views
Table of Contents

Introduction

Webmin is a popular web-based system administration tool for Linux and other Unix-like operating systems. It allows users to manage servers through a simple web browser interface, eliminating the need for manual configuration file editing and command-line operations.

Webmin is built using Perl and runs as its own process and web server on port 10000 by default. With Webmin, you can manage user accounts, configure DNS settings, set up web servers, manage databases, and perform many other administrative tasks through a user-friendly GUI.

Some key features of Webmin include:

  • A web-based interface accessible from any browser
  • Easy management of system tasks without needing to use the command line
  • Support for numerous third-party modules
  • Built-in file manager
  • System monitoring capabilities
  • User and group management
  • Service configuration (Apache, MySQL, etc.)
  • Security features including SSL support and IP access control
  • Low resource usage

In this guide, we’ll walk through the process of installing and setting up Webmin on Alpine Linux, a security-oriented, lightweight Linux distribution.

Prerequisites

Before installing Webmin, ensure you have:

  • Alpine Linux installed and running
  • Root or sudo access to the system
  • An active internet connection
  • Basic familiarity with the command line

Installation Steps

Step 1: Add the Webmin Repository

First, we need to add the Webmin repository to Alpine Linux’s package sources. This will allow us to install Webmin using the APK package manager.

echo "http://download.webmin.com/download/repository sarge contrib" >> /etc/apk/repositories

This command appends the Webmin repository URL to the /etc/apk/repositories file.

Step 2: Update the Package List

After adding the repository, update the package list to include packages from the newly added repository:

apk update

This command refreshes the package database and fetches information about available packages from all configured repositories.

Step 3: Install Webmin

Now we can install Webmin using the APK package manager:

apk add webmin

This command will download and install Webmin along with all its dependencies. The installation process may take a few minutes depending on your internet connection speed.

Step 4: Start the Webmin Service

Once the installation is complete, start the Webmin service:

rc-service webmin start

This command starts the Webmin daemon, which will begin listening on port 10000 by default.

Step 5: Configure Firewall (if applicable)

If you have a firewall enabled on your Alpine Linux system, you’ll need to open port 10000 to allow access to the Webmin interface:

iptables -A INPUT -p tcp --dport 10000 -j ACCEPT

If you’re using a different firewall solution, adjust the command accordingly.

Step 6: Access the Webmin Interface

You can now access Webmin through your web browser. Navigate to:

http://your_server_ip:10000/

Replace your_server_ip with the actual IP address of your Alpine Linux server.

You’ll likely see a security warning about the SSL certificate. This is normal for a self-signed certificate. Proceed to the site (the exact method varies by browser).

Step 7: Login to Webmin

The default login credentials for Webmin are:

  • Username: admin
  • Password: password

Important: Change these default credentials immediately after your first login for security reasons.

Step 8: Configure Webmin to Start Automatically

To ensure Webmin starts automatically when your system boots, add it to the default runlevel:

rc-update add webmin

This command configures Webmin to start automatically at boot time.

Step 9: Verify the Service Status

You can check if Webmin is running properly by checking the service status:

rc-status

Look for webmin in the list of running services.

Post-Installation Configuration

Changing the Default Password

After logging in for the first time:

  1. Go to WebminWebmin Users
  2. Click on the admin user
  3. Change the password and save

Configuring SSL

For better security, you should configure Webmin to use SSL:

  1. Go to WebminWebmin Configuration
  2. Click on SSL Encryption
  3. Enable SSL and configure as needed

Setting Up Two-Factor Authentication

For additional security:

  1. Go to WebminWebmin Configuration
  2. Click on Two-Factor Authentication
  3. Follow the setup wizard

Troubleshooting Common Issues

Webmin Won’t Start

If Webmin fails to start, check the error log:

tail -f /var/webmin/miniserv.error

Can’t Access Webmin Interface

  1. Verify Webmin is running: rc-service webmin status
  2. Check if port 10000 is open: netstat -tlnp | grep 10000
  3. Ensure firewall rules allow access to port 10000

Forgot Password

If you forget the admin password:

/usr/libexec/webmin/changepass.pl /etc/webmin admin newpassword

Replace newpassword with your desired password.

Security Best Practices

  1. Change default credentials immediately
  2. Enable SSL/TLS encryption
  3. Restrict access by IP address if possible
  4. Keep Webmin updated regularly
  5. Use strong passwords
  6. Enable two-factor authentication
  7. Regularly review access logs

Updating Webmin

To update Webmin to the latest version:

apk upgrade webmin

Uninstalling Webmin

If you need to remove Webmin:

rc-service webmin stop
rc-update del webmin
apk del webmin

Conclusion

Webmin provides a powerful and user-friendly way to manage your Alpine Linux server through a web interface. With its extensive module system and intuitive interface, it simplifies many complex administrative tasks. Remember to follow security best practices and keep Webmin updated to ensure your server remains secure.

By following this guide, you should now have a fully functional Webmin installation on your Alpine Linux system. Explore the various modules available to manage different aspects of your server, from user accounts to web services and beyond.