Forward Email Kendi Kendine Barındırma Kurulum Rehberi Debian için

Bu rehber, Forward Email’in kendi kendine barındırılan çözümünün Debian sistemlerine kurulumu için adım adım talimatlar sağlar. Bu rehber özellikle Debian 11 (Bullseye) ve Debian 12 (Bookworm) için hazırlanmıştır.

Kuruluma başlamadan önce, aşağıdakilere sahip olduğunuzdan emin olun:

  • Debian Sunucu: Sürüm 11 (Bullseye) veya 12 (Bookworm)
  • Root Erişimi: Komutları root olarak çalıştırabilmelisiniz (sudo erişimi)
  • Alan Adı: DNS yönetim erişimine sahip kontrol ettiğiniz bir alan adı
  • Temiz Sunucu: Taze bir Debian kurulumu kullanmanız önerilir
  • İnternet Bağlantısı: Paketler ve Docker imajları indirmek için gereklidir

  • RAM: Minimum 2GB (üretim için 4GB önerilir)
  • Depolama: Minimum 20GB boş alan (üretim için 50GB+ önerilir)
  • CPU: Minimum 1 vCPU (üretim için 2+ vCPU önerilir)
  • : Aşağıdaki portların erişilebilir olduğu genel IP adresi:
    • 22 (SSH)
    • 25 (SMTP)
    • 80 (HTTP)
    • 443 (HTTPS)
    • 465 (SMTPS)
    • 993 (IMAPS)
    • 995 (POP3S)

Adım 1: İlk Sistem Kurulumu

Öncelikle, sisteminizin güncel olduğundan emin olun ve root kullanıcısına geçin:

# Sistem paketlerini güncelle
sudo apt update && sudo apt upgrade -y

# Root kullanıcısına geç (kurulum için gerekli)
sudo su -

Adım 2: DNS Çözücülerini Yapılandırma

Sisteminizin güvenilir sertifika oluşturma için Cloudflare'ın DNS sunucularını kullanacak şekilde yapılandırın:

# systemd-resolved çalışıyorsa durdur ve devre dışı bırak
if systemctl is-active --quiet systemd-resolved; then
    rm /etc/resolv.conf
    systemctl stop systemd-resolved
    systemctl disable systemd-resolved
    systemctl mask systemd-resolved
fi

# Cloudflare DNS çözücülerini yapılandır
tee /etc/resolv.conf > /dev/null <<EOF
nameserver 1.1.1.1
nameserver 2606:4700:4700::1111
nameserver 1.0.0.1
nameserver 2606:4700:4700::1001
nameserver 8.8.8.8
nameserver 2001:4860:4860::8888
nameserver 8.8.4.4
nameserver 2001:4860:4860::8844
EOF

Adım 3: Sistem Bağımlılıklarını Yükleme

Debian üzerinde Forward Email için gerekli paketleri yükleyin:

# Paket listesini güncelle
apt-get update -y

# Temel bağımlılıkları yükle (Debian'a özgü paket listesi)
apt-get install -y \
    ca-certificates \
    curl \
    gnupg \
    git \
    openssl \
    lsb-release \
    apt-transport-https \
    software-properties-common

Adım 4: Snapd'i Yükleyip Yapılandırma

Debian varsayılan olarak snapd içermez, bu yüzden yükleyip yapılandırmamız gerekiyor:

# Snapd'i yükle
apt-get install -y snapd

# Snapd servisini etkinleştir ve başlat
systemctl enable snapd
systemctl start snapd

# Snap'ın düzgün çalışması için sembolik bağlantı oluştur
ln -sf /var/lib/snapd/snap /snap

# Snapd'nin hazır olmasını bekle
sleep 10

# Snapd'nin çalıştığını doğrula
snap version

Adım 5: Snap Paketlerini Yükleme

AWS CLI ve Certbot'u snap ile yükleyin:

# AWS CLI'yı yükle
snap install aws-cli --classic

# Certbot ve DNS eklentisini yükle
snap install certbot --classic
snap set certbot trust-plugin-with-root=ok
snap install certbot-dns-cloudflare

# Yüklemeleri doğrula
aws --version
certbot --version

Adım 6: Docker'ı Yükleme

Debian üzerinde Docker CE ve Docker Compose'u yükleyin:

# Docker'ın resmi GPG anahtarını ekle (Debian'a özgü)
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | tee /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

# Docker deposunu ekle (Debian'a özgü)
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list

# Paket indeksini güncelle ve Docker'ı yükle
apt-get update -y
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Eklenti çalışmazsa yedek olarak bağımsız docker-compose'u yükle
if ! command -v docker-compose &> /dev/null; then
    apt-get install -y docker-compose
fi

# Docker kurulumunu doğrula
docker --version
docker compose version || docker-compose --version

Adım 7: Docker Servisini Yapılandırma

Docker'ın otomatik başlamasını sağlayın ve çalıştığından emin olun:

# Docker servisini etkinleştir ve başlat
systemctl unmask docker
systemctl enable docker
systemctl start docker

# Docker'ın çalıştığını doğrula
docker info

Docker başlamazsa, elle başlatmayı deneyin:

# systemctl başarısız olursa alternatif başlatma yöntemi
nohup dockerd >/dev/null 2>/dev/null &
sleep 5
docker info

Adım 8: UFW Güvenlik Duvarını Yükleyip Yapılandırma

Debian minimal kurulumlarında UFW olmayabilir, önce yükleyin:

# UFW yoksa yükle
if ! command -v ufw &> /dev/null; then
    apt-get update -y
    apt-get install -y ufw
fi

# Varsayılan politikaları ayarla
ufw default deny incoming
ufw default allow outgoing

# SSH'ye izin ver (önemli - kendinizi kilitlemeyin!)
ufw allow 22/tcp

# E-posta ile ilgili portlara izin ver
ufw allow 25/tcp    # SMTP
ufw allow 80/tcp    # HTTP (Let's Encrypt için)
ufw allow 443/tcp   # HTTPS
ufw allow 465/tcp   # SMTPS
ufw allow 993/tcp   # IMAPS
ufw allow 995/tcp   # POP3S
ufw allow 2993/tcp  # IMAP (alternatif port)
ufw allow 2995/tcp  # POP3 (alternatif port)
ufw allow 3456/tcp  # Özel servis portu
ufw allow 4000/tcp  # Özel servis portu
ufw allow 5000/tcp  # Özel servis portu

# Yerel veritabanı bağlantılarına izin ver
ufw allow from 127.0.0.1 to any port 27017  # MongoDB
ufw allow from 127.0.0.1 to any port 6379   # Redis

# Güvenlik duvarını etkinleştir
echo "y" | ufw enable

# Güvenlik duvarı durumunu kontrol et
ufw status numbered

Adım 9: Forward Email Deposu Klonlama

Forward Email kaynak kodunu indirin:

# Değişkenleri ayarla
REPO_FOLDER_NAME="forwardemail.net"
REPO_URL="https://github.com/forwardemail/forwardemail.net.git"
ROOT_DIR="/root/$REPO_FOLDER_NAME"

# Depoyu klonla
git clone "$REPO_URL" "$ROOT_DIR"
cd "$ROOT_DIR"

# Klonlamanın başarılı olduğunu doğrula
ls -la

Adım 10: Ortam Yapılandırmasını Ayarlama

Ortam yapılandırmasını hazırlayın:

# Dizin değişkenlerini ayarla
SELF_HOST_DIR="$ROOT_DIR/self-hosting"
ENV_FILE_DEFAULTS=".env.defaults"
ENV_FILE=".env"

# Varsayılan ortam dosyasını kopyala
cp "$ROOT_DIR/$ENV_FILE_DEFAULTS" "$SELF_HOST_DIR/$ENV_FILE"

# SSL dizini oluştur
mkdir -p "$SELF_HOST_DIR/ssl"

# Veritabanı dizinlerini oluştur
mkdir -p "$SELF_HOST_DIR/sqlite-data"
mkdir -p "$SELF_HOST_DIR/mongo-backups"
mkdir -p "$SELF_HOST_DIR/redis-backups"

Adım 11: Alan Adınızı Yapılandırma

Alan adınızı belirleyin ve ortam değişkenlerini güncelleyin:

# 'yourdomain.com' yerine gerçek alan adınızı yazın
DOMAIN="yourdomain.com"

# Ortam dosyasını güncelleme fonksiyonu
update_env_file() {
  local key="$1"
  local value="$2"

  if grep -qE "^${key}=" "$SELF_HOST_DIR/$ENV_FILE"; then
    sed -i -E "s|^${key}=.*|${key}=${value}|" "$SELF_HOST_DIR/$ENV_FILE"
  else
    echo "${key}=${value}" >> "$SELF_HOST_DIR/$ENV_FILE"
  fi
}

# Alan adı ile ilgili ortam değişkenlerini güncelle
update_env_file "DOMAIN" "$DOMAIN"
update_env_file "NODE_ENV" "production"
update_env_file "HTTP_PROTOCOL" "https"
update_env_file "WEB_HOST" "$DOMAIN"
update_env_file "WEB_PORT" "443"
update_env_file "CALDAV_HOST" "caldav.$DOMAIN"
update_env_file "CARDDAV_HOST" "carddav.$DOMAIN"
update_env_file "API_HOST" "api.$DOMAIN"
update_env_file "APP_NAME" "$DOMAIN"
update_env_file "SMTP_HOST" "smtp.$DOMAIN"
update_env_file "SMTP_PORT" "465"
update_env_file "IMAP_HOST" "imap.$DOMAIN"
update_env_file "IMAP_PORT" "993"
update_env_file "POP3_HOST" "pop3.$DOMAIN"
update_env_file "POP3_PORT" "995"
update_env_file "MX_HOST" "mx.$DOMAIN"
update_env_file "SMTP_EXCHANGE_DOMAINS" "mx.$DOMAIN"
update_env_file "SELF_HOSTED" "true"
update_env_file "WEBSITE_URL" "$DOMAIN"
update_env_file "AUTH_BASIC_ENABLED" "true"

Adım 12: SSL Sertifikaları Oluşturma

# Manuel DNS doğrulaması kullanarak sertifikaları oluştur
certbot certonly \
  --manual \
  --agree-tos \
  --preferred-challenges dns \
  -d "*.$DOMAIN" \
  -d "$DOMAIN"

Önemli: İstendiğinde DNS'inize TXT kayıtları oluşturmanız gerekecek. Aynı alan adı için birden fazla doğrulama görebilirsiniz - HEPSİNİ oluşturun. İkinci TXT kaydını eklerken ilk TXT kaydını silmeyin.

Seçenek B: Cloudflare DNS (Cloudflare kullanıyorsanız)

Alan adınız DNS için Cloudflare kullanıyorsa, sertifika oluşturmayı otomatikleştirebilirsiniz:

# Cloudflare kimlik bilgileri dosyasını oluştur
cat > /root/.cloudflare.ini <<EOF
dns_cloudflare_email = "your-email@example.com"
dns_cloudflare_api_key = "your-cloudflare-global-api-key"
EOF

# Doğru izinleri ayarla
chmod 600 /root/.cloudflare.ini

# Sertifikaları otomatik oluştur
certbot certonly \
  --dns-cloudflare \
  --dns-cloudflare-credentials /root/.cloudflare.ini \
  -d "$DOMAIN" \
  -d "*.$DOMAIN" \
  --non-interactive \
  --agree-tos \
  --email "your-email@example.com"

Sertifikaları Kopyalama

Sertifika oluşturulduktan sonra, uygulama dizinine kopyalayın:

