Skip to content

Mastodon

Bu makalede

Bilgi

Mastodon - merkezi olmayan ve açık kaynaklı ücretsiz sosyal platform. Ticari platformların aksine, Mastodon herhangi bir tek kuruluş tarafından kontrol edilmiyor.

Mastodon. Ana Özellikler

  • Mastodon kullanıcılarına herhangi bir bağlantılı sunucudan diğer kullanıcılara abone olmalarını ve iletişim kurmalarını sağlar;
  • Platform, kullanıcıların ilginç içerik keşfetmelerine yardımcı olmak için herkese açık gönderi feed'leri sunar. Yerel feed, sunucunuzdaki gönderileri gösterirken, federasyonlu feed, sunucunuzdan bilinen ve sizin sunucunuzun tanıdığı tüm abone kullanıcılarınızın tüm halka açık gönderilerini görüntüler;
  • Kullanıcılar, doğrudan feed'de veya gelişmiş gönderi görünümünde yorum yaparak, paylaşarak, favorilere ekleyerek, favoriye ekleyerek veya ek bir menü kullanarak gönderilerle etkileşime geçebilir;
  • Mastodon, profiliniz ve gönderilerinizle ilgili çeşitli etkileşim olayları için bildirimler gönderir. Bu bildirimler türlere göre filtrelenebilir;
  • Bir kullanıcıya abone olmak için sadece profillerindeki Takip Et düğmesine tıklamanız yeterlidir. Ayrıca abonneliğinizden gelen yeni gönderiler için bildirim etkinleştirebilirsiniz; Arama fonksiyonu, kullanıcıları, hashtag'leri ve gönderileri bir bağlantı aracılığıyla bulmanıza olanak sağlar. Tam metin arama kurulu olduğunda, kendi gönderilerinizi ve favori listenizi aramalısınız;
  • Mastodon'da özel gönderiler yalnızca abone kişilere görünür. Bunlar ayrı bir diyalog sütununda gösterilir;
  • Abonelik listeleri kullanılarak yalnızca gönderi feed'ini görüntüleyebilirsiniz.

Çalıştırma Özellikleri

ID Uyumlu OS VM BM VGPU GPU Min CPU (Çekirdekler) Min RAM (GB) Min HDD/SSD (GB) Aktif
59 Ubuntu 22.04 + + + + 2 2 - Evet
  • Kurulu yazılım

    Yazılım Lisans
    Mastodon AGPLv3
    Nginx Özel
    Postgres Postgres SQL
    Certbot Apache 2
    Redis BSD-3-Clause
  • Önerilen sistem gereksinimleri:

    • 4 çekirdekli 64-bit işlemci;
    • 8 GB RAM;
    • 80 GB SSD depolama alanının kullanılması.

Web arayüzüne erişmek için bağlantı: https://mastodon{Server_ID_from_Invapi}.hostkey.in

Mastodon'u çalıştırma sonrası başlangıç yapma

Sunucunuzun hazır olduğunda, kayıt sırasında belirtilen e-posta adresine bir bildirim gönderilir. Bu, VPS'nin IP adresi ve bağlantı için kullanıcı adı ve şifreyi içerir. Şirketimiz müşterileri sunucuda donanım yönetir ve API kontrol paneli - Invapi.

Yetkilendirme verilerini, sunucu kontrol panelindeki Info >> Tags sekmesinden veya e-postada bulabilirsiniz.

  • Mastodon paneli web arayüzüne erişim bağlantısı: :fontawesome-solid-tags*webpanel* etiketinde;
  • Kullanıcı adı ve Şifre: Sunucu kullanımına başlamasının ardından gelen e-posta adresinizde bulunur.

Değişiklikleri yapılandırma

Mastodon yapılandırmasını komut satırı üzerinden değiştirmek için tootctl ve rails yardımcı programlarını kullanın:

  • Hesap ayarları, oluşturma, değiştirme, izinler atayın vb.
  • SMTP sunucu ayarları;
  • Kullanıcı kayıt ayarları.

