I am wanting to set up a home server using an old computer, after doing some costs it would work out considerably cheaper than using a hosting service, and although less reliable I feel it would be some good and valuable experience.

I have installed Ubuntu server edition onto my old computer, and have selected to install LAMP and a GUI desktop along with it however I am finding it rather difficult to use due to the very much command line interfaces.

Would it be a security risk to use a pre-made piece of software like XAMPP to open the ports on my computer and run everything from their web application.

Dani AI

Generated

Brief context: is running Ubuntu Server on an old PC with the LAMP option and a desktop installed, and finds the command line uncomfortable; asked whether the host sits behind a router. Short answer: XAMPP is great for local development and quick testing, but it’s not the best choice for an internet-facing home server unless every insecure default has been hardened and kept patched.

Why XAMPP raises concern: it’s packaged for convenience, not for production. Typical development defaults include permissive listen rules, weak or no database passwords, and standalone service paths that do not integrate with the system package manager. Those defaults make automatic security updates, service management, and least-privilege hardening more difficult on a long-running, internet-exposed machine.

A safer approach for a home server:

  • Prefer the distro LAMP packages (apache2, mariadb/mysql, php) so services use systemd and receive apt security updates.
  • Keep the host behind NAT when possible; a router reduces direct exposure but requires careful port forwarding to allow inbound HTTP(S).
  • Apply basic hardening: run mysql_secure_installation, bind DB to localhost unless remote access is required, use SSH key authentication and disable password root login, enable a firewall (ufw) and only open needed ports, install fail2ban for brute-force protection, and use Let’s Encrypt for TLS.

Example commands (illustrative):

apt update && apt install apache2 mariadb-server php libapache2-mod-php
mysql_secure_installation
ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 22/tcp
ufw enable

Operational notes: keep services minimal, run webapps with proper file permissions and dedicated application users, schedule regular backups, and prefer containers or a VM for isolation if experimentation is required. XAMPP can remain a local dev tool; for anything exposed to the internet, rely on distro packages + the hardening checklist above.

Are you behind a router by any chance?

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.