Quick Start
Get SirrMesh up and running in minutes with our one-click installation script.
System Requirements
Hardware Requirements
yaml
System Requirements:
Operating System: Ubuntu 20.04+ / macOS 12+ / CentOS 8+
CPU: 2 cores or more
Memory: 2GB minimum (4GB recommended)
Storage: 20GB SSD
Network: 100Mbps
Software Dependencies:
Go: 1.24+ (only required for compilation)
Git: Latest version
Make: Latest versionRequired Ports
Ensure the following ports are available:
| Port | Service | Required |
|---|---|---|
| 25 | SMTP | Optional |
| 587 | Submission | Yes |
| 465 | SMTPS | Optional |
| 993 | IMAPS | Yes |
| 143 | IMAP | Optional |
| 8825 | SMTP Alt | Yes |
One-Click Installation
Install and configure SirrMesh with a single command:
bash
# Download and run the installation script
curl -sSL https://raw.githubusercontent.com/sirrmesh/SirrMesh/main/start.sh | bashThe automatic installer will perform the following:
- Download and Install - Downloads the
sirrmeshdbinary for your platform - Domain Configuration - Sets up your mail domain
- DNS Provider Setup - Choose from 15 supported providers
- TLS Certificates - Automatic ACME DNS-01 challenge setup
- Service Management - Creates and starts the systemd service
Supported DNS Providers
The installation script supports automatic TLS certificate configuration with the following DNS providers:
| Provider | Type | Authentication |
|---|---|---|
| Cloudflare | Global CDN | API Token |
| Amazon Route53 | AWS DNS | Access Key + Secret |
| DigitalOcean | Cloud DNS | API Token |
| Google Cloud DNS | GCP DNS | Service Account JSON |
| Vultr | Cloud DNS | API Key |
| Hetzner | European DNS | API Token |
| Gandi | Domain Registrar | API Token |
| Namecheap | Domain Registrar | API Credentials |
| + 7 more | Various | Various |
Manual Installation
If you prefer manual installation:
1. Build from Source
bash
# Clone the repository
git clone https://github.com/sirrmesh/SirrMesh.git
cd SirrMesh
# Build the binary
make build
# Verify installation
./build/sirrmeshd --help2. Start the Server
bash
# Run the mail server
./build/sirrmeshd run
# Or use the start.sh script for automatic configuration
./start.shConfigure Your Mail Client
Use any standard mail client (Thunderbird, Outlook, Apple Mail, etc.) with the following configuration:
Incoming Mail (IMAP):
- Server: your-domain.com
- Port: 993
- Security: SSL/TLS
- Username: user@example.com
- Password: your-password
Outgoing Mail (SMTP):
- Server: your-domain.com
- Port: 587
- Security: STARTTLS
- Username: user@example.com
- Password: your-password
Send Your First Email
Once configured, you can send and receive emails through your SirrMesh server!
Next Steps
- Deployment Guide - Production deployment best practices
- Configuration Guide - Detailed configuration options
- Authentication System - Set up blockchain authentication
Troubleshooting
Common Issues
Port already in use:
bash
# Check which process is using the port
sudo lsof -i :25
sudo lsof -i :587
# Stop conflicting services
sudo systemctl stop postfix # Postfix exampleTLS certificate issues:
bash
# Check DNS configuration
sirrmeshd dns check
# Verify DNS records
sirrmeshd dns exportService won't start:
bash
# Check service status
sudo systemctl status sirrmeshd
# View detailed logs
sudo journalctl -u sirrmeshd -n 50Getting Help
- Check the FAQ
- View the Detailed Documentation
- Report issues on GitHub
Congratulations! You now have a working SirrMesh server.