# Sertifikaları uygulamanın SSL dizinine kopyala
cp /etc/letsencrypt/live/$DOMAIN*/* "$SELF_HOST_DIR/ssl/"

# Sertifikaların kopyalandığını doğrula
ls -la "$SELF_HOST_DIR/ssl/"

Adım 13: Şifreleme Anahtarları Oluşturma

Güvenli çalışma için gerekli çeşitli şifreleme anahtarlarını oluşturun:

# Yardımcı şifreleme anahtarı oluştur
helper_encryption_key=$(openssl rand -base64 32 | tr -d /=+ | cut -c -32)
update_env_file "HELPER_ENCRYPTION_KEY" "$helper_encryption_key"

# E-posta yönlendirme için SRS sırrı oluştur
srs_secret=$(openssl rand -base64 32 | tr -d /=+ | cut -c -32)
update_env_file "SRS_SECRET" "$srs_secret"

# TXT şifreleme anahtarı oluştur
txt_encryption_key=$(openssl rand -hex 16)
update_env_file "TXT_ENCRYPTION_KEY" "$txt_encryption_key"

# E-posta imzalama için DKIM özel anahtarı oluştur
openssl genrsa -f4 -out "$SELF_HOST_DIR/ssl/dkim.key" 2048
update_env_file "DKIM_PRIVATE_KEY_PATH" "/app/ssl/dkim.key"

# Webhook imza anahtarı oluştur
webhook_signature_key=$(openssl rand -hex 16)
update_env_file "WEBHOOK_SIGNATURE_KEY" "$webhook_signature_key"

# SMTP taşıma şifresi ayarla
update_env_file "SMTP_TRANSPORT_PASS" "$(openssl rand -base64 32)"

echo "✅ Tüm şifreleme anahtarları başarıyla oluşturuldu"

Adım 14: Yapılandırmadaki SSL Yollarını Güncelle

Ortam dosyasındaki SSL sertifika yollarını yapılandırın:

# SSL yollarını doğru sertifika dosyalarına işaret edecek şekilde güncelle
sed -i -E \
  -e 's|^(.*_)?SSL_KEY_PATH=.*|\1SSL_KEY_PATH=/app/ssl/privkey.pem|' \
  -e 's|^(.*_)?SSL_CERT_PATH=.*|\1SSL_CERT_PATH=/app/ssl/fullchain.pem|' \
  -e 's|^(.*_)?SSL_CA_PATH=.*|\1SSL_CA_PATH=/app/ssl/chain.pem|' \
  "$SELF_HOST_DIR/$ENV_FILE"

Adım 15: Temel Kimlik Doğrulamayı Kur

Geçici temel kimlik doğrulama bilgileri oluşturun:

# Güvenli rastgele bir parola oluştur
PASSWORD=$(openssl rand -base64 16)

# Ortam dosyasını temel kimlik bilgileri ile güncelle
update_env_file "AUTH_BASIC_USERNAME" "admin"
update_env_file "AUTH_BASIC_PASSWORD" "$PASSWORD"

# Kimlik bilgilerini göster (bunları kaydedin!)
echo ""
echo "🔐 ÖNEMLİ: Bu giriş bilgilerini kaydedin!"
echo "=================================="
echo "Kullanıcı Adı: admin"
echo "Parola: $PASSWORD"
echo "=================================="
echo ""
echo "Kurulumdan sonra web arayüzüne erişmek için bunlara ihtiyacınız olacak."
echo ""

Adım 16: Docker Compose ile Dağıtım Yap

Tüm Forward Email servislerini başlatın:

# Docker Compose dosya yolunu ayarla
DOCKER_COMPOSE_FILE="$SELF_HOST_DIR/docker-compose-self-hosted.yml"

# Var olan konteynerleri durdur
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" down
else
    docker compose -f "$DOCKER_COMPOSE_FILE" down
fi

# En son imajları çek
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" pull
else
    docker compose -f "$DOCKER_COMPOSE_FILE" pull
fi

# Tüm servisleri ayrık modda başlat
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" up -d
else
    docker compose -f "$DOCKER_COMPOSE_FILE" up -d
fi

# Servislerin başlaması için biraz bekle
sleep 10

# Servis durumunu kontrol et
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" ps
else
    docker compose -f "$DOCKER_COMPOSE_FILE" ps
fi

Adım 17: Kurulumu Doğrula

Tüm servislerin doğru çalıştığını kontrol edin:

# Docker konteynerlerini kontrol et
docker ps

# Servis loglarını hata için kontrol et
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" logs --tail=50
else
    docker compose -f "$DOCKER_COMPOSE_FILE" logs --tail=50
fi

# Web arayüzü bağlantısını test et
curl -I https://$DOMAIN

# Portların dinlenip dinlenmediğini kontrol et
ss -tlnp | grep -E ':(25|80|443|465|587|993|995)'

DNS Kayıtlarının Ayarlanması

Alan adınız için aşağıdaki DNS kayıtlarını yapılandırmanız gerekir:

MX Kaydı

@ MX 10 mx.yourdomain.com

A Kayıtları

@ A YOUR_SERVER_IP
mx A YOUR_SERVER_IP
smtp A YOUR_SERVER_IP
imap A YOUR_SERVER_IP
pop3 A YOUR_SERVER_IP
api A YOUR_SERVER_IP
caldav A YOUR_SERVER_IP
carddav A YOUR_SERVER_IP

SPF Kaydı

@ TXT "v=spf1 mx ~all"

DKIM Kaydı

DKIM açık anahtarınızı alın:

# DKIM açık anahtarını çıkar
openssl rsa -in "$SELF_HOST_DIR/ssl/dkim.key" -pubout -outform DER | openssl base64 -A

DKIM DNS kaydını oluşturun:

default._domainkey TXT "v=DKIM1; k=rsa; p=YOUR_DKIM_PUBLIC_KEY"

DMARC Kaydı

_dmarc TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@yourdomain.com"

İlk Giriş

  1. Web tarayıcınızı açın ve https://yourdomain.com adresine gidin
  2. Daha önce kaydettiğiniz temel kimlik doğrulama bilgilerini girin
  3. İlk kurulum sihirbazını tamamlayın
  4. İlk e-posta hesabınızı oluşturun

S3-Uyumlu Yedekleme Kurulumu

Otomatik yedeklemeleri S3-uyumlu depolamaya yapılandırın:

# AWS kimlik bilgileri dizini oluştur
mkdir -p ~/.aws

# AWS kimlik bilgilerini yapılandır
cat > ~/.aws/credentials <<EOF
[default]
aws_access_key_id = YOUR_ACCESS_KEY_ID
aws_secret_access_key = YOUR_SECRET_ACCESS_KEY
EOF

# AWS ayarlarını yapılandır
cat > ~/.aws/config <<EOF
[default]
region = auto
output = json
EOF

# AWS dışı S3 için (örneğin Cloudflare R2) endpoint URL'si ekle
echo "endpoint_url = YOUR_S3_ENDPOINT_URL" >> ~/.aws/config

Yedekleme Cron İşlerini Kurma

# Yedekleme betiklerini çalıştırılabilir yap
chmod +x "$ROOT_DIR/self-hosting/scripts/backup-mongo.sh"
chmod +x "$ROOT_DIR/self-hosting/scripts/backup-redis.sh"

# MongoDB yedekleme cron işi ekle (her gün gece yarısı çalışır)
(crontab -l 2>/dev/null; echo "0 0 * * * $ROOT_DIR/self-hosting/scripts/backup-mongo.sh >> /var/log/mongo-backup.log 2>&1") | crontab -

# Redis yedekleme cron işi ekle (her gün gece yarısı çalışır)
(crontab -l 2>/dev/null; echo "0 0 * * * $ROOT_DIR/self-hosting/scripts/backup-redis.sh >> /var/log/redis-backup.log 2>&1") | crontab -

# Cron işlerinin eklendiğini doğrula
crontab -l

Forward Email kurulumunuz için otomatik güncellemeleri ayarlayın:

# Otomatik güncelleme komutunu oluştur (uygun docker compose komutunu kullan)
if command -v docker-compose &> /dev/null; then
    DOCKER_UPDATE_CMD="docker-compose -f $DOCKER_COMPOSE_FILE pull && docker-compose -f $DOCKER_COMPOSE_FILE up -d"
else
    DOCKER_UPDATE_CMD="docker compose -f $DOCKER_COMPOSE_FILE pull && docker compose -f $DOCKER_COMPOSE_FILE up -d"
fi

# Otomatik güncelleme cron işi ekle (her gün saat 1'de çalışır)
(crontab -l 2>/dev/null; echo "0 1 * * * $DOCKER_UPDATE_CMD >> /var/log/autoupdate.log 2>&1") | crontab -

# Cron işinin eklendiğini doğrula
crontab -l

Paket Yönetimi Farklılıkları

  • Snapd: Debian'da varsayılan olarak yüklü değildir, manuel kurulum gerektirir
  • Docker: Debian'a özgü depolar ve GPG anahtarları kullanır
  • UFW: Minimal Debian kurulumlarında bulunmayabilir
  • systemd: Davranış Ubuntu'dan biraz farklı olabilir

Servis Yönetimi

# Servis durumunu kontrol et (Debian'a özgü komutlar)
systemctl status snapd
systemctl status docker
systemctl status ufw

# Gerekirse servisleri yeniden başlat
systemctl restart snapd
systemctl restart docker

Ağ Yapılandırması

Debian farklı ağ arayüzü isimlerine veya yapılandırmalarına sahip olabilir:

# Ağ arayüzlerini kontrol et
ip addr show

# Yönlendirmeyi kontrol et
ip route show

# DNS çözümlemesini kontrol et
nslookup google.com

Günlük Dosyalarının Konumları

  • Docker Compose günlükleri: Kuruluma bağlı uygun docker compose komutunu kullanın
  • Sistem günlükleri: /var/log/syslog
  • Yedekleme günlükleri: /var/log/mongo-backup.log, /var/log/redis-backup.log
  • Otomatik güncelleme günlükleri: /var/log/autoupdate.log
  • Snapd günlükleri: journalctl -u snapd

Düzenli Bakım Görevleri

  1. Disk alanını izle: df -h
  2. Servis durumunu kontrol et: Uygun docker compose komutunu kullan
  3. Günlükleri incele: Hem uygulama hem sistem günlüklerini kontrol et
  4. Sistem paketlerini güncelle: apt update && apt upgrade
  5. Snapd'i izle: snap list ve snap refresh

Sertifika Yenileme

Sertifikalar otomatik yenilenmelidir, ancak gerekirse manuel yenileyebilirsiniz:

# Manuel sertifika yenileme
certbot renew

# Yenilenmiş sertifikaları kopyala
cp /etc/letsencrypt/live/$DOMAIN*/* "$SELF_HOST_DIR/ssl/"

# Yeni sertifikaları kullanmak için servisleri yeniden başlat
if command -v docker-compose &> /dev/null; then
    docker-compose -f "$DOCKER_COMPOSE_FILE" restart
else
    docker compose -f "$DOCKER_COMPOSE_FILE" restart
fi

Debian'a Özgü Sorunlar

1. Snapd Çalışmıyor

# Snapd durumunu kontrol et
systemctl status snapd

# Snapd'i yeniden başlat
systemctl restart snapd

# Snap yolunu kontrol et
echo $PATH | grep snap

# Eksikse snap'i PATH'e ekle
echo 'export PATH=$PATH:/snap/bin' >> ~/.bashrc
source ~/.bashrc

2. Docker Compose Komutu Bulunamadı

# Hangi docker compose komutunun mevcut olduğunu kontrol et
command -v docker-compose
command -v docker

# Betiklerde uygun komutu kullan
if command -v docker-compose &> /dev/null; then
    echo "docker-compose kullanılıyor"
else
    echo "docker compose kullanılıyor"
fi

3. Paket Kurulum Sorunları

# Paket önbelleğini güncelle
apt update

# Kırık paketleri düzelt
apt --fix-broken install

# Tutulan paketleri kontrol et
apt-mark showhold

Yaygın Sorunlar

