CryptPad Kurulum :Google Docs yerine Gizliliğe Dikkat Eden Kullanıcılar için Şifreli Belgeler

CryptPad, belgeler, elektronik tablolar, sunumlar için harika açık kaynak çevirimiçi pakettir. Google’ın Google Docs ofis ürünleri paketi, bir çok kullanıcı için popüler olmasına rağmen, güvenilir bulunmaz. CryptPad, adın da anlaşılabileceği gibi dosyalarınızı kullandığınız bulutta size özel bir anahtar ile şifreler. Şuan kendi resmi sitesinde Covid-19 pandemi dolayısıyla üye olduktan sonra daha önce 50MB olan depolama alanını 1GB olarak güncelledi. Sınırsız olarak kullanmak için ücretli üye olmanız veya kendi sisteminiz üzerine yüklemeniz gerekmektedir. Bulut hizmeti olarak düşündüğünüzde bir çok özelliği barındırıyor. Bu özellikler şöyledir:

-Belge oluşturma/düzenleme için Zengin Metin düzenleyici sunar

-Elektronik Tablo oluşturma ve yönetme yeteneği sunar

-Renk şemasına sahip ayrı bir kod düzenleyici sağlar

-Sunum oluştuma yeteneği

-Kolayca özel veya genel bir anket oluşturma

-Bir Kanban panosu düzenleyicisi sunar

-Not almak veya ihtiyacınız  olan herhangi bir şeyi almak için bir beyaz tahta sağlar

-Dosyalarınız/belgeleriniz için parola koruması sağlar

-Belgeleriniz için kendi kendini imha etme işlevi

-Bağlantı paylaşımını kullanarak belgeyi herkese açma veya kısıtlı tutma yeteneği

-Biriyle paylaşmadan önce belgelerin iznini mutlaka kontrol edin

-iframe snippet’ini kullanarak pad’i istediğiniz yere kolayca gömün

-Belgeleri sohbet etmek/düzenleme için işbirliği seçenekleri

-İstemci tarafı şifreleme(Sunucu belgelerinizin içeriğini bilmiyor)

 

Daha fazlası için Github adresinde kodlarını inceleyebilirsiniz.

Yükleme

 

Donanım

Geliştirme ekibi, ana makinede minimum olarak aşağıdaki donanım gereksinimlerini kullanır ve önerir:

  • Debian 10
  • 2 GB RAM
  • 2 x86 CPU
  • 20 GB depolama alanı (planlanan kullanıma bağlı olarak)

Uyarı

CryptPad, gizliliği en üst düzeye çıkarmak ve ana makinenin güvenliği ihlal edilmiş olsa bile elde edilebilecek faydalı bilgi miktarını en aza indirmek için tasarlanmıştır. Ancak ana makinenin güvenli olduğundan emin olmak yöneticilere bağlıdır. Bununla ilgili talimatlar bu kılavuzun kapsamı dışındadır ancak en iyi uygulamalar şunları içerir:

  • Parola tabanlı SSH erişimini devre dışı bırakma
  • Herhangi bir güvenlik yamasıyla işletim sistemini düzenli olarak güncelleme
  • Sunucu erişimi olan kişi sayısını sınırlama
  • Aynı ana bilgisayar üzerinde paralel olarak çalışan güvenli olmayan uygulamalardan kaçınma
  • CryptPad’in kendisini düzenli olarak güncelleme

 

,

Kuruluma başlamadan önce aşağıdaki yazılımların kurulu olduğundan emin olun:

  • GİT
  • nodejs (v12.14.0 sürümünü kullanıyoruz)
    • Kullanılması NVM önerilir
  • npm
  • bower
    • ile yüklendi npm install -g bower

CryptPad deposunu klonlayın

git clone https://github.com/xwiki-labs/cryptpad.git cryptpad

bağımlılıklar

cd cryptpad
npm install
bower install

Yapılandırma

