Blogchevron_rightSunucu Yönetimichevron_rightNginx RTMP ile Canlı Yayın Sunucusu Kurulum Rehberi

Nginx RTMP ile Canlı Yayın Sunucusu Kurulum Rehberi

S
Serversium
calendar_today1 Haziran 2026
schedule5 dk okuma
Nginx RTMP ile Canlı Yayın Sunucusu Kurulum Rehberi

Nginx RTMP Modülü ile Kendi Canlı Yayın Sunucunuzu Kurun

Canlı yayın teknolojilerinin hızla geliştiği günümüzde, Twitch, YouTube Live veya Facebook Live gibi platformlara bağımlı kalmadan kendi sanal sunucunuz üzerinden canlı yayın yapmak hem maliyet kontrolü hem de teknik özgürlük açısından büyük avantajlar sunmaktadır. Nginx RTMP modülü, bu ihtiyacı karşılamak için en popüler ve güvenilir çözümlerden biridir.

Nginx RTMP Modülü Nedir?

Nginx RTMP (Real-Time Messaging Protocol) modülü, Nginx web sunucusuna canlı akış (streaming) yetenekleri ekleyen bir third-party modüldür. Bu modül sayesinde sunucunuz bir RTMP sunucusu olarak çalışabilir ve OBS Studio, vMix gibi yazılımlardan gelen canlı yayınları alıp HLS (HTTP Live Streaming) formatına dönüştürebilir.

Araştırmalara göre, 2024 yılında internet trafiğinin %82'si video içeriklerinden oluşmaktadır ve bu oran 2027'ye kadar %90'ı aşması beklenmektedir. Bu durum, kişisel ve kurumsal yayıncılık için özel streaming sunucularının önemini artırmaktadır.

Nginx RTMP Modülünün Avantajları

  • Düşük Gecikme: RTMP protokolü milisaniye düzeyinde gecikme süreleri sunar
  • Maliyet Etkinliği: Aylık abonelik ücreti ödemeden kendi altyapınızı kullanırsınız
  • Özelleştirme: Yayın URL'leri, kimlik doğrulama ve bant genişliği kontrolü tamamen sizde
  • Ölçeklenebilirlik: Sunucu kaynaklarınızı ihtiyacınıza göre artırabilirsiniz
  • Yedekleme: Yayınlarınızı kaydedip daha sonra istediğiniz gibi paylaşabilirsiniz

Sunucu Gereksinimleri ve Hazırlık

Kendi canlı yayın sunucunuzu kurmadan önce donanım ve yazılım gereksinimlerini anlamanız önemlidir. Minimum gereksinimler aşağıdaki tabloda detaylı olarak gösterilmiştir:

Özellik Minimum Önerilen
İşlemci 2 çekirdek 4+ çekirdek
RAM 4 GB 8 GB+
Depolama 50 GB SSD 100 GB+ NVMe
Bant Genişliği 100 Mbps 1 Gbps
İşletim Sistemi Ubuntu 20.04 / CentOS 8 Ubuntu 22.04 / Debian 12

Önemli Not: Canlı yayın sunucusu olarak depolama sunucusu seçeneklerini de değerlendirebilirsiniz. Yayın kalitesi ve eşzamanlı izleyici sayısı arttıkça kaynak ihtiyacı da orantılı olarak artacaktır.

Ubuntu/Debian Üzerinde Nginx RTMP Kurulumu

Aşağıda adım adım Ubuntu 22.04 üzerinde Nginx RTMP modülünün kurulum sürecini bulabilirsiniz:

1. Adım: Sistem Güncellemesi

Öncelikle sunucunuzun güncel olduğundan emin olun:

sudo apt update && sudo apt upgrade -y

2. Adım: Gerekli Paketlerin Yüklenmesi

Build araçları ve bağımlılıkları yükleyin:

sudo apt install -y build-essential libpcre3 libpcre3-dev libssl-dev zlib1g-dev git

3. Adım: Nginx ve RTMP Modülünün Derlenmesi

Nginx kaynak kodunu ve RTMP modülünü indirip derleyin:

# Nginx kaynak kodunu indir
cd /opt
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -xzf nginx-1.24.0.tar.gz

