2.0 KiB
2.0 KiB
RHELSecureSetup
This Bash script is designed for RHEL-based Linux distributions. It automates the process of updating the system, configuring security settings, and optionally installing Docker CE.
Features
- System Updates: Updates the package manager and upgrades installed packages.
- Timezone Configuration: Sets the system timezone.
- Hostname Change: Changes the hostname of the machine.
- Hosts File Update: Updates the
/etc/hostsfile with the machine's IP address and hostname. - SSH Security Enhancements:
- Disables root login.
- Disables password authentication.
- Ensures IPv4 address family is explicitly set.
- Optional Docker Installation: Installs Docker CE using the official installation script.
Prerequisites
- A RHEL-based Linux distribution (e.g., CentOS, Fedora).
- Root access or sudo privileges.
dnforyumpackage manager.curlinstalled (if not present, install it using your package manager).
Usage
-
Clone the repository:
git clone https://git.nickhepler.cloud/nick/RHELSecureSetup.git cd RHELSecureSetup -
Make the script executable:
chmod +x setup.sh -
Run the script with root privileges:
sudo ./setup.sh -
Follow the prompts:
- Enter the desired hostname and timezone.
- Provide a username and password for a new limited user account.
- Optionally, choose whether to install Docker CE at the end of the script.
Customization
- Time Zone: Modify the
timezonevariable in the script to set your desired timezone. - Hostname: The script prompts for a hostname during execution, but you can also set a default value in the script.
License
This project is licensed under the GPL-3.0 License. See the LICENSE file for more details.
Acknowledgments
- Inspired by documentation from Akamai (formerly Linode) for setting up and securing compute instances.