Jak stworzyć własne, samoobsługowe Office 365 za pomocą Cryptpad

Jak stworzyć własne, samoobsługowe Office 365 za pomocą Cryptpad

Cryptpad to pakiet biurowy typu open source, który możesz samodzielnie hostować na swoim serwerze. Jest podobny do Office 365, który umożliwia dostęp do pakietu biurowego bezpośrednio z przeglądarki. Główna różnica polega na tym, że Cryptpad koncentruje się na prywatności użytkowników i umożliwia tworzenie i udostępnianie dokumentów bez ryzyka wycieku jakichkolwiek danych osobowych.

Ten samouczek pokazuje, jak zainstalować Cryptpad na swoim serwerze, jak działa Cryptpad i jak możesz utworzyć swoje pierwsze konto użytkownika.

Co to jest Cryptpad i dlaczego warto go używać?

Cryptpad to internetowy pakiet biurowy, który zapewnia zorientowaną na prywatność alternatywę do wspólnego edytowania dokumentów. Podobnie jak pakiety online, takie jak Office 365 i Dokumenty Google, umożliwia tworzenie i udostępnianie dokumentów innym osobom przez Internet.

Podstawowa sesja Cryptpad Wordpad.

Jedną z największych zalet Cryptpad w porównaniu z Office 365 jest to, że jest on w pełni szyfrowany od końca do końca. Tylko Ty i Twoi współpracownicy macie dostęp do edytowanego dokumentu, co może być przydatne podczas udostępniania dokumentów zawierających poufne informacje innym osobom.

Cryptpad wyróżnia się również na Office 365, ponieważ możesz go w pełni samodzielnie hostować na własnym sprzęcie. Jest to szczególnie przydatne, jeśli obawiasz się przechowywania swoich informacji u zewnętrznego dostawcy.

Czy wiesz, że możesz łatwo udostępniać dokumenty Dokumentów Google przez e-mail.

Wymagania

Zanim będziesz mógł zainstalować Cryptpad, musisz upewnić się, że masz przygotowane następujące zasoby:

  • Maszyna dostępna z sieci zewnętrznej
  • Co najmniej 2 GB pamięci RAM i 20 GB pamięci
  • Nazwa domeny (i nazwa subdomeny) wskazująca na adres IP Twojego serwera
Okno pokazujące informacje o kropli Digitalocean.

Instalacja Cryptpada

  • Zainstaluj zależności Cryptpad:

sudo gpasswd -a www-data ramces
sudo apt install git nodejs npm nginx certbot python3-certbot-nginx

Okno terminala pokazujące zależności Cryptpad.
  • Sklonuj kod źródłowy programu z jego repozytorium:

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

Okno terminala pokazujące klon git.
  • Wejdź do repozytorium i przejdź do najnowszej gałęzi:

cd cryptpad
git checkout -b 5.2.1

Okno terminala pokazujące przełącznik gałęzi git.
  • Użyj npmdo zainstalowania Bower, menedżera pakietów, który pomaga zainstalować niektóre biblioteki potrzebne Cryptpad.

sudo npm install -g bower

Okno terminala pokazujące proces instalacji altany.
  • Zainstaluj plik binarny Cryptpad, uruchamiając oba npmi bowerwewnątrz repozytorium.

npm install
bower install

Okno terminala pokazujące proces instalacji Cryptpad.

Konfigurowanie certyfikatu SSL

Gdy Cryptpad znajdzie się na twoim komputerze, możesz uruchomić Certbota, aby utworzyć certyfikat dla swojej instancji:

sudo certbot certonly --standalone

Spowoduje to wyświetlenie monitu z prośbą o podanie adresu e-mail.

Okno terminala pokazujące, że certbot pyta o adres e-mail.

Narzędzie Certbot zapyta o domeny, które chcesz połączyć z certyfikatem. Wprowadź zarówno domenę główną, jak i subdomenę.

Sekcja okna terminala, w której certbot pyta o nazwy domen.

Utwórz plik parametrów Diffie-Hellmana dla swojej instancji. Jest to środek bezpieczeństwa wymagany przez programistów, aby zapewnić bezpieczeństwo Twojej instancji.

sudo openssl dhparam -out /etc/nginx/dhparam.pem 4096

Konfigurowanie Nginx

Aby skonfigurować Nginx do obsługi Cryptpad w swojej domenie, możesz skorzystać z przykładowego pliku konfiguracyjnego dostarczonego przez programistów.

sudo cp /home/$USER/cryptpad/docs/example.nginx.conf /etc/nginx/conf.d/cryptpad.conf

Okno terminala pokazujące polecenie kopiowania szablonu.

Zmodyfikuj nowy plik konfiguracyjny za pomocą edytora tekstu.

sudo nano /etc/nginx/conf.d/cryptpad.conf

Zmień niektóre zmienne, aby ten plik działał. Najpierw skomentuj include letsencrypt-webroot;linię.

Sekcja okna terminala pokazująca wyłączoną linię webroot.

Następnie zmodyfikuj zmienne $main_domaini . $sandbox_domainPierwsza powinna zawierać Twoją domenę główną, a druga subdomenę.

Sekcja okna terminala, która pokazuje zmienne domeny.

Zmodyfikuj także $api_domaini $files_domain. W przeciwieństwie do powyższych, wystarczy zmienić je na domenę główną komputera.