# RTMP modülünü klonla
git clone https://github.com/sergey-dryabzhinsky/nginx-rtmp-module.git

# Nginx'i RTMP modülü ile derle
cd nginx-1.24.0
./configure --add-module=../nginx-rtmp-module --with-http_ssl_module
make
sudo make install

4. Adım: Nginx Yapılandırması

Nginx yapılandırma dosyasını düzenleyin:

sudo nano /usr/local/nginx/conf/nginx.conf

Dosyanın sonuna aşağıdaki RTMP yapılandırmasını ekleyin:

rtmp {
    server {
        listen 1935;
        chunk_size 4096;
        
        application live {
            live on;
            record off;
            
            # HLS Ayarları
            hls on;
            hls_path /usr/local/nginx/html/hls;
            hls_fragment 3;
            hls_playlist_length 60;
        }
    }
}

http {
    server {
        listen 8080;
        
        location /hls {
            types {
                application/vnd.apple.mpegurl m3u8;
                video/mp4 ts;
            }
            root /usr/local/nginx/html;
            add_header Cache-Control no-cache;
        }
    }
}

5. Adım: Nginx'i Başlatma

Servisi başlatın ve otomatik başlamasını sağlayın:

sudo /usr/local/nginx/sbin/nginx

Sunucunun çalıştığını doğrulamak için:

ps aux | grep nginx

CentOS/Rocky Linux Üzerinde Kurulum

CentOS veya Rocky Linux üzerinde kurulum için aşağıdaki adımları izleyin:

# Development tools ve bağımlılıkları yükle
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y pcre-devel openssl-devel zlib-devel git

# Nginx ve RTMP modülünü derle (yukardaki 3. adımdan devam)

Bu aşamada sanal sunucu kaynak limitleri ve performans testleri yaparak sunucunuzun yayın kapasitesini belirlemenizi öneriyoruz.

OBS Studio ile Yayın Bağlantısı

