Skip to content

Commit ea89fee

Browse files
committed
add README-gpl-csf.md to explain GPLv3 release differences
1 parent 2923c43 commit ea89fee

File tree

1 file changed

+232
-0
lines changed

1 file changed

+232
-0
lines changed

β€ŽREADME-gpl-csf.mdβ€Ž

Lines changed: 232 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,232 @@
1+
# CSF Firewall v15.00 - GPLv3 Release
2+
3+
## πŸ”„ Major Changes Overview
4+
5+
### License Transition
6+
7+
**CSF is now Free and Open Source Software under GPLv3**
8+
9+
- **Previous**: Proprietary "Way to the Web Product License" (restrictive commercial)
10+
- **Current**: GNU General Public License v3 (copyleft open-source)
11+
- **Version**: 14.24 β†’ **15.00**
12+
- **Copyright**: (C) 2006-2025 Jonathan Michaelson
13+
- **Repository**: <https://github.com/waytotheweb/scripts>
14+
15+
### Change Statistics
16+
17+
- **Files Modified**: 121
18+
- **Lines Added**: ~2,448
19+
- **Lines Removed**: ~766
20+
- **Files Deleted**: 3
21+
- **Release Date**: August 29, 2025
22+
23+
---
24+
25+
## ⚠️ Breaking Changes - Action Required
26+
27+
### 1. Auto-Update System Disabled
28+
29+
The built-in update mechanism that connected to ConfigServer's servers has been disabled:
30+
31+
**What's affected:**
32+
33+
- `csget.pl` - Download server array emptied
34+
- `downloadservers` - All entries commented out
35+
- `ConfigServer/Config.pm` - Fallback server removed
36+
37+
**Migration Steps:**
38+
39+
```bash
40+
# Option 1: Configure custom download mirrors
41+
echo "your.mirror.server" > /etc/csf/downloadservers
42+
43+
# Option 2: Use manual updates from GitHub
44+
cd /tmp
45+
wget https://github.com/waytotheweb/scripts/archive/refs/heads/main.zip
46+
# Extract and run install.sh
47+
48+
# Option 3: Use your distribution's package manager (when available)
49+
```
50+
51+
### 2. Version Check Functionality
52+
53+
- Automatic version checking against central servers no longer functions
54+
- Manual version checking against GitHub releases recommended
55+
56+
---
57+
58+
## πŸ“ Detailed Changes
59+
60+
### Removed Components
61+
62+
| File | Purpose | Impact |
63+
|------|---------|--------|
64+
| `.gitattributes` | Git line ending configuration | None - cosmetic |
65+
| `ConfigServer/Security.pm` | Stub GPG/SHA256 verification (never implemented) | None - was non-functional |
66+
| `regex.txt` | 143 lines of log parsing examples | None - test data only |
67+
68+
### Modified Components
69+
70+
#### Core Infrastructure
71+
72+
- **Download System**: All references to `download.configserver.com` and `download2.configserver.com` removed or commented
73+
- **Version Checking**: `csget.pl` modified to prevent automatic version checks
74+
- **Attribution**: UI footers updated from "Way to the Web Limited" to "Jonathan Michaelson"
75+
76+
#### License Headers (All Files)
77+
78+
Every source file updated with GPLv3 boilerplate:
79+
80+
- Perl modules (`.pm`)
81+
- Perl scripts (`.pl`)
82+
- Shell scripts (`.sh`)
83+
- CGI scripts (`.cgi`)
84+
- PHP files (`.php`)
85+
- Configuration files
86+
- JavaScript files
87+
88+
### Unchanged Functionality
89+
90+
βœ… All core security features remain intact:
91+
92+
- Firewall rules management
93+
- Login failure detection (LFD)
94+
- Port scan detection
95+
- DDoS protection
96+
- UI functionality
97+
- Control panel integrations (cPanel, DirectAdmin, etc.)
98+
- Email alerts
99+
- Country blocking
100+
- Rate limiting
101+
102+
---
103+
104+
## πŸš€ Migration Guide
105+
106+
### For Existing Users (v14.x β†’ v15.00)
107+
108+
1. **Backup Current Configuration**
109+
110+
```bash
111+
cp -R /etc/csf /etc/csf.backup
112+
cp /usr/local/csf/version.txt /root/csf_version_backup.txt
113+
```
114+
115+
2. **Update CSF**
116+
117+
```bash
118+
# Download from GitHub
119+
cd /tmp
120+
wget https://github.com/waytotheweb/scripts/releases/download/v15.00/csf.tgz
121+
tar -xzf csf.tgz
122+
cd csf
123+
sh install.sh
124+
```
125+
126+
3. **Verify Installation**
127+
128+
```bash
129+
csf -v # Should show v15.00
130+
csf -r # Restart CSF
131+
```
132+
133+
4. **Configure Update Source** (if desired)
134+
- Set up your own mirror in `/etc/csf/downloadservers`
135+
- OR rely on manual updates from GitHub
136+
137+
### For New Users
138+
139+
Simply clone and install:
140+
141+
```bash
142+
git clone https://github.com/waytotheweb/scripts.git
143+
cd scripts/code/csf
144+
sh install.sh
145+
```
146+
147+
---
148+
149+
## πŸ“‹ Post-Upgrade Checklist
150+
151+
- [ ] Verify CSF version shows 15.00: `csf -v`
152+
- [ ] Check firewall rules are intact: `csf -l`
153+
- [ ] Confirm LFD is running: `systemctl status lfd`
154+
- [ ] Test temporary IP blocking: `csf -d 1.2.3.4 "test"`
155+
- [ ] Remove test block: `csf -dr 1.2.3.4`
156+
- [ ] Review UI access (if applicable): Access CSF through your control panel
157+
- [ ] Set up alternative update method (GitHub watch, custom mirror, etc.)
158+
- [ ] Review `/var/log/lfd.log` for any errors
159+
160+
---
161+
162+
## πŸ“„ License Implications
163+
164+
### What GPLv3 Means for You
165+
166+
**You CAN:**
167+
168+
- βœ… Use CSF commercially
169+
- βœ… Modify the source code
170+
- βœ… Distribute modified versions
171+
- βœ… Use CSF in private networks
172+
173+
**You MUST:**
174+
175+
- πŸ“‹ Include copyright notice
176+
- πŸ“‹ Include license text
177+
- πŸ“‹ State changes made
178+
- πŸ“‹ Disclose source code (if distributing)
179+
- πŸ“‹ Use same GPLv3 license (for derivatives)
180+
181+
**You CANNOT:**
182+
183+
- ❌ Sublicense under different terms
184+
- ❌ Hold liable for damages
185+
- ❌ Use contributors' names for endorsement
186+
187+
---
188+
189+
## πŸ”§ Technical Details
190+
191+
### File Header Example
192+
193+
```perl
194+
###############################################################################
195+
# Copyright (C) 2006-2025 Jonathan Michaelson
196+
#
197+
# https://github.com/waytotheweb/scripts
198+
#
199+
# This program is free software; you can redistribute it and/or modify it under
200+
# the terms of the GNU General Public License as published by the Free Software
201+
# Foundation; either version 3 of the License, or (at your option) any later
202+
# version.
203+
###############################################################################
204+
```
205+
206+
### Affected File Types
207+
208+
- **115+ source files** updated with GPLv3 headers
209+
- **Configuration files** maintained with new copyright
210+
- **Documentation** updated with new attribution
211+
- **UI components** modified to reflect new ownership
212+
213+
---
214+
215+
## πŸ“ž Support & Community
216+
217+
- **GitHub Issues**: Report bugs and request features
218+
- **Documentation**: Available in `/usr/local/csf/readme.txt`
219+
220+
---
221+
222+
## ⚑ Quick Reference
223+
224+
| Component | Status | Notes |
225+
|-----------|---------|-------|
226+
| Core Firewall | βœ… Unchanged | Full functionality retained |
227+
| LFD | βœ… Unchanged | All detection methods working |
228+
| Auto-Updates | ❌ Disabled | Manual updates required |
229+
| Version Check | ❌ Disabled | Check GitHub for releases |
230+
| UI | βœ… Working | Attribution text updated |
231+
| Panel Integration | βœ… Working | All panels supported |
232+
| Configuration | βœ… Compatible | No changes needed |

0 commit comments

Comments
Β (0)