A bash script to automatically set up a secure web server with SSL certificates on Debian.
- Automated NGINX installation and configuration
- SSL certificate automation with acme.sh
- Automatic security hardening
- Scheduled certificate renewal
- System optimization for performance
- Debian 10+ 64-bit
- Sudo privileges
- Inbound traffic on TCP ports 80 and 443 from 0.0.0.0/0 allowed
- Domain name pointing to your server's IP address
Log in as a non-root user and run:
curl -L https://github.com/xixu-me/AWSDS/raw/main/setup.sh | bash -s <username> <domain> <id>
Replace the following:
<username>
: Your login username<domain>
: Your domain name<id>
: A unique identifier
If you encounter the following error:
bash: curl: command not found
Please install curl
and bash
first:
sudo apt update && sudo apt install -y curl bash
- NGINX web server
- SSL certificate management tools
- Cron jobs for automated maintenance
- Basic security configurations
- TLS 1.2/1.3 support
- Automatic certificate renewal
- HTTP to HTTPS redirection
- HSTS implementation
- Private IP filtering
- Security headers
Certificates will automatically renew monthly. No manual intervention required.
- This repository is strictly for educational and research purposes.
- Use at your own risk. The repository assumes no responsibility for potential issues.
- No guarantee of accuracy, completeness, or reliability.
- Not liable for data loss or damages.
- Ensure compliance with relevant licenses and legal regulations.
- No endorsement of third-party hardware/software.
- User modifications are their own responsibility.
- Terms may change at any time. By using this repository, you agree to these terms.
Copyright © Xi Xu. All rights reserved.
Licensed under the GPL-3.0 license.