Örnek yapılandırmayı kopyalayın

cd cryptpad/config
cp config.example.js config.js

Lütfen yapılandırma dosyasını okuyun ve gerektiğinde değişkenleri değiştirin.

Sunucu şimdi ile başlatılabilir

cd cryptpad node server

Örnek artık çalışmaya hazırdır ancak henüz internetten erişilemiyor.

Servis olarak ekleme

CryptPad’i otomatik olarak yeniden başlayan bir arka plan programı olarak çalıştırmak isteyebilirsiniz.

Bir şekilde CryptPad çalıştırmak için systemd servis, örnek takip edin cryptpad.service dosyasını.

  1. Örneğin kaydet cryptpad.servicede/etc/systemd/system/
  2. Gerekli ayarlamaları yapın (örn. kullanıcı adı, yol, nodejs sürümü)
  3. Hizmeti başlangıçta ile etkinleştirin .systemctl enable cryptpad

Servis olarak nodejs uygulamaların diğer yolları arasında, örneğin foreverjs veya pM2 .

Etki Alanları

CryptPad’in güvenlik özelliklerinden tam olarak yararlanmak için iki alana ihtiyacınız var.

  1. Kullanıcıların örneğinize eriştiği ana alan
  2. Bir dizi kısıtlayıcı İçerik-Güvenlik İlkesi başlığının uygulandığı bir “korumalı alan” etki alanı veya alt etki alanı

Bu sistemin amacı, saldırganların kullanıcı verilerini sızdırmasına izin veren Siteler Arası Komut Dosyası Çalıştırma (XSS) güvenlik açıklarının riskini sınırlamaktır. Hassas hesaplama (kriptografik anahtarların işlenmesi gibi) ana etki alanında işlenirken, kullanıcı arayüzü sanal alan etki alanında uygulanır.

Örnek Nginx yapılandırma dosyası, etkili olabilmesi için ancak, doğru örneğini yapılandırmanız gerekir, korumalı alan sistemini etkinleştirmek için ilgili başlıkları içermektedir. İhtiyacın olacak:

  1. iki alan veya alt alan
  2. CryptPad’i Yapılandır bölümündecryptpad/config/config.js açıklandığı gibi her iki etki alanını dahil etmek için
  3. her iki alanı da kapsayan bir SSL sertifikası oluşturmak için. Geliştirme ekibi acme.sh kullanır ve bu, örnek yapılandırmada yansıtılır.
  4. örnek Nginx yapılandırmasındaki ilgili değişkenlere hem etki alanlarını hem de sertifikaları doğru şekilde atamak için

Dikkat:

Korumalı alan sistemi olmadan üretimde CryptPad kullanmak, kullanıcıların bilgilerini riske atabilir.

Geliştirme ekibi, önerilen ayarları doğru şekilde uygulayan herhangi bir üçüncü taraf yapılandırmasından (Apache, HAProxy, Lighttpd) haberdar değildir. Bunları kendi (ve kullanıcılarınızın) riski size ait olacak şekilde kullanın!

Nginx’i kurun ve yapılandırın

CryptPad’in uygulama sunucusu, websocket aracılığıyla aktif bağlantıları yönetir ve statik varlıklara (HTML, Javascript, CSS, vb.) hizmet eder. Bu temel yapılandırma, yerel geliştirme için yapılandırılması çok kolay olacak şekilde tasarlanmıştır, ancak trafiği SSL ile korumaz veya birçok eşzamanlı kullanıcıyı çok iyi işlemez.

Bir üretim ortamında, geliştirme ekibi aşağıdaki nedenlerle Nginx’i önerir :

  1. Trafiği SSL ile koruyun (böylece kullanıcılarınız HTTPS aracılığıyla örneğinize ulaşabilir)
  2. Yerleşik tek iş parçacıklı NodeJS web sunucusu yerine daha ölçeklenebilir bir web sunucusuyla statik içerik sunarak çok daha fazla kullanıcıya ölçeklendirin
  3. Uygulama sunucusunun yalnızca websocket bağlantılarını yönetmeye odaklanmasına izin verin

Uyarı

CryptPad bir alt klasörde çalıştırılamaz. Sunucunuzu kök etki alanı veya bir alt etki alanı üzerinden erişecek şekilde yapılandırdığınızdan emin olun.

İşletim sisteminiz tarafından dağıtılan Nginx sürümünün web yuvalarını desteklemeyebileceğini unutmayın. CryptPad’e hizmet etmek için önerilen minimum sürüm 1.10.3.

Nginx’i CryptPad için yapılandırmak için:

  1. CryptPad örnek Nginx yapılandırma dosyasını , ana Nginx yapılandırması tarafından kullanılması/içe aktarılması için kopyalayın, örneğin/etc/nginx/conf.d/cryptpad.conf .
  2. Yapılandırma dosyasını doğru etki alanları ve sertifika yollarıyla düzenleyin.
  3. Ana makinede henüz yapmadıysanız çalıştırın .openssl dhparam -out /etc/nginx/dhparam.pem 4096

Statik varlıklara ve sayfalara https://cryptpad.yourdomain.com/index.htmlartık ana etki alanında erişilebilir olmalıdır.

 

CryptPad’i yapılandırın

Kurulumu tamamlamak için cryptpad/config/config.jsen azından şunları içerdiğinden emin olun :

  • Doğru alanlar:
    • Bunun yerine ana etki alanı:
      httpUnsafeOrigin: 'http://localhost:3000',
      
    • Şunun yerine Sandbox etki alanı:
      httpSafeOrigin: "https://some-other-domain.xyz",
      
  • Aşağıdakilerin yerine bir yönetici e-postası (İletişim sayfasında görünür):
adminEmail: 'i.did.not.read.my.config@cryptpad.fr',

Denetim

CryptPad, örnek yapılandırma testlerini çalıştıran bir tanılama sayfası sağlar. https://cryptpad.yourdomain.com/checkup/Her şeyin doğru şekilde yapılandırıldığından emin olmak için yukarıdaki tüm adımları tamamladıktan sonra ziyaret edin .

 

Yöneticileri yapılandırın

CryptPad yüklendikten sonra, ana sayfadaki Register butonunu kullanarak bir hesap oluşturun. Bu hesabı örnek yönetici yapmak için:

  1. Kullanıcı Menüsü (sağ üstteki avatar) > Ayarlar > Hesap > Genel İmza Anahtarı’nda bulunan ortak anahtarlarını kopyalayın
  2. Bu anahtarı cryptpad/config/config.jsaşağıdaki diziye yapıştırın (yorumu kaldırın ve yer tutucuyu değiştirin):
Örnek:...
adminKeys: [
        "[cryptpad-user1@my.awesome.website/YZgXQxKR0Rcb6r6CmxHPdAGLVludrAF2lEnkbx1vVOo=]",
],
  1. CryptPad’i yeniden başlatın

 

Destek posta kutusunu yapılandırın

Sürüm 4.6.0 ve üstü

4.6 sürümünden beri destek posta kutusu Yönetim panelinden yapılandırılabilir .

  1. Örnek yönetici hesabıyla /admin/#supportsayfayı ziyaret edin
  2. Destek Anahtarları Oluştur’a tıklayın
  3. Destek posta kutusu artık etkin
  4. Posta kutusuna erişmek için önbelleği temizleyin: Genel sekmesi > HTTP Önbelleğini Temizle

Diğer yöneticilerin destek posta kutusuna erişmesine izin vermek için:

  1. Destek sayfasının altındaki anahtarı kopyalayın
  2. Başka bir yönetici hesabına gönder
  3. Destek posta kutusuna erişmek için destek sayfasındaki Özel anahtar ekle alanını kullanabilirler.