Sekcja okna terminala, która pokazuje inny zestaw zmiennych dziedzinowych.

Zmień server_namezmienną zarówno na katalog główny, jak i subdomenę.

Sekcja okna terminala, która pokazuje zmienną nazwy serwera.

Zmień ssl_certificatei ssl_certificate_keyna lokalizację swojego certyfikatu SSL.

Sekcja okna terminala, która pokazuje zmienne ścieżki SSL.

Na koniec zastąp wartość rootzmiennej lokalizacją repozytorium Cryptpad.

Sekcja okna terminala, która pokazuje zmienną główną instancji.

Konfigurowanie Cryptpada

Użyj przykładowego pliku konfiguracyjnego dostarczonego przez programistów, uruchamiając:

cp /home/$USER/cryptpad/config/config.example.js /home/$USER/cryptpad/config/config.js

Otwórz go za pomocą edytora tekstu i zmień httpUnsafeOrigin:zmienną na swoją domenę główną.

Sekcja okna terminala, która pokazuje domenę główną.

Zmień httpSafeOrigin:zmienną na swoją subdomenę.

Sekcja okna terminala, która pokazuje subdomenę.

Dodaj następujący wiersz kodu bezpośrednio po httpSafeOrigin:zmiennej.

adminEmail: 'working_email@address.here',

Sekcja okna terminala, która pokazuje adres e-mail administratora.

Tworzenie usługi SystemD

Możliwe jest również powiązanie Cryptpad z usługą SystemD, aby umożliwić jej uruchomienie podczas uruchamiania systemu, wykonując następujące czynności:

nano /home/$USER/cryptpad/docs/cryptpad.service

Poniższy blok kodu to wersja, którą zmodyfikowałem do pracy z moim komputerem.

[Unit]Description=Cryptpad Service

# Replace the username values with your own username.

[Service]ExecStart=/bin/node /home/ramces/cryptpad/server.js
WorkingDirectory=/home/ramces/cryptpad

Restart=always
RestartSec=2

StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=ramces
User=ramces
Group=ramces
Environment='PWD="/home/ramces/cryptpad"'LimitNOFILE=1000000

[Install]WantedBy=multi-user.target

Okno terminala przedstawiające szablon usługi systemowej.

Zapisz i zamknij ten plik, a następnie skopiuj go do folderu usługi SystemD:

sudo cp /home/$USER/cryptpad/docs/cryptpad.service /etc/systemd/system/cryptpad.service

Załaduj ponownie SystemD, aby włączyć plik usługi:

sudo systemctl daemon-reload
sudo systemctl enable cryptpad
sudo systemctl start cryptpad
sudo systemctl reload nginx

Działający CryptPad

Jeśli wszystko zostało wykonane poprawnie, powinieneś mieć dostęp do Cryptpad przez swoją domenę główną.

Okno pokazujące działającą instalację cryptpad.

Tworzenie konta administratora w Cryptpad

Chociaż możesz używać Cryptpad bez konta, dobrą praktyką jest utworzenie użytkownika Admin, aby umożliwić Ci zarządzanie instancją za pośrednictwem interfejsu internetowego.

  • Naciśnij „Zarejestruj się” na stronie głównej Cryptpad.
Zainstaluj link do przycisku rejestracji Cryptpad Linux 32
  • Wprowadź swoją nazwę użytkownika i hasło, aby utworzyć nowe konto.
Strona pokazująca podstawowy proces tworzenia użytkownika.
  • Po zalogowaniu kliknij przycisk „Menu użytkownika” w prawym górnym rogu strony.
Strona przedstawiająca podstawowy interfejs Cryptpad.
  • Kliknij „Ustawienia”.
Sekcja strony, która pokazuje menu użytkownika Cryptpad.
  • Skopiuj zawartość pola tekstowego „Publiczny klucz podpisywania”.
Sekcja strony, która pokazuje klucz publiczny dla mojego konta użytkownika.
  • Wróć do folderu repozytorium i otwórz plik konfiguracyjny:

nano /home/$USER/cryptpad/config/config.js

Poszukaj adminKeys:zmiennej i wklej swój klucz podpisu między nawiasy kwadratowe:

Zainstaluj klucz administratora pliku konfiguracyjnego Cryptpad Linux 37
  • Załaduj ponownie instancję Cryptpad przez SystemD:

sudo systemctl restart cryptpad

Strona pokazująca podstawowy ekran administratora Cryptpad.

Często Zadawane Pytania

Dlaczego otrzymuję pustą stronę, gdy próbuję połączyć się z Cryptpadem?

Ten problem jest najprawdopodobniej spowodowany tym, że rekord DNS Twojej maszyny nadal nie jest propagowany na głównych serwerach DNS. Możesz to naprawić, zmniejszając wartość TTL na stronie rekordu DNS swojej domeny do 3600.

Jak zaktualizować Cryptpad po jego zainstalowaniu?

Możesz zaktualizować Cryptpad, przechodząc do swojego repozytorium i uruchamiając plik git pull. Spowoduje to pobranie wszystkich najnowszych plików źródłowych dla Cryptpad. Następnie musisz także uruchomić, npm update && bower updateaby zaktualizować pliki binarne.

Źródło obrazu: Unsplash . Wszystkie przeróbki i zrzuty ekranu autorstwa Ramces Red.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *