# SafeLine, the best free WAF for webmaster SafeLine is a web security gateway to protect your websites from attacks and exploits. It defenses for all of web attacks, such as sql injection, code injection, os command injection, CRLF injection, ldap injection, xpath injection, rce, xss, xxe, ssrf, path traversal, backdoor, bruteforce, http-flood, bot abused and so on.

🏠Home   |   📖Documentation   |   🔍Live Demo   |   中文版

     

# Screenshots # How It Works SafeLine is developed based on nginx, it serves as a reverse proxy middleware to detect and cleans web attacks, its core capabilities include: - Defenses for web attacks - Proactive bot abused defense - HTML & JS code encryption - IP-based rate limiting - Web Access Control List # Installation **中国大陆用户安装国际版可能会导致无法连接云服务,请查看** [中文版安装文档](https://docs.waf-ce.chaitin.cn/zh/%E4%B8%8A%E6%89%8B%E6%8C%87%E5%8D%97/%E5%AE%89%E8%A3%85%E9%9B%B7%E6%B1%A0) ## Automatic Deploy > 👍Recommended Use the following command to start the automated installation of SafeLine. (This process requires root privileges) ```bash bash -c "$(curl -fsSLk https://waf.chaitin.com/release/latest/setup.sh)" ``` After the command is executed, it means the installation is successfully. Please go to "Use Web UI" directly. ## Mannually Deploy to see [Documentation](https://docs.waf.chaitin.com/en/tutorials/install) # Usage ## Login Open the web console page `https://:9443/` in the browser, then you will see below. Execute the following command to get administrator account ```bash docker exec safeline-mgt /app/mgt-cli reset-admin --once ``` After the command is successfully executed, you will see the following content > Please must remember this content ```text [SafeLine] Initial username:admin [SafeLine] Initial password:********** [SafeLine] Done ``` Enter the password in the previous step and you will successfully logged into SafeLine. ## Protecting a website Log into the SafeLine Web Admin Console, go to the "Site" -> "Website" page and click the "Add Site" button in the upper right corner. In the next dialog box, enter the information to the original website. - **Domain**: domain name of your original website, or hostname, or ip address, for example: `www.chaitin.com` - **Port**: port that SafeLine will listen, such as 80 or 443. (for `https` websites, please check the `SSL` option) - **Upstream**: real address of your original website, through which SafeLine will forward traffic to it After completing the above settings, please resolve the domain name you just entered to the IP address of the server where SafeLine is located. Then you can access the website protected by the SafeLine through the domain name like this. ## Try to attack your website Now, your website is protected by SafeLine, let’s try tp attack it and see what happens. If https://chaitin.com is a website protected by SafeLine, here are some test cases for common attacks: - SQL Injection: `https://chaitin.com/?id=1+and+1=2+union+select+1` - XSS: `https://chaitin.com/?id=` - Path Traversal: `https://chaitin.com/?id=../../../../etc/passwd` - Code Injection: `https://chaitin.com/?id=phpinfo();system('id')` - XXE: `https://chaitin.com/?id=` Replace `chaitin.com` in the above cases with your website domain name and try to access it. Check the web console of SafeLine to see the attack list To view the specific details of the attack, click "detail" ## Star History Star History Chart ## Related Repo

Automaton Generator | Lua Plugin | T1K Protocol | WAF Test Tool