1. Docker Servisi Başlamıyor

# Docker durumunu kontrol et
systemctl status docker

# Docker günlüklerini kontrol et
journalctl -u docker

# Alternatif başlatmayı dene
nohup dockerd >/dev/null 2>/dev/null &

2. Sertifika Oluşturma Başarısız Oluyor

  • 80 ve 443 portlarının erişilebilir olduğundan emin olun
  • DNS kayıtlarının sunucunuza işaret ettiğini doğrulayın
  • ufw status ile güvenlik duvarı ayarlarını kontrol edin

3. E-posta Teslim Sorunları

  • MX kayıtlarının doğru olduğunu doğrulayın
  • SPF, DKIM ve DMARC kayıtlarını kontrol edin
  • 25 numaralı portun barındırma sağlayıcınız tarafından engellenmediğinden emin olun

Yardım Alma

  1. Sistemi Güncel Tutun: Debian ve paketleri düzenli olarak güncelleyin
  2. Günlükleri İzleyin: Günlük izleme ve uyarı sistemi kurun
  3. Düzenli Yedek Alın: Yedekleme ve geri yükleme prosedürlerini test edin
  4. Güçlü Parolalar Kullanın: Tüm hesaplar için güçlü parolalar oluşturun
  5. Fail2Ban Etkinleştirin: Ek güvenlik için fail2ban kurmayı düşünün
  6. Düzenli Güvenlik Denetimleri Yapın: Yapılandırmanızı periyodik olarak gözden geçirin
  7. Snapd’yi İzleyin: Snap paketlerini snap refresh ile güncel tutun

Forward Email kendi kendine barındırma kurulumunuz artık tamamlanmış ve Debian üzerinde çalışıyor olmalıdır. Unutmayın:

  1. DNS kayıtlarınızı doğru yapılandırın
  2. E-posta gönderme ve alma testleri yapın
  3. Düzenli yedeklemeler kurun
  4. Sistemizi düzenli olarak izleyin
  5. Kurulumunuzu güncel tutun
  6. Snapd ve snap paketlerini izleyin

Ubuntu’dan temel farklar snapd kurulumu ve Docker depo yapılandırmasıdır. Bunlar doğru şekilde ayarlandığında, Forward Email uygulaması her iki sistemde de aynı şekilde çalışır.

Ek yapılandırma seçenekleri ve gelişmiş özellikler için resmi Forward Email dokümantasyonuna https://forwardemail.net/self-hosted#configuration adresinden bakabilirsiniz.