Sunucunuzu kurduktan sonra OBS Studio'da yayın ayarlarını yapılandırmanız gerekir. Bu adımları takip edin:

  1. OBS Studio'yu açın ve Ayarlar > Yayın sekmesine gidin
  2. Hizmet olarak Özel... seçeneğini işaretleyin
  3. Sunucu alanına rtmp://sunucu-ip-adresi:1935/live yazın
  4. Akış Anahtarı alanına yayın ID'nizi girin (örneğin: test)
  5. Değişiklikleri kaydedin ve Yayınayı Başlat düğmesine tıklayın

    HLS Adaptasyonu ve Oynatma

    RTMP protokolü modern tarayıcılarda doğrudan desteklenmediğinden, yayınlarınızı HLS formatına dönüştürerek web üzerinden izleyicilere sunmanız gerekir. Yukarıdaki yapılandırma zaten HLS'i aktive etmektedir.

    Video.js ile Oynatma

    Yayınınızı web tarayıcısında oynatmak için Video.js kütüphanesini kullanabilirsiniz:

    <link href="https://vjs.zencdn.net/8.0.0/video.min.css" rel="stylesheet" />
    <script src="https://vjs.zencdn.net/8.0.0/video.min.js"></script>
    
    <video id="my-video" class="video-js" controls preload="auto" width="640" height="360">
        <source src="http://sunucu-ip-adresi:8080/hls/test.m3u8" type="application/x-mpegURL" />
    </video>

    Güvenlik Yapılandırması

    Canlı yayın sunucunuzun güvenliği kritik öneme sahiptir. Aşağıdaki önlemleri almanızı öneriyoruz:

    RTMP Kimlik Doğrulama

    Yayın erişimini korumak için temel kimlik doğrulama ekleyin:

    rtmp {
        server {
            listen 1935;
            
            application live {
                live on;
                on_publish http://localhost:8080/auth;
                deny play all;
            }
        }
    }

    Güvenlik Duvarı Kuralları

    sudo ufw allow 1935/tcp
    sudo ufw allow 8080/tcp
    sudo ufw enable

    Sunucularda 2FA (İki Faktörlü Kimlik Doğrulama) kullanmak hesap güvenliğinizi önemli ölçüde artıracaktır.

    Performans Optimizasyonu

    Yüksek kaliteli yayın deneyimi için sunucu optimizasyonu şarttır. İşte kritik ayar noktaları:

    Bant Genişliği Yönetimi

    rtmp {
        server {
            listen 1935;
            
            application live {
                live on;
                max_connections 100;
                
                # Bitrate sınırlaması
                push rtmp://localhost:1935/transcode;
            }
        }
    }

    Linux Kernel Optimizasyonu

    # Ağ performansı için sysctl ayarları
    echo "net.core.rmem_max = 16777216" >> /etc/sysctl.conf
    echo "net.core.wmem_max = 16777216" >> /etc/sysctl.conf
    sysctl -p

    Sunucu fan gürültüsü ve ısınma sorunları için sunucu fan kontrol rehberimizi inceleyebilirsiniz.

    Yayın Senaryoları ve Kullanım Alanları

    Nginx RTMP modülü ile kurduğunuz sunucu çeşitli senaryolarda kullanılabilir:

    Kullanım Alanı Açıklama Önerilen Kaynak
    Eğitim Platformları Canlı dersler ve webinarlar 4GB RAM, 2 CPU
    Oyun Yayıncılığı Twitch alternatifi özel sunucu 8GB RAM, 4 CPU
    Kurumsal Sunumlar Şirket içi canlı etkinlikler 4GB RAM, 2 CPU
    Dinazor TV 7/24 otomatik yayın 8GB RAM, 4 CPU

    Oyun sunucuları için oyun sunucuları kategorimizde özel çözümler de sunuyoruz. Özellikle Terraria sunucu ve 7 Days to Die sunucu kurulumlarında bu altyapıyı entegre edebilirsiniz.

    SSL/TLS ile Güvenli Yayın

    Modern web standartları gereği HTTPS üzerinden yayın yapmanız önerilir. Let's Encrypt ile ücretsiz SSL sertifikası kurabilirsiniz:

    # Certbot yükleme
    sudo apt install -y certbot python3-certbot-nginx
    
    # Sertifika alma
    sudo certbot -d streaming.domain.com --nginx -d www.streaming.domain.com

    HTTP/3 ve modern protokoller hakkında detaylı bilgi için HTTP3 rehberimizi inceleyebilirsiniz.

    Ortak Sorunlar ve Çözümleri

    Yayın Gecikmeli Açılıyor

    Bu sorunu çözmek için hls_fragment ve hls_playlist_length değerlerini düşürün:

    hls_fragment 1;
    hls_playlist_length 10;

    Bağlantı Reddediliyor Hatası

    Güvenlik duvarı ve port ayarlarını kontrol edin:

    sudo ufw status
    sudo netstat -tlnp | grep 1935

    Düşük Kalite veya Kesintiler

    Bant genişliği sınırlamalarını ve sunucu kaynaklarını kontrol edin.

library_booksBenzer İçerikler

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber
Sunucu Yönetimi
calendar_today5 Nisan 2026
schedule5 dk

Cloud Sunucu Nedir? Avantajları ve Detaylı Rehber

Cloud sunucular, dinamik kaynak dağıtımıyla işletmelerin kesintisiz büyümesini sağlar. Avantajlardan karşılaştırmalara tüm detaylar bu rehberde yer alıyor.

S
Serversiumarrow_forward
Linux vs Windows Sunucu: Hangisi Projeye Uygun?
Sunucu Yönetimi
calendar_today6 Nisan 2026
schedule5 dk

Linux vs Windows Sunucu: Hangisi Projeye Uygun?

Linux ve Windows Sunucu arasındaki teknik farkları, maliyet avantajlarını ve proje uyumluluğunu detaylı olarak karşılaştırıyoruz. Yazılım stack'inize en uygun işletim sistemini seçmek için kapsamlı rehberimizle doğru altyapı kararını verin.

S
Serversiumarrow_forward
Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber
Sunucu Yönetimi
calendar_today16 Nisan 2026
schedule5 dk

Plesk Kurulumu - Ubuntu 24 Üzerinde Adım Adım Rehber

Ubuntu 24 üzerinde Plesk kurulumunu adım adım öğrenin. Bu rehberde sistem gereksinimleri, kurulum adımları ve temel yapılandırma ayarlarını bulabilirsiniz.

S
Serversiumarrow_forward