Ad

ubuntu-server-setup: Automate Ubuntu Server Provisioning

This script automates the setup of Ubuntu servers by adding users, configuring SSH, and enabling basic security measures for streamlined server deployment.
Screenshot of jasonheecs/ubuntu-server-setup homepage

This project provides a bash script to automate the initialization of Ubuntu servers. It streamlines the server setup process by automating common configuration tasks, including user management, SSH key configuration, and basic security hardening. The script simplifies the provisioning of standard Ubuntu servers, reducing manual effort and potential errors.

The script offers a comprehensive setup process for Ubuntu servers, incorporating essential security measures. It’s designed for simple execution and provides clear prompts for user input. It's also readily adaptable to different Ubuntu versions through testing.

  • User Management: Adds a new user account with sudo privileges to the server.
  • SSH Key Configuration: Adds a public SSH key to the new user account for secure access.
  • Security Hardening: Disables password authentication and denies root login.
  • Firewall Configuration: Configures Uncomplicated Firewall (ufw) for basic network security.
  • Swap File Creation: Creates a swap file based on the server's RAM capacity.
  • Timezone Setup: Sets the server's timezone, defaulting to 'Asia/Singapore'.
  • NTP Configuration: Configures the Network Time Protocol (NTP) for accurate timekeeping.

The project has been actively maintained and tested across multiple Ubuntu versions, demonstrating its stability. Recent commits indicate ongoing development and address reported issues. The provided test suite using Vagrant VMs further ensures the script's reliability. Documentation is sufficient for basic usage.

This project is beneficial for system administrators and DevOps engineers who need to quickly and consistently provision Ubuntu servers. It simplifies the initial setup process, ensuring servers are configured with basic security and functionality out-of-the-box. It provides a valuable alternative to manual configuration, saving time and improving consistency.

Languages:
Summarize:
Share:
Stars
618
Forks
251
Issues
2
Created
9 years ago
Commit
2 years ago
License
MIT
Archived
No
Updated 8 days ago

Similar Repositories