Bilgi

Daha fazla bilgi için geliştirici belgelerine başvurun.

Örnek Kullanım

  1. Sunucuya SSH ile bağlan:

    ssh root@<sunucu_ip>
    
  2. Mastodon web uygulaması bulunan konteynerin içine gir. mastodon_web_1 konteynerini bulun ve bağlan:

    docker exec -it mastodon_web_1 bash
    
  3. Yeni bir kullanıcı oluşturmak için tootctl accounts create komutunu kullan. Parametreler olarak, kullanıcı adı, e-posta ve hesabı onaylamak için --confirmed bayrağını belirtin.

    RAILS_ENV=production bin/tootctl accounts create yeni_kullanıcı_adı --email kullanıcı@örnek.com --confirmed
    

    yeni_kullanıcı_adı'nı istenen kullanıcı adı ile ve kullanıcı@örnek.com'ı kullanıcının gerçek e-posta adresiyle değiştirin.

    Bu komutu çalıştırdıktan sonra kullanıcı oluşturulur. Ekranda görüntülenen şifreyi saklamayı unutmayın:

  4. Yönetici Hakları Vermek

    Kullanıcı oluşturulduktan sonra, daha fazla izin değişikliği için veritabanında bulmanız gerekir. rails console komutunu kullanın.

    RAILS_ENV=production bin/rails console
    

    Konsol içinde, e-posta veya kullanıcı adı ile kullanıcılara arama yapmak için komutu çalıştırın:

    user = User.find_by(email: 'kullanıcı@örnek.com')  # veya find_by(username: 'yeni_kullanıcı_adı') kullanabilirsiniz
    

    Kullanıcı bulunduğunda, rollerini atayarak yönetici rolünü onlara vermeniz gerekir. Aşağıdaki komutu kullanın:

    user.update(role: UserRole.find_by(name: 'Admin'))
    

    Bu komut seçilen kullanıcıya "Admin" rolünü ayarlar.

    Rolün başarıyla değiştirilip değiştirilmediğini doğrulamak için şu komutu çalıştırın:

    user.reload
    user.role
    

    Kullanıcının mevcut rolü ("Admin") ekranınıza görüntülenir.

  5. Rails Konsolundan Çıkış Yapma:

    exit
    
  6. Mastodon Konfigürasyonunu Değiştirme

    Posta sunucusunu değiştirmek gibi yapılandırma değişiklikleri yapmak istiyorsanız, aşağıdakileri yapın:

    • Konfigürasyon dosyasını açın:

      nano /opt/mastodon/.env.production
      
    • Değişiklikler yaptıktan sonra, statik dosyaları güncellemek için komutları çalıştırın:

      RAILS_ENV=production bundle exec rails assets:clean
      RAILS_ENV=production bundle exec rails assets:clobber
      RAILS_ENV=production bundle exec rails assets:precompile
      
    • Konteynerden çıkış yapın:

      exit
      
  7. Mastodon Konteynerlerini Yeniden Başlatma

    Yeni ayarları uygulamak için, Mastodon konteynerlerini bir yönetici olarak yeniden başlatın:

    ```bash
    docker-compose -f /opt/mastodon/docker-compose.yml restart
    ```
    

Not

  1. Docker Konteynerleri Kontrol Etme: Belirli konteynerlerin çalışıp çalışmadığını bilmiyorsanız, şu komutu çalıştırın:

    docker ps
    

    mastodon_web_1, mastodon_db_1 vb. Mastodon konteynerlerinin çalıştığından emin olun.

  2. Hata Takibi: Konteynerdeki komutlar hatalar üretirse, hata ayıklaması için --trace parametresini kullanın:

    RAILS_ENV=production bundle exec rails assets:precompile --trace
    
  3. Erişim Hakları: Dosyalara erişim hataları (örneğin, Errno::EACCES) yaşıyorsanız, /opt/mastodon dizindeki dosyaların doğru sahibi ve izinlere sahip olduğundan emin olun:

    chown -R mastodon:mastodon /opt/mastodon
    chmod -R 755 /opt/mastodon
    
    • Bu komutları çalıştırdıktan sonra, Mastodon yeni ayarları kabul eder.

Bilgi

Daha detaylı yapılandırma ayarları hakkında bilgi için lütfen geliştirici belgelerine bakın.

E-posta sunucusuyla çalışma

Bu yapılandırmada, e-posta sunucusu bir Docker konteynerinde kurulmuştur. Mastodon'u kullanmak için bir SMTP sunucusuna ihtiyacınız vardır. Mailserver ayarlarını değiştirmek için şu komutu kullanarak konteyner ortamına erişin:

docker exec -it mailserver bash

Ortamı çıkmak için Ctrl+D basın veya exit yazın.

Bilgi

Mail sunucusuyla nasıl çalışılacağı hakkında daha fazla bilgi için buraya bakın.

Konteyner içindeki setup komutu kullanılarak e-posta adresleri ve yönlendirme yapılandırılabilir:

docker exec -it $mailserver bash
setup alias add [email protected] [email protected]
exit

Yukarıdaki komutlar çalıştırıldıktan sonra [email protected] adresine gönderilen e-postalar [email protected] adresine yönlendirilecektir.

Bilgi

setup.sh'nin nasıl kullanılacağı hakkında daha fazla bilgi için buraya bakın.

Mastodon sunucusunun alan adını değiştirme

Alan adını değiştirmek için şu adımları izleyin:

  1. Kendi alan adınızı kaydedin, örneğin mastodon.mydomain.com.

  2. Bu alan için DNS kayıtlarını yapılandırın:

    • A-kaydı Mastodon sunucusunun IP adresine yönlendirmesi gerektiği şekilde ayarlayın;
    • E-posta sunucusuna yönlendirme yapan MX kaydı ayarlayın.
  3. Mastodon sunucusuna SSH'ye bağlanın ve Nginx yapılandırma dosyasını düzenleyin:

    /etc/nginx/sites-available/mastodon
    
  4. server_name parametresini yeni alan adıyla güncelleyin;

  5. Nginx'i yeniden başlatın:

    sudo systemctl restart nginx
    
  6. Mastodon yönetim ayarlarında alanı yeni alana güncelleyin ve değişiklikleri kaydedin;

  7. E-posta bildirimleri yapılandırın;

  8. notifications@new_domain_name adlı bir e-posta hesabı oluşturun. new_domain_name mail sunucusunun alan adıyla eşleşmelidir.

  9. Mail sunucusu konteynerine erişmek için aşağıdaki komutu kullanarak giriş yapın:

    docker exec -it $mailserver bash
    
  10. Yeni bir hesap ekleyin:

    setup email add notifications@(new_domain_name) '(password)'
    
    • Lütfen bu hesap için bir password belirtin.
    setup config dkim keysize 2048 domain (new_domain_name)
    
  11. Konteyneri terk edin:

    exit
    

    Yukarıdaki komutları çalıştırdıktan sonra /root/mailserver/docker-data/dms/config/opendkim/keys/(new domain name)/mail.txt dosyası, alan adına ait e-posta sunucusunun doğru işletilmesini sağlamak için DNS'te _domainkey türünde bir kayıt oluşturmak için gereken bilgileri içerecektir. Bu kayıt olmadan, bu alandan gönderilen e-postalar, Gmail gibi hizmetler tarafından geçersiz olarak algılanabilir ve engellenebilir.

  12. Invapi'de IP adresi ayarlarında PTR kaydı ekleyin.

    Bilgi

    Invapi'de PTR kayıtları nasıl yapılandırılacağı hakkında daha fazla bilgi için buraya bakın.

  13. mastodon kullanıcısının ev dizinindeki .env.production dosyasını düzenleyin:

    • LOCAL_DOMAIN parametresini yeni alan adıyla güncelleyin;
    • SMTP ayarlarını, dovecot-master'dan gelen giriş ve şifreyi belirterek güncelleyin.
  14. Kaynakları yeniden derileyin:

    su - mastodon
    cd /home/mastodon/live/
    RAILS_ENV=production bundle exec rails assets:clean
    RAILS_ENV=production bundle exec rails assets:precompile
    
  15. Mastodon'u yeniden başlatın:

    sudo systemctl restart mastodon-*.service   
    

Mail sunucusunun alan adını değiştirme

Mail sunucusunun alan adını değiştirmek için aşağıdaki adımları izleyin:

  1. docker stop $(docker ps -q) komutu ile şu anda çalışan tüm Docker konteynerlerini durdurun.
  2. docker rm $(docker ps -q) komutu ile durağan olan tüm Docker konteynerlerini kaldırın.
  3. docker-compose.yml dosyasındaki hostname parametresini bulup, aşağıdaki formattaki satırı aratın:

    hostname: mastodon*.hostkey.in
    
  4. hostname parametresinin değerini istediğiniz alan adı ile değiştirin. Örnek olarak 'mydomain.com':

    hostname: mydomain.com
    
  5. docker-compose.yml dosyasındaki değişiklikleri kaydedin.

  6. docker-compose up -d komutu ile Docker konteynerlerini yeniden başlatın.

Mail sunucusunun alan adı değiştirildikten sonra, sistemin çalışır durumda olduğunu ve tüm işlevlerin düzgün bir şekilde gerçekleştiğini doğrulayın.

Yöneticinin paneli ilk ayarları

Yönetici paneline erişmek için :fontawesome-solid-tags*webpanel* etiketindeki bağlantıya tıklayıp, Sign In düğmesine tıklayın ve :fontawesome-solid-tags*credentials* etiketindeki kimlik bilgileri kullanın.

Bir kullanıcının bilgilerini değiştirmek için profillerinde bulunan Edit Profile düğmesine tıklayın.

.

Sunucu kurallarını yönetme

Mastodon'da her sunucunun merkezi olmayan yapısı gereği, bu sosyal ağı yönetenler kendi kurallarını belirler. Kuralları yönetmek için Administration >> Server Rules 'na gidin.

Temel kurallar oluştururken uygulanması gereken prensipler:

  • Kurallar makul olmalı ve genel ahlak standartlarını karşılamalıdır, böylece kullanıcıların bu alanda kendilerini güvende hissederek aktif kalmaları teşvik edilir;
  • Yasak içerik türleri (şiddet, pornografi, haksız faaliyetler vb.) açıkça belirtilmeli ve NSFW içerik seviyeleri kabul edilebilir sınırlar içerisinde olmalıdır;
  • Kurallar ihlali durumlarında kullanıcıların uyarılması, engellenmesi veya süreli kısıtlamalar uygulanması gibi disiplin cezası prosedürleri tanımlanmalı ve bu süreçler açıkça belirtilmelidir;
  • Sunucu kuralları, herkes tarafından kolayca erişilebilir olmalı ve kaydı sırasında kamuya açık bir şekilde görüntülenmeli;
  • Sunucular büyüdükçe kuralların düzenli olarak gözden geçirilmesi ve toplumun önerilerine göre güncellenmesi önemlidir.

Kullanıcı davet etme

Mastodon'da feed'te çeşitli dillerde kullanıcıları yönetme ve yeni kullanıcı davet etme özelliği bulunmaktadır:

  • Follows and Followers - Bu sekmede, mevcut kullanıcı tarafından abone olunmuş hesaplar listelenir ve bu hesaplardan gelen gönderileri görüntüleyebilirsiniz. Ayrıca, sizinle bağlantılı olan kullanıcıların sayısı da burada gösterilir.
  • Invite people - Bu özelliği kullanarak arkadaşlarınızla ve tanıdıklarınızla sosyal ağınıza katılmaları için özel bağlantılar oluşturabilirsiniz.

.

Not

Mastodon'un temel ayarları hakkında daha fazla bilgi için geliştirici belgelerine bakın.

API kullanarak sunucu sipariş etme

Bu yazılımı API kullanarak kurmak için bu talimatlara bakın