IRC server with UnrealIRCd, Atheme Services, and SSL certificates.
Component | Technology | Purpose |
---|---|---|
IRC Server | UnrealIRCd 6.1.10 | IRC daemon |
Services | Atheme 7.2.12 | NickServ, ChanServ, OperServ |
WebPanel | UnrealIRCd WebPanel | Admin interface |
SSL/TLS | Let's Encrypt + Cloudflare | Certificate management |
Container | Docker + Compose | Deployment |
# 1. Copy environment template
cp env.example .env
# 2. Setup Cloudflare credentials
cp cloudflare-credentials.ini.template cloudflare-credentials.ini
chmod 600 cloudflare-credentials.ini
vim cloudflare-credentials.ini # Add your Cloudflare API token
# 3. Edit .env with your settings
vim .env
# 4. Start services
make up
make up # Start all services
make down # Stop all services
make logs # View logs
make status # Check service status
make build # Build containers
make rebuild # Rebuild containers
make restart # Restart services
make reset # Complete reset
make help # Show all commands
Copy the template and edit:
cp env.example .env
vim .env
# Server Settings
IRC_DOMAIN=irc.atl.chat
IRC_PORT=6667
IRC_TLS_PORT=6697
IRC_RPC_PORT=8600
# Network Identity
IRC_ROOT_DOMAIN=atl.chat
IRC_NETWORK_NAME=atl.chat
IRC_CLOAK_PREFIX=atl
# Admin Contact
IRC_ADMIN_NAME="Your Admin Name"
[email protected]
# SSL/TLS
[email protected]
# Services
ATHEME_SERVER_NAME=services.atl.chat
ATHEME_UPLINK_HOST=irc.atl.chat
ATHEME_UPLINK_PORT=6900
ATHEME_SEND_PASSWORD=your-services-password
ATHEME_RECEIVE_PASSWORD=your-services-password
# Generate IRC operator password hash
make generate-password
# Copy the generated hash to .env
IRC_OPER_PASSWORD='$argon2id$...'
cp cloudflare-credentials.ini.template cloudflare-credentials.ini
chmod 600 cloudflare-credentials.ini
vim cloudflare-credentials.ini # Add your API token
make ssl-setup # Setup SSL certificates
make ssl-status # Check certificate status
make ssl-renew # Force certificate renewal
make ssl-logs # View SSL logs
make ssl-stop # Stop SSL monitoring
make ssl-clean # Remove certificates
Port | Protocol | Service | Purpose |
---|---|---|---|
6667 | IRC | UnrealIRCd | Standard IRC |
6697 | IRC+TLS | UnrealIRCd | Encrypted IRC |
6900 | IRC+TLS | UnrealIRCd | Server links |
8080 | HTTP | WebPanel | Admin interface |
# Standard connection
irc irc.atl.chat:6667
# SSL connection
irc irc.atl.chat:6697
- URL: http://your-server:8080
- Purpose: IRC server management
- NickServ:
/msg NickServ REGISTER password email
- ChanServ:
/msg ChanServ REGISTER #channel
- OperServ: Administrative services
make logs
make status
make ssl-status
make ssl-logs
./scripts/ssl-manager.sh --help
make restart
ls -la unrealircd/conf/unrealircd.conf
ls -la services/atheme/atheme.conf