Installing Software for a Home Business Server
Post ReplyInstalling Software for a Home Business ServerPosted: Saturday, July 20, 2024 [20:25:54] - 1
Setting up a server for a home business requires careful planning to ensure it meets specific needs. Here’s a detailed walkthrough of the installation and configuration process for our FreeBSD-based server. ![]() FreeBSD Installation During the FreeBSD installation, we enabled the following features: 1. **Root-on-ZFS (Guided Setup)**: - This setup allows for robust filesystem management and data integrity. 2. **Services to Start at Boot**: - `sshd`: Secure Shell daemon for remote access. - `ntpd`: Network Time Protocol daemon for time synchronization. - `ntpd_sync_on_start`: Ensures the system clock is synchronized at startup. - `powerd`: Power management daemon to optimize energy usage. 3. **Security Hardening Options**: - `random_pid`: Randomizes process IDs to enhance security. - `clear_tmp`: Clears temporary directories at boot to maintain a clean state. Software Installation and Configuration To simplify the installation of prerequisites, we installed **portmaster**. Security Settings For enhanced security, the following login settings were configured: - **No Root SSH Login**: Disables direct root access via SSH. - **No Password SSH Login**: Requires SSH key authentication. - **Passwordless Sudo for Administrative User**: Allows administrative tasks without repeatedly entering the password. Power Management We configured **apcupsd**, the power daemon, to handle power outages. The default shutdown command `shutdown -h now` was changed to `shutdown -p now` to enable the server to restart automatically when power is restored. Processor Power States For optimal performance and energy efficiency of our AMD Ryzen 5 5600X 6-Core Processor, we added the following lines to `/etc/sysctl.conf`: dev.cpu.1.cx_lowest=C2 dev.cpu.2.cx_lowest=C2 dev.cpu.3.cx_lowest=C2 dev.cpu.4.cx_lowest=C2 dev.cpu.5.cx_lowest=C2 dev.cpu.6.cx_lowest=C2 dev.cpu.7.cx_lowest=C2 dev.cpu.8.cx_lowest=C2 dev.cpu.9.cx_lowest=C2 dev.cpu.10.cx_lowest=C2 dev.cpu.11.cx_lowest=C2 Additional Software - **dmidecode**: Installed for system state reporting. - **Samba 4**: For file sharing across different operating systems. - **Netatalk**: Temporarily installed for backward compatibility with older Macs. - **Apache 2.4**: Compiled with `suexec` for secure execution of CGI scripts. - **Memcached**: For memory caching to speed up dynamic web applications. - **Digitemp**: Installed for our weather station. The temperature sensors were plug-and-play, working seamlessly by connecting the USB cable to the server and running the program. The configuration and software installations were straightforward, ensuring our server meets the specific requirements of our home business. This setup provides a secure, efficient, and reliable environment to support our operations. Server hardware: www.codemacs.com/freebsd/.. |