{"id":1168,"date":"2026-11-05T12:21:01","date_gmt":"2026-11-05T12:21:01","guid":{"rendered":"https:\/\/www.vps.tc\/blog\/?p=1168"},"modified":"2026-11-05T09:36:07","modified_gmt":"2026-11-05T09:36:07","slug":"vps-jitsi-meet-kurulumu","status":"publish","type":"post","link":"https:\/\/www.vps.tc\/blog\/tr\/vps-jitsi-meet-kurulumu\/","title":{"rendered":"VPS&#8217;te Jitsi Meet Kurulumu: Kendi Toplant\u0131 Sunucunuz"},"content":{"rendered":"<div class=\"aiw-summary\" id=\"aiw-ozet\">\n<p class=\"aiw-summary-title\">H\u0131zl\u0131 \u00d6zet &#8211; VPS \u00dczerinde Jitsi Meet<\/p>\n<p>Jitsi Meet ile kendi toplant\u0131 sunucunuzu \u00e7al\u0131\u015ft\u0131rabilirsiniz; kurulumun tamamlanmas\u0131 i\u00e7in web eri\u015fimi kadar medya ba\u011flant\u0131s\u0131 ve oda yetkileri de do\u011frulanmal\u0131d\u0131r. Ortam ve kaynak de\u011ferleri varsay\u0131msal laboratuvar i\u00e7indir, \u00f6l\u00e7\u00fclm\u00fc\u015f kapasite de\u011fildir.<\/p>\n<ul>\n<li><strong>Ba\u015flang\u0131\u00e7 ortam\u0131<\/strong> \u2014 Temiz Ubuntu Server 24.04 LTS amd64 \u00fczerinde 4 vCPU, 8 GiB RAM ve 40 GiB SSD, kat\u0131l\u0131mc\u0131 garantisi vermeyen ba\u015flang\u0131\u00e7 varsay\u0131m\u0131d\u0131r.<\/li>\n<li><strong>Alan ad\u0131 haz\u0131rl\u0131\u011f\u0131<\/strong> \u2014 Kontrol etti\u011finiz alan ad\u0131n\u0131n A kayd\u0131n\u0131 VPS&#039;nin ger\u00e7ek genel IPv4 adresine y\u00f6nlendirin; IPv6 yap\u0131land\u0131r\u0131lmad\u0131\u011f\u0131 i\u00e7in AAAA kayd\u0131 yay\u0131mlamay\u0131n.<\/li>\n<li><strong>A\u011f eri\u015fimi<\/strong> \u2014 UFW ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131nda TCP 80\/443 ile UDP 10000 eri\u015fimini a\u00e7\u0131n, SSH TCP 22 eri\u015fimini ger\u00e7ek y\u00f6netim adresinizle s\u0131n\u0131rland\u0131r\u0131n.<\/li>\n<li><strong>Paket ve HTTPS<\/strong> \u2014 Jitsi&#039;nin resmi stable APT deposunu kullan\u0131n, kurulu paket revizyonlar\u0131n\u0131 kaydedin ve ger\u00e7ek alan ad\u0131n\u0131z i\u00e7in ge\u00e7erli sertifika edinin.<\/li>\n<li><strong>Toplant\u0131 yetkileri<\/strong> \u2014 Secure domain ile oda olu\u015fturmay\u0131 do\u011frulanm\u0131\u015f hesaplara ay\u0131r\u0131n; misafir kat\u0131l\u0131m\u0131n\u0131, lobiyi ve toplant\u0131 parolas\u0131n\u0131 ayr\u0131 kontroller olarak de\u011ferlendirin.<\/li>\n<li><strong>\u0130\u015fletim do\u011frulamas\u0131<\/strong> \u2014 En az \u00fc\u00e7 istemciyle medya yolunu s\u0131nay\u0131n, kaynak ve trafik kullan\u0131m\u0131n\u0131 \u00f6l\u00e7\u00fcn, sunucu d\u0131\u015f\u0131 \u015fifreli yede\u011fin geri y\u00fcklenmesini kontrol edin.<\/li>\n<\/ul>\n<\/div>\n<p class=\"aiw-lead\">Toplant\u0131 sayfas\u0131n\u0131n a\u00e7\u0131lmas\u0131, Jitsi sunucunuzun haz\u0131r oldu\u011funu g\u00f6stermez. VPS Jitsi Meet kurulumu; Ubuntu \u00fczerinde resmi paketlerin kurulmas\u0131n\u0131, DNS ve HTTPS ayarlar\u0131n\u0131, medya i\u00e7in UDP 10000 eri\u015fimini ve oda olu\u015fturma yetkilerinin s\u0131n\u0131rland\u0131r\u0131lmas\u0131n\u0131 gerektirir. 4 vCPU ve 8 GiB RAM ba\u015flang\u0131\u00e7 varsay\u0131m\u0131d\u0131r; kullan\u0131labilir kapasiteyi en az \u00fc\u00e7 istemcili testler ve trafik \u00f6l\u00e7\u00fcmleriyle do\u011frulaman\u0131z gerekir.<\/p>\n<div class=\"aiw-toc\" style=\"border:1px solid #dbe3ea;border-radius:8px;padding:16px 20px;margin:0 0 28px\">\n<p class=\"aiw-toc-head\"><strong>\u0130\u00e7indekiler<\/strong><span class=\"aiw-toc-meta\"> \u00b7 17 dk okuma<\/span><\/p>\n<ol style=\"margin:10px 0 0;padding-left:22px\">\n<li><a href=\"#once-kapasite-beklentisini-belirleyin\">\u00d6nce kapasite beklentisini belirleyin<\/a><\/li>\n<li><a href=\"#dns-ve-guvenlik-duvari-kurulumdan-once-hazir-olmali\">DNS ve g\u00fcvenlik duvar\u0131 kurulumdan \u00f6nce haz\u0131r olmal\u0131<\/a><\/li>\n<li><a href=\"#resmi-depodan-jitsi-meet-paketlerini-kurun\">Resmi depodan Jitsi Meet paketlerini kurun<\/a><\/li>\n<li><a href=\"#gecerli-https-yetmez-medya-erisimini-de-dogrulayin\">Ge\u00e7erli HTTPS yetmez: medya eri\u015fimini de do\u011frulay\u0131n<\/a><\/li>\n<li><a href=\"#oda-acmayi-kimlik-dogrulamayla-sinirlandirin\">Oda a\u00e7may\u0131 kimlik do\u011frulamayla s\u0131n\u0131rland\u0131r\u0131n<\/a><\/li>\n<li><a href=\"#uc-istemciyle-sinayin-kapasiteyi-olcerek-buyutun\">\u00dc\u00e7 istemciyle s\u0131nay\u0131n, kapasiteyi \u00f6l\u00e7erek b\u00fcy\u00fct\u00fcn<\/a><\/li>\n<li><a href=\"#yedek-ve-guncelleme-planini-ilk-toplantidan-once-tamamlayin\">Yedek ve g\u00fcncelleme plan\u0131n\u0131 ilk toplant\u0131dan \u00f6nce tamamlay\u0131n<\/a><\/li>\n<li><a href=\"#ilk-toplantidan-once-kontrol-edin\">\u0130lk Toplant\u0131dan \u00d6nce Kontrol Edin<\/a><\/li>\n<li><a href=\"#sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/a><\/li>\n<li><a href=\"#kaynaklar\">Kaynaklar<\/a><\/li>\n<\/ol>\n<\/div>\n<h2 id=\"once-kapasite-beklentisini-belirleyin\">\u00d6nce kapasite beklentisini belirleyin<\/h2>\n<p>\u0130ki ki\u015finin sorunsuz g\u00f6r\u00fc\u015fmesi, yirmi ki\u015finin kameralar\u0131n\u0131 a\u00e7t\u0131\u011f\u0131 toplant\u0131n\u0131n da rahat ge\u00e7ece\u011fini g\u00f6stermez. Y\u00fck de\u011fi\u015fir. VPS Jitsi Meet kurulumu i\u00e7in kat\u0131l\u0131mc\u0131 say\u0131s\u0131n\u0131 tek ba\u015f\u0131na kapasite \u00f6l\u00e7\u00fcs\u00fc kabul etmeyin; e\u015fzamanl\u0131 oda say\u0131s\u0131n\u0131, hedef \u00e7\u00f6z\u00fcn\u00fcrl\u00fc\u011f\u00fc, a\u00e7\u0131k kameralar\u0131 ve sunucudan \u00e7\u0131kan toplam medya trafi\u011fini birlikte de\u011ferlendirin.<\/p>\n<p>Jitsi Meet taray\u0131c\u0131daki toplant\u0131 aray\u00fcz\u00fcn\u00fc sa\u011flar; Nginx aray\u00fcz\u00fc HTTPS \u00fczerinden sunar. Prosody, XMPP \u00fczerinden kimlik do\u011frulama ve oturum sinyalle\u015fmesini y\u00fcr\u00fct\u00fcr. Jicofo konferans\u0131 koordine eder ve medya k\u00f6pr\u00fcs\u00fcn\u00fcn se\u00e7imini y\u00f6netir. Jitsi Handbook&#8217;un secure domain belgesinde de eri\u015fim denetimi i\u00e7in Prosody ve Jicofo birlikte yap\u0131land\u0131r\u0131l\u0131r &#8211; yaln\u0131zca web sunucusunu ayarlamak yeterli de\u011fildir.<\/p>\n<p>Medya taraf\u0131nda Jitsi Videobridge 2 \u00e7al\u0131\u015f\u0131r. Bir SFU olarak istemcilerden ald\u0131\u011f\u0131 ak\u0131\u015flar\u0131 di\u011fer kat\u0131l\u0131mc\u0131lara se\u00e7erek iletir; g\u00f6r\u00fcnt\u00fcleri tek bir birle\u015fik videoya d\u00f6n\u00fc\u015ft\u00fcrmez. \u0130ki kat\u0131l\u0131mc\u0131l\u0131 g\u00f6r\u00fc\u015fmelerde, yap\u0131land\u0131rma ve ba\u011flant\u0131 ko\u015fullar\u0131 uygunsa medya do\u011frudan istemciler aras\u0131nda P2P akabilir. Daha kalabal\u0131k g\u00f6r\u00fc\u015fmeler k\u00f6pr\u00fcy\u00fc kullan\u0131r; iki taray\u0131c\u0131yla kontrol yapmak, k\u00f6pr\u00fcn\u00fcn toplant\u0131 y\u00fck\u00fcn\u00fc g\u00f6stermeyebilir.<\/p>\n<p>Varsay\u0131msal laboratuvar\u0131m\u0131z temiz Ubuntu Server 24.04 LTS amd64, systemd, da\u011f\u0131t\u0131m\u0131n Nginx 1.24.x paketi ve Jitsi&#8217;nin resmi stable APT deposundaki Jitsi Meet 2.0 paket ailesini kullan\u0131r. Jicofo, Jitsi Videobridge 2 ve Prosody ba\u011f\u0131ml\u0131l\u0131klar\u0131 bu paketlerle uyumludur. <strong>4 vCPU, 8 GiB RAM ve 40 GiB SSD<\/strong> ba\u015flang\u0131\u00e7 varsay\u0131m\u0131d\u0131r; belirli bir kat\u0131l\u0131mc\u0131 kapasitesini garanti etmez. Tam paket revizyonlar\u0131 kurulum tarihinde kaydedilecek, sonraki ad\u0131mlarda ayn\u0131 paket k\u00fcmesi esas al\u0131nacakt\u0131r.<\/p>\n<p>Kat\u0131l\u0131mc\u0131 say\u0131s\u0131 potansiyel al\u0131c\u0131lar\u0131, a\u00e7\u0131k kamera say\u0131s\u0131 video kaynaklar\u0131n\u0131 art\u0131r\u0131r. \u00c7\u00f6z\u00fcn\u00fcrl\u00fck ve kare h\u0131z\u0131 ak\u0131\u015f ba\u015f\u0131na bant geni\u015fli\u011fini etkiler; al\u0131c\u0131lar\u0131n g\u00f6r\u00fcnt\u00fc d\u00fczeni ve kalite uyarlamas\u0131 iletilen katmanlar\u0131 de\u011fi\u015ftirir. E\u015fzamanl\u0131 odalar ayn\u0131 CPU, bellek ve a\u011f b\u00fct\u00e7esini payla\u015f\u0131r. Ayn\u0131 toplam kat\u0131l\u0131mc\u0131 say\u0131s\u0131n\u0131n farkl\u0131 oda da\u011f\u0131l\u0131mlar\u0131nda ayn\u0131 y\u00fck\u00fc \u00fcretmesini beklemeyin.<\/p>\n<p>\u00c7\u0131k\u0131\u015f trafi\u011fine \u00f6zellikle bak\u0131n: k\u00f6pr\u00fc ayn\u0131 g\u00f6r\u00fcnt\u00fcy\u00fc birden fazla al\u0131c\u0131ya iletebilir. VPS&#8217;nin do\u011frudan atanm\u0131\u015f tek genel IPv4 adresi, sa\u011flay\u0131c\u0131 konsol eri\u015fimi ve en az 1 Gbit\/s olarak sunulan ba\u011flant\u0131s\u0131 bulundu\u011fu varsay\u0131l\u0131r. Port h\u0131z\u0131, s\u00fcrd\u00fcr\u00fclebilir aktar\u0131m garantisi de\u011fildir. Ger\u00e7ek bant geni\u015fli\u011fini, trafik kotas\u0131n\u0131 ve a\u015f\u0131m \u00fccretini do\u011frulay\u0131n; kaynak takibini <a href=\"https:\/\/www.vps.tc\/blog\/tr\/vpste-prometheus-grafana-kurulumu\/\">VPS&#8217;te Prometheus ve Grafana ile \u0130zleme<\/a> yakla\u015f\u0131m\u0131yla planlayabilirsiniz.<\/p>\n<p>Kay\u0131t ve canl\u0131 yay\u0131n sa\u011flayan Jibri bu kurulumun d\u0131\u015f\u0131ndad\u0131r. Bunlara ihtiya\u00e7 duyuyorsan\u0131z toplant\u0131 sunucusunun ba\u015flang\u0131\u00e7 b\u00fct\u00e7esine g\u00fcvenmek yerine ayr\u0131 kaynak ay\u0131r\u0131n.<\/p>\n<div class=\"aiw-callout aiw-callout-tip\">\n<p class=\"aiw-callout-label\">\u0130pucu<\/p>\n<p>4 vCPU, 8 GiB RAM ve 40 GiB SSD de\u011ferleri bu varsay\u0131msal laboratuvar\u0131n ba\u015flang\u0131\u00e7 kaynaklar\u0131d\u0131r; belirli bir kat\u0131l\u0131mc\u0131 say\u0131s\u0131n\u0131 garanti etmez. 1 Gbit\/s olarak sunulan ba\u011flant\u0131n\u0131n ger\u00e7ek aktar\u0131m kapasitesini ve ayl\u0131k trafik kotas\u0131n\u0131 ayr\u0131ca kontrol edin. Kay\u0131t ve canl\u0131 yay\u0131n i\u00e7in kullan\u0131lan Jibri bu kurulumun kapsam\u0131 d\u0131\u015f\u0131ndad\u0131r.<\/p>\n<\/div>\n<h2 id=\"dns-ve-guvenlik-duvari-kurulumdan-once-hazir-olmali\">DNS ve g\u00fcvenlik duvar\u0131 kurulumdan \u00f6nce haz\u0131r olmal\u0131<\/h2>\n<p>Toplant\u0131 sayfas\u0131n\u0131n a\u00e7\u0131lmas\u0131, ses ve g\u00f6r\u00fcnt\u00fcn\u00fcn ta\u015f\u0131nabildi\u011fini g\u00f6stermez. \u0130kisini ay\u0131r\u0131n. VPS Jitsi Meet kurulumu \u00f6ncesinde DNS ve eri\u015fim kurallar\u0131n\u0131 haz\u0131rlay\u0131n. Varsay\u0131msal laboratuvardaki temiz Ubuntu Server 24.04 LTS amd64 sunucunun tek genel IPv4 adresi do\u011frudan aray\u00fcz\u00fcne atanm\u0131\u015ft\u0131r; NAT veya port y\u00f6nlendirmesi gerekmeyecektir.<\/p>\n<p>DNS panelinde <code>meet.example.com<\/code> i\u00e7in <code>203.0.113.10<\/code> adresine y\u00f6nelen bir A kayd\u0131 planlay\u0131n. Bunlar ayr\u0131lm\u0131\u015f belgeleme de\u011ferleridir; ger\u00e7ek DNS veya Let&#8217;s Encrypt do\u011frulamas\u0131nda kullan\u0131lamaz. Komutlar\u0131 uygulamadan \u00f6nce alan ad\u0131n\u0131 kontrol\u00fcn\u00fczdeki alan ad\u0131yla, IP adresini ger\u00e7ek genel IPv4 adresinizle de\u011fi\u015ftirin. Y\u00f6netim kayna\u011f\u0131 <code>198.51.100.25\/32<\/code> de de\u011fi\u015ftirilmelidir. IPv6 yap\u0131land\u0131r\u0131lmayaca\u011f\u0131 i\u00e7in AAAA kayd\u0131 yay\u0131mlamay\u0131n; mevcutsa kald\u0131r\u0131n. Aksi durumda istemciler \u00e7al\u0131\u015fmayan IPv6 yolunu deneyebilir.<\/p>\n<pre><code>sudo apt-get update\nsudo apt-get install dnsutils ufw\nsudo hostnamectl set-hostname meet.example.com\nhostnamectl --static\ndig +short A meet.example.com\ndig +short AAAA meet.example.com<\/code><\/pre>\n<p><code>hostnamectl --static<\/code> se\u00e7ti\u011finiz sunucu ad\u0131n\u0131, A sorgusu ger\u00e7ek genel IPv4 adresinizi g\u00f6stermelidir. AAAA yan\u0131t\u0131 bo\u015f olmal\u0131d\u0131r; bo\u015flu\u011fu sorgu hatas\u0131yla kar\u0131\u015ft\u0131rmay\u0131n. Gerekirse <code>dig AAAA meet.example.com<\/code> \u00e7\u0131kt\u0131s\u0131ndaki durum bilgisini inceleyin. Sunucu ad\u0131n\u0131 de\u011fi\u015ftirmek DNS kayd\u0131 olu\u015fturmaz. Eski yan\u0131tlar\u0131n nedenleri i\u00e7in <a href=\"https:\/\/www.vps.tc\/blog\/tr\/dns-yayilmasi-ne-kadar-surer\/\">DNS Yay\u0131lmas\u0131 Nedir? Ne Kadar S\u00fcrer?<\/a> a\u00e7\u0131klamas\u0131ndaki \u00f6nbellek ayr\u0131m\u0131na bakabilirsiniz.<\/p>\n<p>SSH kural\u0131n\u0131 eklemeden \u00f6nce sa\u011flay\u0131c\u0131 konsolunun a\u00e7\u0131ld\u0131\u011f\u0131n\u0131 ve ba\u011flant\u0131n\u0131z\u0131n ger\u00e7ek \u00e7\u0131k\u0131\u015f IPv4 adresini do\u011frulay\u0131n. Yerel a\u011f\u0131n\u0131zdaki \u00f6zel IP kullan\u0131lmamal\u0131d\u0131r. Mevcut SSH oturumunu a\u00e7\u0131k tutun; komutlar\u0131 sudo yetkili normal kullan\u0131c\u0131yla \u00e7al\u0131\u015ft\u0131r\u0131n. \u00d6rnek temiz sunucu i\u00e7indir; mevcut kurallar varsa \u00f6nce inceleyin.<\/p>\n<pre><code>sudo ufw status numbered\nsudo ufw default deny incoming\nsudo ufw default allow outgoing\nsudo ufw allow proto tcp from 198.51.100.25\/32 to any port 22\nsudo ufw allow proto tcp from 0.0.0.0\/0 to any port 80\nsudo ufw allow proto tcp from 0.0.0.0\/0 to any port 443\nsudo ufw allow proto udp from 0.0.0.0\/0 to any port 10000\nsudo ufw show added<\/code><\/pre>\n<p>Sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131nda ayn\u0131 eri\u015fim matrisini uygulay\u0131n: TCP 22 yaln\u0131zca y\u00f6netim adresine, TCP 80\/443 ve UDP 10000 toplant\u0131 istemcilerine a\u00e7\u0131k olmal\u0131d\u0131r. Let&#8217;s Encrypt belgelerine g\u00f6re HTTP-01 do\u011frulamas\u0131 TCP 80 \u00fczerinden yap\u0131l\u0131r; TCP 443 izni bunun yerine ge\u00e7mez. UDP 10000, Videobridge medya trafi\u011fini ta\u015f\u0131r. <code>ufw show added<\/code> ile haz\u0131rlanan kurallar\u0131 inceleyin; etkinle\u015ftirmeden \u00f6nce SSH kaynak adresini yeniden kontrol edin.<\/p>\n<pre><code>sudo ufw enable\nsudo ufw status numbered<\/code><\/pre>\n<p>Beklenen \u00e7\u0131kt\u0131 <code>Status: active<\/code> ve haz\u0131rlad\u0131\u011f\u0131n\u0131z izinlerdir. Bu, d\u0131\u015f eri\u015fimin kan\u0131t\u0131 de\u011fildir; kurulum \u00f6ncesinde toplant\u0131 portlar\u0131nda servis dinlemeyebilir. \u0130ki g\u00fcvenlik duvar\u0131 katman\u0131 da trafi\u011fe izin vermelidir. Y\u00f6netim adresinizden ikinci bir SSH oturumu a\u00e7abildi\u011finizi do\u011frulamadan ilkini kapatmay\u0131n.<\/p>\n<div class=\"aiw-callout aiw-callout-warn\">\n<p class=\"aiw-callout-label\">Dikkat<\/p>\n<p>meet.example.com, 203.0.113.10 ve 198.51.100.25\/32 yaln\u0131zca belgeleme de\u011ferleridir; ger\u00e7ek DNS, sertifika veya y\u00f6netim eri\u015fimi ayarlar\u0131nda kullan\u0131lmamal\u0131d\u0131r. SSH kural\u0131n\u0131 ger\u00e7ek y\u00f6netim adresinizle haz\u0131rlamadan ve sa\u011flay\u0131c\u0131 konsolunu do\u011frulamadan UFW&#039;yi etkinle\u015ftirmeyin. Sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131ndaki kurallar\u0131 da ayn\u0131 eri\u015fim plan\u0131yla kar\u015f\u0131la\u015ft\u0131r\u0131n.<\/p>\n<\/div>\n<h2 id=\"resmi-depodan-jitsi-meet-paketlerini-kurun\">Resmi depodan Jitsi Meet paketlerini kurun<\/h2>\n<p>Kurulum ekran\u0131nda yanl\u0131\u015f alan ad\u0131n\u0131 onaylamak, sonradan birka\u00e7 yap\u0131land\u0131rma dosyas\u0131n\u0131 d\u00fczeltmenize neden olabilir. \u00d6nce do\u011frulay\u0131n. Varsay\u0131msal laboratuvar temiz Ubuntu Server 24.04 LTS amd64 ve systemd kullan\u0131yor; Nginx, Ubuntu deposundaki 1.24.x paketinden kurulacak. Jitsi Meet 2.0 ailesinin Jicofo, Jitsi Videobridge 2 ve Prosody ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 APT \u00e7\u00f6zecek. Depo i\u00e7eri\u011fi de\u011fi\u015febildi\u011finden tam revizyonlar\u0131 kurulum tarihinde kaydedin.<\/p>\n<p>Jitsi Handbook&#8217;un Debian\/Ubuntu kurulum ak\u0131\u015f\u0131 resmi stable APT deposunu kullan\u0131r. A\u015fa\u011f\u0131daki komutlarda imza anahtar\u0131 ayr\u0131 keyring dosyas\u0131na yaz\u0131l\u0131r; <code>signed-by<\/code>, bu depo i\u00e7in kullan\u0131lacak anahtar\u0131 belirtir. <code>apt-key<\/code> veya indirilen beti\u011fi do\u011frudan yetkili kabukta \u00e7al\u0131\u015ft\u0131rma y\u00f6ntemi kullan\u0131lmaz. Komutlar\u0131 sudo yetkili normal kullan\u0131c\u0131yla s\u0131rayla uygulay\u0131n; hata veren ad\u0131m\u0131 d\u00fczeltmeden ilerlemeyin. Nginx&#8217;i \u00f6nce kurmak, Jitsi paketlerinin mevcut web sunucusunu alg\u0131lamas\u0131n\u0131 sa\u011flar.<\/p>\n<pre><code>sudo apt update\nsudo apt install ca-certificates curl gnupg software-properties-common\nsudo add-apt-repository -y universe\nsudo apt update\nsudo apt install nginx\n\nsudo install -d -m 0755 \/usr\/share\/keyrings\nkey_file=$(mktemp)\ncurl -fsSL https:\/\/download.jitsi.org\/jitsi-key.gpg -o \"$key_file\"\nsudo gpg --dearmor --yes --output \/usr\/share\/keyrings\/jitsi-keyring.gpg \"$key_file\"\nrm -f \"$key_file\"\nsudo chmod 0644 \/usr\/share\/keyrings\/jitsi-keyring.gpg\n\nprintf '%s\\n' 'deb [signed-by=\/usr\/share\/keyrings\/jitsi-keyring.gpg] https:\/\/download.jitsi.org stable\/' | sudo tee \/etc\/apt\/sources.list.d\/jitsi-stable.list\nsudo apt update\nsudo install -d -m 0700 \/var\/backups\/jitsi\napt-cache policy jitsi-meet jicofo jitsi-videobridge2 prosody nginx | sudo tee \/var\/backups\/jitsi\/package-candidates.txt\nsudo apt install jitsi-meet<\/code><\/pre>\n<p><code>apt-cache policy<\/code> \u00e7\u0131kt\u0131s\u0131ndaki <code>Candidate:<\/code> sat\u0131r\u0131 kurulacak aday\u0131 g\u00f6sterir; <code>jitsi-meet<\/code> kayna\u011f\u0131 resmi Jitsi deposu olmal\u0131d\u0131r. <code>(none)<\/code> g\u00f6r\u00fcrseniz durun. \u0130mza hatas\u0131nda denetimi kapatmak yerine depo sat\u0131r\u0131n\u0131, anahtar dosyas\u0131n\u0131n okunabilirli\u011fini ve sistem saatini kontrol edin. Aday kayd\u0131 s\u00fcr\u00fcmleri belgeler, kilitlemez. Nginx ve Prosody&#8217;nin Ubuntu ar\u015fivinden gelmesi ise beklenen bir durumdur; b\u00fct\u00fcn ba\u011f\u0131ml\u0131l\u0131klar\u0131n Jitsi deposundan gelmesi gerekmez.<\/p>\n<p>Alan ad\u0131 ekran\u0131ndaki ortak \u00f6rnek <code>meet.example.com<\/code> de\u011feridir. Bu ad ve <code>203.0.113.10<\/code> belgeleme i\u00e7in ayr\u0131lm\u0131\u015ft\u0131r; ger\u00e7ek kurulumda kontrol etti\u011finiz alan ad\u0131n\u0131 ve VPS&#8217;nin ger\u00e7ek genel IPv4 adresini kullan\u0131n. Alan ad\u0131 kutusuna URL \u015femas\u0131 veya yol eklemeyin.<\/p>\n<p>Sonraki HTTPS ad\u0131m\u0131na haz\u0131rl\u0131k olarak sertifika ekran\u0131nda kendinden imzal\u0131 sertifika \u00fcretme se\u00e7ene\u011fini se\u00e7in; se\u00e7enek metni paket revizyonuyla de\u011fi\u015febilir. Bu ge\u00e7ici sertifika taray\u0131c\u0131 g\u00fcveni sa\u011flamaz. Let&#8217;s Encrypt belgelerine g\u00f6re sonraki HTTP-01 do\u011frulamas\u0131 TCP 80 \u00fczerinden yap\u0131l\u0131r; UFW ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131 eri\u015fime birlikte izin vermelidir. Ayr\u0131lm\u0131\u015f \u00f6rnek alan ad\u0131yla ger\u00e7ek sertifika al\u0131namaz.<\/p>\n<pre><code>sudo systemctl status nginx prosody jicofo jitsi-videobridge2 --no-pager\nsudo journalctl -u nginx -u prosody -u jicofo -u jitsi-videobridge2 -b -n 100 --no-pager\n\ndpkg-query -W -f='${binary:Package}\\t${Version}\\t${Architecture}\\t${db:Status-Abbrev}\\n' | sudo tee \/var\/backups\/jitsi\/package-versions.txt<\/code><\/pre>\n<p>Servislerde beklenen durum <code>active (running)<\/code> ifadesidir; toplant\u0131 trafi\u011finin \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 kan\u0131tlamaz. <code>journalctl<\/code> komutu mevcut a\u00e7\u0131l\u0131\u015fa ait ilgili servis g\u00fcnl\u00fcklerinin son 100 kayd\u0131n\u0131 g\u00f6sterir. Hata varsa yeniden ba\u015flatmadan \u00f6nce kayd\u0131 inceleyin. Son komut sistemdeki paket envanterini s\u00fcr\u00fcm, mimari ve durum bilgisiyle saklar; <code>ii<\/code> kurulu paketleri belirtir. Sonraki b\u00f6l\u00fcmlerde ayn\u0131 paket k\u00fcmesini esas almak i\u00e7in <code>\/var\/backups\/jitsi\/package-versions.txt<\/code> dosyas\u0131n\u0131 koruyun.<\/p>\n<h2 id=\"gecerli-https-yetmez-medya-erisimini-de-dogrulayin\">Ge\u00e7erli HTTPS yetmez: medya eri\u015fimini de do\u011frulay\u0131n<\/h2>\n<p>Toplant\u0131 sayfas\u0131 a\u00e7\u0131l\u0131rken ses ve g\u00f6r\u00fcnt\u00fc gelmeyebilir. Kilit simgesi yetmez. HTTPS eri\u015fimi, Jitsi Videobridge 2 \u00fczerinden medya ak\u0131\u015f\u0131n\u0131 do\u011frulamaz. Bu varsay\u0131msal Ubuntu Server 24.04 LTS laboratuvar\u0131nda iki yolu ayr\u0131 de\u011ferlendirin. <code>meet.example.com<\/code> ve <code>203.0.113.10<\/code> ayr\u0131lm\u0131\u015f belgeleme de\u011ferleridir; ger\u00e7ek DNS veya sertifika do\u011frulamas\u0131nda kullan\u0131lamaz. \u0130\u015flemden \u00f6nce bunlar\u0131 kontrol\u00fcn\u00fczdeki alan ad\u0131 ve do\u011frudan atanm\u0131\u015f genel IPv4 adresiyle de\u011fi\u015ftirin. IPv6 yap\u0131land\u0131rmay\u0131n; AAAA kayd\u0131 yay\u0131mlamay\u0131n.<\/p>\n<p>Let&#8217;s Encrypt&#8217;in do\u011frulama y\u00f6ntemleri belgesine g\u00f6re HTTP-01 do\u011frulamas\u0131 TCP 80 \u00fczerinden yap\u0131l\u0131r. Alan ad\u0131n\u0131n A kayd\u0131 sunucunuzu g\u00f6stermeli; UFW ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131 do\u011frulama iste\u011fine izin vermelidir. Yaln\u0131zca TCP 443 a\u00e7\u0131lmas\u0131 yeterli de\u011fildir. \u00d6nce da\u011f\u0131t\u0131m paketinin sertifika beti\u011finin varl\u0131\u011f\u0131n\u0131 ve g\u00fcncel kullan\u0131m\u0131n\u0131 kontrol edin:<\/p>\n<pre><code>test -r \/usr\/share\/jitsi-meet\/scripts\/install-letsencrypt-cert.sh &amp;&amp; \\\n  less \/usr\/share\/jitsi-meet\/scripts\/install-letsencrypt-cert.sh\n<\/code><\/pre>\n<p>Dosya yoksa durun; internetten rastgele bir kopyas\u0131n\u0131 indirmeyin. Kurulumda kaydedilen paket s\u00fcr\u00fcmleriyle e\u015fle\u015fen talimatlara d\u00f6n\u00fcn. Dosya varsa kullan\u0131m a\u00e7\u0131klamalar\u0131n\u0131, ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 ve etkile\u015fimli sorular\u0131n\u0131 okuyun. Kurulu s\u00fcr\u00fcm bu \u00e7a\u011fr\u0131y\u0131 destekliyorsa sertifika edinimini ba\u015flat\u0131n:<\/p>\n<pre><code>sudo bash \/usr\/share\/jitsi-meet\/scripts\/install-letsencrypt-cert.sh\n<\/code><\/pre>\n<p>Betik ba\u015far\u0131yla tamamland\u0131ktan sonra a\u015fa\u011f\u0131daki isteme ger\u00e7ek toplant\u0131 alan ad\u0131n\u0131 girin. <code>grep<\/code>, olu\u015fturulan Nginx site dosyas\u0131n\u0131 bulmaya yard\u0131mc\u0131 olur; birden fazla e\u015fle\u015fmede <code>server_name<\/code> sat\u0131rlar\u0131n\u0131 inceleyin. Dosyan\u0131n bulunmas\u0131 etkin oldu\u011funu kan\u0131tlamaz; <code>nginx -T<\/code> \u00e7\u0131kt\u0131s\u0131nda ayn\u0131 sunucu blo\u011funun y\u00fcklendi\u011fini do\u011frulay\u0131n.<\/p>\n<pre><code>read -r -p 'Ger\u00e7ek toplant\u0131 alan ad\u0131n\u0131z: ' MEET_DOMAIN\nsudo grep -RlF -- \"$MEET_DOMAIN\" \/etc\/nginx\/sites-available\/\nsudo nginx -T\nsudo nginx -t &amp;&amp; sudo systemctl reload nginx\ncurl --head --show-error \"https:\/\/${MEET_DOMAIN}\/\"\n<\/code><\/pre>\n<p><code>nginx -t<\/code> i\u00e7in beklenen mesajlar <code>syntax is ok<\/code> ve <code>test is successful<\/code> ifadeleridir. <code>curl<\/code>, sertifika hatas\u0131 olmadan HTTP ba\u015fl\u0131klar\u0131n\u0131 d\u00f6nd\u00fcrmelidir; y\u00f6nlendirme varsa hedefini kontrol edin. <code>-k<\/code> kullanmay\u0131n. Bunlar yap\u0131lm\u0131\u015f test sonu\u00e7lar\u0131 de\u011fil, beklenen davran\u0131\u015flard\u0131r.<\/p>\n<pre><code>sudo ss -lunp 'sport = :10000'\nsudo less \/etc\/jitsi\/videobridge\/jvb.conf\nsudo journalctl -u jitsi-videobridge2 -n 100 --no-pager\n<\/code><\/pre>\n<p>UDP 10000 soketinin g\u00f6r\u00fcnmesi yaln\u0131zca yerel dinlemeyi g\u00f6sterir. Toplant\u0131 istemcileri i\u00e7in TCP 80\/443 ve UDP 10000 eri\u015fimini her iki g\u00fcvenlik duvar\u0131nda do\u011frulay\u0131n. Do\u011frudan genel IPv4 varsay\u0131m\u0131nda gereksiz NAT e\u015flemesi eklemeyin. Yanl\u0131\u015f medya adresi ilan\u0131, aray\u00fcz a\u00e7\u0131ld\u0131\u011f\u0131 h\u00e2lde ses ve g\u00f6r\u00fcnt\u00fcn\u00fcn gelmemesine yol a\u00e7abilir. <code>\/etc\/jitsi\/videobridge\/jvb.conf<\/code> i\u00e7indeki ICE ve adres e\u015fleme se\u00e7eneklerini kurulu s\u00fcr\u00fcm\u00fcn referans\u0131yla kar\u015f\u0131la\u015ft\u0131r\u0131n; eski yap\u0131land\u0131rma anahtarlar\u0131n\u0131 ta\u015f\u0131may\u0131n. K\u0131s\u0131tl\u0131 istemci a\u011flar\u0131 TURN gerektirebilir; temel kurulum her a\u011fda ba\u011flant\u0131 garantisi vermez. HTTPS&#8217;ten ba\u011f\u0131ms\u0131z olarak taray\u0131c\u0131n\u0131n WebRTC tan\u0131lama ekran\u0131nda se\u00e7ilen ICE aday \u00e7iftini ve ba\u011flant\u0131 durumunu inceleyin.<\/p>\n<div class=\"aiw-callout aiw-callout-warn\">\n<p class=\"aiw-callout-label\">Dikkat<\/p>\n<p>Ge\u00e7erli HTTPS sertifikas\u0131 yaln\u0131zca web katman\u0131n\u0131 do\u011frular; ses ve g\u00f6r\u00fcnt\u00fcn\u00fcn Videobridge&#039;e ula\u015fabildi\u011fini kan\u0131tlamaz. Do\u011frudan genel IPv4 atanm\u0131\u015f bu ortamda gereksiz NAT ayarlar\u0131 eklemeyin. UDP eri\u015fimini k\u0131s\u0131tlayan istemci a\u011flar\u0131 i\u00e7in TURN gerekebilir; temel kurulum her a\u011fdan ba\u011flant\u0131 garantisi vermez.<\/p>\n<\/div>\n<h2 id=\"oda-acmayi-kimlik-dogrulamayla-sinirlandirin\">Oda a\u00e7may\u0131 kimlik do\u011frulamayla s\u0131n\u0131rland\u0131r\u0131n<\/h2>\n<p>HTTPS ba\u011flant\u0131y\u0131 korur; sunucunuzda kimin toplant\u0131 ba\u015flatabilece\u011fine karar vermez. Jitsi Handbook&#8217;un secure domain d\u00fczeni, oda olu\u015fturmay\u0131 do\u011frulanm\u0131\u015f hesaplarla s\u0131n\u0131rlar; misafirler yetkili kullan\u0131c\u0131n\u0131n ba\u015flatt\u0131\u011f\u0131 toplant\u0131ya hesap a\u00e7madan kat\u0131labilir. Ayr\u0131m nettir. Oda olu\u015fturma yetkisi, kat\u0131l\u0131m onay\u0131 ve medya gizlili\u011fi farkl\u0131 kontrollerdir.<\/p>\n<p>Varsay\u0131msal Ubuntu Server 24.04 LTS laboratuvar\u0131nda, \u00f6nceki b\u00f6l\u00fcmlerde kaydetti\u011finiz Jitsi Meet 2.0 paket k\u00fcmesini koruyun. \u00d6nce a\u015fa\u011f\u0131daki \u00fc\u00e7 dosyay\u0131 yedekleyin. \u00d6rnekler tam dosya de\u011fildir; mevcut bile\u015fenleri, servis hesaplar\u0131n\u0131 ve di\u011fer ayarlar\u0131 silmeden ilgili alanlar\u0131 d\u00fczenleyin. Paket revizyonlar\u0131 de\u011fi\u015febildi\u011finden, mevcut yap\u0131land\u0131rmayla resm\u00ee k\u0131lavuzu kar\u015f\u0131la\u015ft\u0131r\u0131n.<\/p>\n<h3>\u00dc\u00e7 dosyada ayn\u0131 alan adlar\u0131<\/h3>\n<p><code>\/etc\/prosody\/conf.avail\/meet.example.com.cfg.lua<\/code> dosyas\u0131ndaki mevcut <code>VirtualHost \"meet.example.com\"<\/code> blo\u011funda kimlik do\u011frulama sat\u0131r\u0131n\u0131 de\u011fi\u015ftirin:<\/p>\n<pre><code>authentication = \"internal_hashed\"<\/code><\/pre>\n<p>Ayn\u0131 dosyada misafir blo\u011fu yoksa a\u015fa\u011f\u0131daki ayr\u0131 blo\u011fu ekleyin. Jitsi Handbook, misafirler i\u00e7in <code>jitsi-anonymous<\/code> y\u00f6ntemini g\u00f6sterir; ayn\u0131 alan\u0131 ikinci kez tan\u0131mlamay\u0131n:<\/p>\n<pre><code>VirtualHost \"guest.meet.example.com\"\n    authentication = \"jitsi-anonymous\"\n    c2s_require_encryption = false<\/code><\/pre>\n<p><code>guest.meet.example.com<\/code> burada mant\u0131ksal bir XMPP alan\u0131d\u0131r; ayr\u0131ca DNS kayd\u0131, Nginx sanal sunucusu veya sertifika gerektirmez. <code>c2s_require_encryption<\/code> sat\u0131r\u0131 taray\u0131c\u0131n\u0131n HTTPS ba\u011flant\u0131s\u0131n\u0131 kapatmaz. <code>meet.example.com<\/code> ayr\u0131lm\u0131\u015f belgeleme de\u011feridir; ger\u00e7ek kurulumda dosya yollar\u0131 dahil b\u00fct\u00fcn e\u015fle\u015fmeleri kontrol etti\u011finiz alan ad\u0131yla de\u011fi\u015ftirin.<\/p>\n<p><code>\/etc\/jitsi\/meet\/meet.example.com-config.js<\/code> dosyas\u0131nda mevcut <code>config<\/code> nesnesinin tan\u0131m\u0131 tamamland\u0131ktan sonra \u015fu atamay\u0131 ekleyin. Var olan <code>anonymousdomain<\/code> ayar\u0131n\u0131 da ayn\u0131 de\u011ferle uyumlu tutun:<\/p>\n<pre><code>config.hosts.anonymousdomain = 'guest.meet.example.com';<\/code><\/pre>\n<p><code>\/etc\/jitsi\/jicofo\/jicofo.conf<\/code> i\u00e7indeki mevcut <code>jicofo<\/code> blo\u011funa a\u015fa\u011f\u0131daki <code>authentication<\/code> b\u00f6l\u00fcm\u00fcn\u00fc birle\u015ftirin; ikinci bir d\u0131\u015f blok eklemeyin. K\u0131lavuzdaki XMPP do\u011frulamas\u0131nda <code>login-url<\/code>, hesaplar\u0131n bulundu\u011fu ana alan\u0131 g\u00f6sterir:<\/p>\n<pre><code>jicofo {\n    authentication {\n        enabled = true\n        type = XMPP\n        login-url = \"meet.example.com\"\n    }\n}<\/code><\/pre>\n<h3>Parolay\u0131 ge\u00e7mi\u015fe yazmadan hesap olu\u015fturun<\/h3>\n<p>Sudo yetkili normal kullan\u0131c\u0131n\u0131zla \u00e7al\u0131\u015ft\u0131raca\u011f\u0131n\u0131z <code>adduser<\/code>, parolay\u0131 etkile\u015fimli ister; parola komut arg\u00fcman\u0131na veya kabuk ge\u00e7mi\u015fine girmez. Ard\u0131ndan Prosody yap\u0131land\u0131rmas\u0131n\u0131 denetleyin:<\/p>\n<pre><code>sudo prosodyctl adduser moderator@meet.example.com\nsudo prosodyctl check config<\/code><\/pre>\n<p>Denetimde bildirilen hatalar\u0131 giderin; Jicofo ve JavaScript dosyalar\u0131n\u0131n bu komutla do\u011frulanmad\u0131\u011f\u0131n\u0131 dikkate al\u0131n. Yap\u0131land\u0131rmalar haz\u0131r oldu\u011funda servisleri yeniden ba\u015flat\u0131n; i\u015flem mevcut toplant\u0131lar\u0131 etkileyebilir:<\/p>\n<pre><code>sudo systemctl restart prosody jicofo &amp;&amp;\nsudo systemctl is-active prosody jicofo<\/code><\/pre>\n<p>\u0130ki <code>active<\/code> sat\u0131r\u0131 beklenir; bu, yetkilendirmenin do\u011fruland\u0131\u011f\u0131 anlam\u0131na gelmez. Lobi kat\u0131l\u0131m onay\u0131, toplant\u0131 parolas\u0131 ortak giri\u015f s\u0131rr\u0131, u\u00e7tan uca \u015fifreleme medya gizlili\u011fi sa\u011flar. Hi\u00e7biri oda olu\u015fturma yetkisinin yerine ge\u00e7mez. Oturumsuz taray\u0131c\u0131 yeni toplant\u0131y\u0131 ba\u015flatamamal\u0131; do\u011frulanm\u0131\u015f kullan\u0131c\u0131 ba\u015flatt\u0131ktan sonra misafir ayn\u0131 ba\u011flant\u0131yla kat\u0131labilmelidir.<\/p>\n<h2 id=\"uc-istemciyle-sinayin-kapasiteyi-olcerek-buyutun\">\u00dc\u00e7 istemciyle s\u0131nay\u0131n, kapasiteyi \u00f6l\u00e7erek b\u00fcy\u00fct\u00fcn<\/h2>\n<p>\u0130ki ki\u015finin birbirini duymas\u0131, Videobridge yolunun sa\u011fl\u0131kl\u0131 oldu\u011funu kan\u0131tlamaz. P2P etkinse medya do\u011frudan istemciler aras\u0131nda akabilir; k\u00f6pr\u00fcdeki eri\u015fim sorunu gizlenir. \u00dc\u00e7\u00fcnc\u00fcy\u00fc ekleyin. VPS Jitsi Meet kurulumu i\u00e7in kabul s\u0131namas\u0131n\u0131 en az \u00fc\u00e7 ayr\u0131 cihazla, ev interneti, mobil ba\u011flant\u0131 ve ba\u015fka bir sabit a\u011f \u00fczerinden y\u00fcr\u00fct\u00fcn.<\/p>\n<p>Varsay\u0131msal laboratuvardaki Ubuntu Server 24.04 LTS amd64 ve kaydedilmi\u015f Jitsi Meet 2.0 paket k\u00fcmesi de\u011fi\u015fmez. Ba\u015flang\u0131\u00e7taki 4 vCPU, 8 GiB RAM ve 40 GiB SSD kapasite garantisi de\u011fildir. \u00dc\u00e7 istemciyle i\u015flevleri do\u011frulars\u0131n\u0131z; kat\u0131l\u0131mc\u0131 s\u0131n\u0131r\u0131n\u0131 belirlemezsiniz.<\/p>\n<p>Yetkili kullan\u0131c\u0131yla oda a\u00e7\u0131p iki misafiri ekleyin. Jitsi Handbook&#8217;un secure domain belgesi, oda olu\u015fturmay\u0131 kimlik do\u011frulamayla s\u0131n\u0131rland\u0131r\u0131rken misafirlerin mevcut toplant\u0131ya kat\u0131labilmesini tarif eder. \u00d6zel taray\u0131c\u0131 oturumunda misafirin yeni oda ba\u015flatamad\u0131\u011f\u0131n\u0131 do\u011frulay\u0131n. Her cihazda kamera, mikrofon ve s\u0131rayla ekran payla\u015f\u0131m\u0131n\u0131 s\u0131nay\u0131n; birinin a\u011f\u0131n\u0131 k\u0131sa s\u00fcre kesip yeniden ba\u011flant\u0131s\u0131n\u0131 g\u00f6zleyin. Payla\u015f\u0131lan ekranda ki\u015fisel veri bulunmas\u0131n.<\/p>\n<pre><code>sudo ss -lunp 'sport = :10000'\nsudo journalctl -u jitsi-videobridge2 -u jicofo --since '10 minutes ago' --no-pager\nvmstat 1 5\nfree -h\niface=$(ip -4 route show default | awk '{print $5; exit}')\nif [ -n \"$iface\" ]; then\n    date -Is\n    ip -s link show dev \"$iface\"\n    sleep 10\n    date -Is\n    ip -s link show dev \"$iface\"\nfi<\/code><\/pre>\n<p><code>ss<\/code> \u00e7\u0131kt\u0131s\u0131nda UDP 10000 soketi ve s\u00fcre\u00e7 bilgisi beklenir; bu, d\u0131\u015f eri\u015fimin kan\u0131t\u0131 de\u011fildir. Medya akm\u0131yorsa UFW ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131n\u0131 birlikte inceleyin. <code>journalctl<\/code> ile k\u00f6pr\u00fc ba\u011flant\u0131s\u0131 ve oturum hatalar\u0131n\u0131 aray\u0131n. <code>vmstat<\/code> ilk veri sat\u0131r\u0131ndaki CPU de\u011ferleri a\u00e7\u0131l\u0131\u015ftan itibaren ortalamad\u0131r; sonraki \u00f6rneklerde CPU kullan\u0131m\u0131n\u0131, <code>st<\/code> de\u011ferini ve swap hareketini de\u011ferlendirin. <code>free<\/code> \u00e7\u0131kt\u0131s\u0131nda <code>available<\/code> belle\u011fi izleyin.<\/p>\n<p>\u0130ki TX bayt sayac\u0131 aras\u0131ndaki fark\u0131 ge\u00e7en saniyeye b\u00f6l\u00fcp 8 ile \u00e7arparak ortalama bit\/s hesaplay\u0131n; saya\u00e7 b\u00fct\u00fcn aray\u00fcz trafi\u011fini kapsar. Chromium&#8217;da <code>chrome:\/\/webrtc-internals<\/code>, Firefox&#8217;ta <code>about:webrtc<\/code> \u00fczerinden ba\u011flant\u0131 \u00e7iftini, paket kayb\u0131n\u0131 ve RTT&#8217;yi ayn\u0131 zaman aral\u0131\u011f\u0131nda kaydedin. RTT gidi\u015f-d\u00f6n\u00fc\u015f s\u00fcresidir, tek y\u00f6nl\u00fc gecikme de\u011fildir.<\/p>\n<p>A\u015fa\u011f\u0131daki bo\u015f \u015fablon \u00f6l\u00e7\u00fclm\u00fc\u015f sonu\u00e7 i\u00e7ermez. Her y\u00fck basama\u011f\u0131n\u0131 ayn\u0131 s\u00fcreyle \u00e7al\u0131\u015ft\u0131r\u0131n; \u00e7\u00f6z\u00fcn\u00fcrl\u00fck, kamera ve ekran payla\u015f\u0131m\u0131 ko\u015fullar\u0131n\u0131 kayda ge\u00e7irin.<\/p>\n<table>\n<thead>\n<tr>\n<th>Zaman \/ s\u00fcre<\/th>\n<th>\u0130stemci say\u0131s\u0131 \/ a\u011f \/ senaryo<\/th>\n<th>\u00c7\u00f6z\u00fcn\u00fcrl\u00fck \/ kamera \/ payla\u015f\u0131m<\/th>\n<th>CPU \/ available RAM<\/th>\n<th>TX bit\/s<\/th>\n<th>Paket kayb\u0131 \/ RTT<\/th>\n<th>G\u00f6zlem<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Uzun s\u00fcreli kar\u015f\u0131la\u015ft\u0131rmalar i\u00e7in <a href=\"https:\/\/www.vps.tc\/blog\/tr\/vpste-prometheus-grafana-kurulumu\/\">VPS&#8217;te Prometheus ve Grafana ile \u0130zleme<\/a> yakla\u015f\u0131m\u0131ndan yararlanabilirsiniz. S\u00fcrekli CPU bask\u0131s\u0131 veya bellek s\u0131k\u0131\u015fmas\u0131 kaynak art\u0131\u015f\u0131n\u0131; k\u00f6pr\u00fc ba\u015f\u0131na y\u00fck\u00fc da\u011f\u0131tma ihtiyac\u0131 ek Videobridge plan\u0131n\u0131 destekler. \u0130stemci a\u011f\u0131ndaki kay\u0131p, tek ba\u015f\u0131na sunucu b\u00fcy\u00fctme gerek\u00e7esi de\u011fildir. \u00c7\u0131k\u0131\u015f doygunsa RAM eklemek yerine en az 1 Gbit\/s olarak sunulan ba\u011flant\u0131n\u0131n ger\u00e7ek kullan\u0131labilir bant geni\u015fli\u011fini ve trafik kotas\u0131n\u0131 do\u011frulay\u0131n.<\/p>\n<div class=\"aiw-callout aiw-callout-field\">\n<p class=\"aiw-callout-label\">Sahadan not<\/p>\n<p>Varsay\u0131msal laboratuvar notu &#8211; ger\u00e7ekle\u015ftirilmi\u015f bir test veya saha olay\u0131 de\u011fildir: \u0130ki istemci P2P \u00fczerinden g\u00f6r\u00fc\u015febilirken UDP 10000 engeli, \u00fc\u00e7\u00fcnc\u00fc istemciyle Videobridge devreye girdi\u011finde g\u00f6r\u00fcn\u00fcr hale gelebilir. Bu senaryoda ss -lunp \u00e7\u0131kt\u0131s\u0131ndaki yerel dinleme bilgisini, jitsi-videobridge2 servis g\u00fcnl\u00fcklerini ve taray\u0131c\u0131 WebRTC istatistiklerini birlikte inceleyin; dinleyen bir soket d\u0131\u015far\u0131dan eri\u015filebilirlik kan\u0131t\u0131 de\u011fildir.<\/p>\n<\/div>\n<h2 id=\"yedek-ve-guncelleme-planini-ilk-toplantidan-once-tamamlayin\">Yedek ve g\u00fcncelleme plan\u0131n\u0131 ilk toplant\u0131dan \u00f6nce tamamlay\u0131n<\/h2>\n<p>Toplant\u0131n\u0131n a\u00e7\u0131lmas\u0131, sunucunun geri getirilebildi\u011fini g\u00f6stermez. Yedek beklemez. Varsay\u0131msal Ubuntu Server 24.04 LTS amd64 laboratuvar\u0131nda ilk davetten \u00f6nce sertifika yenilemesini, sunucu d\u0131\u015f\u0131 kopyay\u0131 ve geri y\u00fcklemeyi planlay\u0131n. Yerel <code>\/var\/backups\/jitsi\/<\/code> yaln\u0131zca haz\u0131rl\u0131k alan\u0131d\u0131r; ayn\u0131 VPS \u00fczerindeki kopya sunucu kayb\u0131na kar\u015f\u0131 koruma sa\u011flamaz.<\/p>\n<p>Sertifika istemcisini ve kurulumun olu\u015fturdu\u011fu g\u00f6revi bulun: <code>systemctl list-timers --all<\/code>, servis tan\u0131mlar\u0131, <code>\/etc\/crontab<\/code>, <code>\/etc\/cron.d\/<\/code>, periyodik cron dizinleri ve ilgili kullan\u0131c\u0131n\u0131n crontab kayd\u0131n\u0131 inceleyin. Zamanlay\u0131c\u0131 ad\u0131 varsaymay\u0131n. Son \u00e7al\u0131\u015fma g\u00fcnl\u00fc\u011f\u00fcn\u00fc, sertifikan\u0131n biti\u015f tarihini ve istemcinin destekledi\u011fi deneme yenilemesini denetleyin. Let&#8217;s Encrypt belgelerine g\u00f6re HTTP-01 do\u011frulamas\u0131 TCP 80 kullan\u0131r; UFW ve sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131 bu eri\u015fimi yenileme s\u0131ras\u0131nda da sa\u011flamal\u0131d\u0131r.<\/p>\n<p>Jitsi Handbook&#8217;un secure domain belgesi, Prosody \u00fczerinden kimlik do\u011frulama yap\u0131land\u0131rmas\u0131n\u0131 a\u00e7\u0131klar. Bu nedenle yap\u0131land\u0131rmalarla hesap verilerini birlikte koruyun: <code>\/etc\/jitsi\/<\/code>, <code>\/etc\/prosody\/<\/code>, <code>\/var\/lib\/prosody\/<\/code>, <code>\/etc\/nginx\/<\/code> ve sertifika istemcisinin durum dizini yede\u011fe girmelidir. Harici Prosody depolamas\u0131 kullan\u0131l\u0131yorsa ayr\u0131ca tutarl\u0131 veritaban\u0131 yede\u011fi gerekir.<\/p>\n<p>A\u015fa\u011f\u0131daki varsay\u0131msal \u00f6rnek BorgBackup 1.x, ba\u015flang\u0131\u00e7ta \u00e7al\u0131\u015fan d\u00f6rt servis ve sudo ba\u011flam\u0131nda do\u011frulanm\u0131\u015f SSH eri\u015fimi gerektirir. Yeni, ayr\u0131 sunucudaki depo adresini ve ger\u00e7ek sertifika durum dizinini sorar. Mevcut depoda <code>borg init<\/code> sat\u0131r\u0131n\u0131 kald\u0131r\u0131n. Bak\u0131m penceresinde yap\u0131land\u0131rma de\u011fi\u015fikliklerini dondurun, belirledi\u011finiz yenileme g\u00f6revini duraklat\u0131n ve \u00e7al\u0131\u015fan yenilemenin bitmesini bekleyin. Komutlar hizmet kesintisi olu\u015fturur.<\/p>\n<pre><code>sudo bash &lt;&lt;'BASH'\nset -euo pipefail\numask 077\nread -r -p 'Yeni SSH Borg deposunun adresi: ' BORG_REPO &lt; \/dev\/tty\nread -r -p 'Sertifika istemcisinin mutlak durum dizini: ' CERT_STATE &lt; \/dev\/tty\n[[ \"$BORG_REPO\" == ssh:\/\/* ]]\n[[ \"$CERT_STATE\" == \/* &amp;&amp; -d \"$CERT_STATE\" ]]\nexport BORG_REPO\ninstall -d -m 700 \/var\/backups\/jitsi\ndpkg-query -W -f='${binary:Package}\\t${Version}\\n' &gt; \/var\/backups\/jitsi\/packages.tsv\napt-cache policy jitsi-meet jicofo jitsi-videobridge2 prosody nginx &gt; \/var\/backups\/jitsi\/apt-policy.txt\nborg init --encryption=repokey-blake2\ntrap 'systemctl start prosody jicofo jitsi-videobridge2 nginx' EXIT\nsystemctl stop nginx jicofo jitsi-videobridge2 prosody\nborg create --stats \"::jitsi-$(date -u +%Y%m%dT%H%M%SZ)\" \\\n  \/etc\/jitsi \/etc\/prosody \/var\/lib\/prosody \/etc\/nginx \\\n  \"$CERT_STATE\" \/var\/backups\/jitsi\nBASH<\/code><\/pre>\n<p>Borg \u015fifreleme parolas\u0131 ister; ba\u015far\u0131l\u0131 olu\u015fturma ar\u015fiv istatistiklerini g\u00f6sterir. Uyar\u0131lar\u0131 ve \u00e7\u0131k\u0131\u015f kodunu inceleyin, servislerin durumunu do\u011frulay\u0131n; yenileme g\u00f6revini yeniden etkinle\u015ftirin. Parolay\u0131 ve <code>borg key export<\/code> ile al\u0131nan anahtar yede\u011fini depodan ayr\u0131 koruyun. \u015eu kontrol\u00fc yaln\u0131zca a\u011f eri\u015fimi s\u0131n\u0131rland\u0131r\u0131lm\u0131\u015f geri y\u00fckleme VM&#8217;inde \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>sudo bash &lt;&lt;'BASH'\nset -euo pipefail\numask 077\nread -r -p 'SSH Borg deposunun adresi: ' BORG_REPO &lt; \/dev\/tty\n[[ \"$BORG_REPO\" == ssh:\/\/* ]]\nexport BORG_REPO\nborg check --verify-data\nborg list\nread -r -p 'Geri y\u00fcklenecek ar\u015fivin ad\u0131: ' ARSIV &lt; \/dev\/tty\n[[ -n \"$ARSIV\" ]]\nRESTORE_DIR=$(mktemp -d \/var\/tmp\/jitsi-restore.XXXXXX)\ncd \"$RESTORE_DIR\"\nborg extract \"::$ARSIV\"\nprintf 'Dosyalar\u0131n \u00e7\u0131kar\u0131ld\u0131\u011f\u0131 dizin: %s\\n' \"$RESTORE_DIR\"\nBASH<\/code><\/pre>\n<p><code>borg list<\/code> ar\u015fiv adlar\u0131n\u0131 g\u00f6sterir; \u00e7\u0131karma genellikle sessizdir. Sahiplikleri, \u00f6zel anahtar izinlerini ve Prosody hesaplar\u0131n\u0131 inceleyin; dosyalar\u0131 \u00e7\u0131karmak hizmetin kurtar\u0131ld\u0131\u011f\u0131n\u0131 kan\u0131tlamaz. G\u00fcncellemeleri \u00f6nce izole laboratuvar kopyas\u0131nda do\u011frulay\u0131n. Jitsi Meet 2.0 ailesinin tam revizyonlar\u0131n\u0131 manifestte saklay\u0131n; \u00f6nceki paketleri veya geri d\u00f6n\u00fc\u015f imaj\u0131n\u0131 haz\u0131r tutun. Otomatik g\u00fcncellemeleri bak\u0131m plan\u0131yla uyumland\u0131r\u0131n. Bak\u0131m sonras\u0131 \u00fc\u00e7 istemciyle yetkili oda a\u00e7may\u0131, yetkisiz olu\u015fturman\u0131n engellenmesini ve \u00e7ift y\u00f6nl\u00fc ses\/g\u00f6r\u00fcnt\u00fcy\u00fc do\u011frulamadan toplant\u0131 kabul etmeyin.<\/p>\n<h2 id=\"ilk-toplantidan-once-kontrol-edin\">\u0130lk Toplant\u0131dan \u00d6nce Kontrol Edin<\/h2>\n<ul class=\"aiw-checklist\">\n<li>Temiz Ubuntu 24.04 LTS amd64 ortam\u0131n\u0131, kaynaklar\u0131, trafik kotas\u0131n\u0131 ve sa\u011flay\u0131c\u0131 konsoluna eri\u015fiminizi do\u011frulay\u0131n.<\/li>\n<li>\u00d6rnek alan ad\u0131 ve IP adreslerini ger\u00e7ek de\u011ferlerinizle de\u011fi\u015ftirin; A kayd\u0131n\u0131 kontrol edin ve kullan\u0131lmayan AAAA kayd\u0131n\u0131 kald\u0131r\u0131n.<\/li>\n<li>SSH eri\u015fimini ger\u00e7ek y\u00f6netim adresinizle s\u0131n\u0131rland\u0131r\u0131n; TCP 80\/443 ve UDP 10000 kurallar\u0131n\u0131 hem UFW&#039;de hem sa\u011flay\u0131c\u0131 taraf\u0131nda do\u011frulay\u0131n.<\/li>\n<li>Resmi depo anahtar\u0131n\u0131 ayr\u0131 keyring ve signed-by tan\u0131m\u0131yla kullan\u0131n; paket adaylar\u0131n\u0131 ve kurulu s\u00fcr\u00fcmleri kaydedin.<\/li>\n<li>HTTPS sertifikas\u0131n\u0131, nginx -t denetimini ve kurulumun ger\u00e7ekten olu\u015fturdu\u011fu sertifika yenileme mekanizmas\u0131n\u0131 kontrol edin.<\/li>\n<li>Yetkisiz oda olu\u015fturman\u0131n engellendi\u011fini ve misafir kat\u0131l\u0131m\u0131n\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 farkl\u0131 a\u011flardaki en az \u00fc\u00e7 istemciyle s\u0131nay\u0131n.<\/li>\n<li>Yap\u0131land\u0131rmalar\u0131, Prosody durum verilerini ve sertifika istemcisi durumunu sunucu d\u0131\u015f\u0131nda \u015fifreli yedekleyin; izole ortamda geri y\u00fcklemeyi do\u011frulay\u0131n.<\/li>\n<\/ul>\n<div class=\"aiw-cta\">\n<p>VPS se\u00e7meden \u00f6nce e\u015fzamanl\u0131 oda say\u0131n\u0131z\u0131, beklenen a\u00e7\u0131k kamera say\u0131s\u0131n\u0131 ve trafik kotan\u0131z\u0131 not edin. \u0130lk ger\u00e7ek toplant\u0131y\u0131 planlamadan farkl\u0131 a\u011flardaki \u00fc\u00e7 istemciyle medya eri\u015fimini ve yetkisiz oda olu\u015fturman\u0131n engellendi\u011fini do\u011frulay\u0131n.<\/p>\n<p class=\"aiw-cta-action\"><a href=\"https:\/\/www.vps.tc\/tr\/vps\">VPS paketlerini inceleyin<\/a><\/p>\n<\/div>\n<h2 id=\"sik-sorulan-sorular\">S\u0131k Sorulan Sorular<\/h2>\n<div class=\"aiw-faq\">\n<details class=\"aiw-faq-item\" open>\n<summary>Jitsi Meet i\u00e7in ka\u00e7 GB RAM ve ka\u00e7 vCPU gerekir?<\/summary>\n<p>Bu varsay\u0131msal kurulumda ba\u015flang\u0131\u00e7 noktas\u0131 4 vCPU, 8 GiB RAM ve 40 GiB SSD&#039;dir; bunlar asgari gereksinim veya kat\u0131l\u0131mc\u0131 kapasitesi garantisi de\u011fildir. E\u015fzamanl\u0131 oda say\u0131s\u0131, a\u00e7\u0131k kameralar, \u00e7\u00f6z\u00fcn\u00fcrl\u00fck ve \u00e7\u0131k\u0131\u015f trafi\u011fi ihtiyac\u0131 de\u011fi\u015ftirir. Kaynak se\u00e7imini ger\u00e7ek toplant\u0131 ko\u015fullar\u0131nda CPU, bellek ve a\u011f \u00f6l\u00e7\u00fcmleriyle do\u011frulay\u0131n; Jibri kay\u0131t y\u00fck\u00fcn\u00fc bu hesaba dahil etmeyin.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>Jitsi Meet kurulumu i\u00e7in hangi portlar a\u00e7\u0131lmal\u0131?<\/summary>\n<p>Bu ortamda web eri\u015fimi i\u00e7in TCP 80 ve 443, Videobridge medyas\u0131 i\u00e7in UDP 10000 a\u00e7\u0131l\u0131r. SSH TCP 22 yaln\u0131zca ger\u00e7ek y\u00f6netim kaynak adresinizden eri\u015filebilir olmal\u0131d\u0131r. Kurallar\u0131 hem UFW hem sa\u011flay\u0131c\u0131 g\u00fcvenlik duvar\u0131nda uygulay\u0131n. TURN eklenecekse kullan\u0131lan ta\u015f\u0131ma protokol\u00fc ve relay port aral\u0131\u011f\u0131 i\u00e7in ayr\u0131ca eri\u015fim plan\u0131 haz\u0131rlay\u0131n.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>Jitsi Meet i\u00e7in alan ad\u0131 ve SSL sertifikas\u0131 \u015fart m\u0131?<\/summary>\n<p>Bu kurulum, kontrol etti\u011finiz bir alan ad\u0131 ve taray\u0131c\u0131n\u0131n g\u00fcvendi\u011fi HTTPS sertifikas\u0131n\u0131 esas al\u0131r. Taray\u0131c\u0131lar\u0131n kamera ve mikrofon eri\u015fimi g\u00fcvenli ba\u011flam gerektirir; yaln\u0131zca IP \u00fczerinden veya g\u00fcvenilmeyen sertifikayla kullan\u0131m uygun bir i\u015fletim hedefi de\u011fildir. Let&#039;s Encrypt HTTP-01 do\u011frulamas\u0131 TCP 80 eri\u015fimi ister. meet.example.com ve 203.0.113.10 ayr\u0131lm\u0131\u015f \u00f6rneklerdir, ger\u00e7ek do\u011frulamada kullan\u0131lamaz.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>Jitsi Meet&#039;te herkesin yeni toplant\u0131 a\u00e7mas\u0131 nas\u0131l engellenir?<\/summary>\n<p>Secure domain d\u00fczeniyle oda olu\u015fturmay\u0131 do\u011frulanm\u0131\u015f kullan\u0131c\u0131lara ay\u0131rabilirsiniz; misafirler mevcut toplant\u0131lara kat\u0131labilir. Prosody, Jicofo ve Jitsi Meet istemci yap\u0131land\u0131rmalar\u0131n\u0131n kurulu paket s\u00fcr\u00fcmleriyle uyumlu olmas\u0131 gerekir. Bu d\u00fczende guest.meet.example.com mant\u0131ksal XMPP alan\u0131d\u0131r. Lobi ve toplant\u0131 parolas\u0131 kat\u0131l\u0131m kontrolleridir; oda olu\u015fturma yetkisinin veya u\u00e7tan uca \u015fifrelemenin yerine ge\u00e7mez.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>\u0130ki ki\u015fi g\u00f6r\u00fc\u015febiliyor ama \u00fc\u00e7\u00fcnc\u00fc ki\u015fi gelince neden ses kesiliyor?<\/summary>\n<p>\u0130ki ki\u015filik toplant\u0131 P2P \u00fczerinden \u00e7al\u0131\u015farak Videobridge eri\u015fim sorununu gizleyebilir. \u00dc\u00e7\u00fcnc\u00fc kat\u0131l\u0131mc\u0131yla medya yolu de\u011fi\u015fti\u011finde UDP 10000 engeli veya yanl\u0131\u015f ilan edilen medya adresi belirginle\u015febilir; ancak tek olas\u0131 neden bunlar de\u011fildir. Videobridge g\u00fcnl\u00fcklerini, g\u00fcvenlik duvarlar\u0131n\u0131 ve WebRTC istatistiklerini kar\u015f\u0131la\u015ft\u0131r\u0131n. Do\u011frudan genel IPv4 kullanan sunucuya te\u015fhis koymadan NAT ayarlar\u0131 eklemeyin.<\/p>\n<\/details>\n<details class=\"aiw-faq-item\">\n<summary>Jitsi Meet sunucusunda hangi dosyalar yedeklenmeli?<\/summary>\n<p>Yedek plan\u0131 \/etc\/jitsi\/, \/etc\/prosody\/, \/var\/lib\/prosody\/, \/etc\/nginx\/ ve kullan\u0131lan sertifika istemcisinin durum dizinini kapsamal\u0131d\u0131r. Kimlik bilgilerini ve \u00f6zel anahtarlar\u0131 koruyun; \u00e7al\u0131\u015fan servislerin durum verileri i\u00e7in tutarl\u0131 kopya y\u00f6ntemini belirleyin. Yerel \/var\/backups\/jitsi\/ dizini tek ba\u015f\u0131na yeterli de\u011fildir. Sunucu d\u0131\u015f\u0131 \u015fifreli kopyay\u0131 izole ortamda geri y\u00fckleyerek hesaplar\u0131, yap\u0131land\u0131rmay\u0131 ve toplant\u0131 i\u015flevlerini do\u011frulay\u0131n.<\/p>\n<\/details>\n<\/div>\n<h2 id=\"kaynaklar\">Kaynaklar<\/h2>\n<ul class=\"aiw-sources\">\n<li><a href=\"https:\/\/github.com\/\" target=\"_blank\" rel=\"noopener\">Jitsi Handbook &#8211; Debian ve Ubuntu i\u00e7in resmi kurulum ad\u0131mlar\u0131<\/a> \u2014 github.com<\/li>\n<li><a href=\"https:\/\/github.com\/jitsi\/handbook\/blob\/master\/docs\/devops-guide\/secure-domain.md\" target=\"_blank\" rel=\"noopener\">Jitsi Handbook &#8211; Secure domain ile oda olu\u015fturmay\u0131 s\u0131n\u0131rland\u0131rma<\/a> \u2014 github.com<\/li>\n<li><a href=\"https:\/\/letsencrypt.org\/docs\/challenge-types\/\" target=\"_blank\" rel=\"noopener\">Let&#039;s Encrypt &#8211; HTTP-01 dahil alan ad\u0131 do\u011frulama y\u00f6ntemleri<\/a> \u2014 letsencrypt.org<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Toplant\u0131 sayfas\u0131n\u0131n a\u00e7\u0131lmas\u0131, ses ve g\u00f6r\u00fcnt\u00fcn\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 kan\u0131tlamaz. Ubuntu 24.04 \u00fczerinde Jitsi Meet kurulumunu DNS, medya eri\u015fimi, oda olu\u015fturma yetkisi ve \u00fc\u00e7 istemcili do\u011frulama \u00fczerinden planlay\u0131n.<\/p>\n","protected":false},"author":2,"featured_media":1166,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[723],"tags":[],"class_list":["post-1168","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nasil-yapilir"],"lang":"tr","translations":{"tr":1168,"en":1169},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1168","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/comments?post=1168"}],"version-history":[{"count":1,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1168\/revisions"}],"predecessor-version":[{"id":1170,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/posts\/1168\/revisions\/1170"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media\/1166"}],"wp:attachment":[{"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/media?parent=1168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/categories?post=1168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vps.tc\/blog\/wp-json\/wp\/v2\/tags?post=1168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}