GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer le serveur de chat Zulip sur Debian 11

Zulip est un serveur de chat open source, similaire à Microsoft Teams, Rocket Chat ou Slack. Il est écrit en Python et utilise Django, PostgreSQL et JavaScript. Il s'intègre à plus de 90 plugins tiers, dont Github, Jira, Stripe, Zendesk, Sentry, etc. Vous pouvez étendre les intégrations en les connectant à Zapier et IFTTT. Il est livré avec des fonctionnalités telles que la messagerie privée, les discussions de groupe, les conversations filetées, les canaux personnalisés, les appels vidéo, les téléchargements de fichiers par glisser-déposer, les emojis personnalisés, l'intégration Giphy, la prévisualisation des images et des tweets et bien d'autres. Zulip est livré avec des applications de bureau et mobiles pour chaque plate-forme, ce qui le rend indépendant de la plate-forme.

Dans ce didacticiel, vous apprendrez à installer et à configurer Zulip Chat sur un serveur basé sur Debian 11.

Prérequis

  • Un serveur exécutant Debian 11.

  • Au moins 2 Go de RAM si vous prévoyez moins de 100 utilisateurs. Pour plus de 100 utilisateurs, obtenez un serveur de 4 Go de RAM et 2 processeurs.

  • Un utilisateur non root avec des privilèges sudo.

  • Un nom de domaine configuré pour pointer vers le serveur, zulip.example.com .

  • Tout est mis à jour.

    $ sudo apt update &&sudo apt upgrade
  • Peu de packages dont votre système a besoin.

    $ sudo apt install wget curl nano ufw software-properties-common apt-transport-https gnupg2 ca-certificates debian-archive-keyring -y

    Certains de ces packages sont peut-être déjà installés sur votre système.

Étape 1 - Configurer le pare-feu

La première étape consiste à configurer le pare-feu. Debian est livré avec ufw (pare-feu non compliqué).

Vérifiez si le pare-feu est en cours d'exécution.

État $ sudo ufw

Vous devriez obtenir le résultat suivant.

Statut :inactif

Autorisez le port SSH afin que le pare-feu n'interrompe pas la connexion actuelle en l'activant.

$ sudo ufw autorise OpenSSH

Autorisez également les ports HTTP et HTTPS.

$ sudo ufw allow 80/tcp$ sudo ufw allow 443/tcp

Activer le pare-feu

$ sudo ufw enableCommand peut perturber les connexions ssh existantes. Continuer avec l'opération (o|n) ? yLe pare-feu est actif et activé au démarrage du système

Vérifiez à nouveau l'état du pare-feu.

État $ sudo ufw

Vous devriez voir une sortie similaire.

Statut :activeTo Action From-- ------ ----OpenSSH AUTORISER Anywhere80/tcp AUTORISER Anywhere443/tcp AUTORISER AnywhereOpenSSH (v6) AUTORISER Anywhere (v6)80/tcp (v6) AUTORISER Anywhere (v6) 443/tcp (v6) AUTORISER n'importe où (v6)

Étape 2 - Installer Zulip

Zulip est livré avec un script d'installation qui effectue les opérations suivantes :

  1. Crée un utilisateur zulip pour exécuter le serveur Zulip.
  2. Crée un répertoire personnel en utilisant le zulip user qui héberge tout le code public sous le répertoire /home/zulip/deployments .
  3. Installe toutes les dépendances dont Zulip a besoin.
  4. Installe la base de données PostgreSQL, le serveur Web Nginx, RabbitMQ, le cache Redis et Memcached.
  5. Initialise la base de données de Zulip.

Créez un répertoire temporaire à l'aide de mktemp commande pour télécharger le programme d'installation de Zulip et basculer vers celui-ci.

$ cd $(mktemp -d)

Téléchargez la dernière version de Zulip.

$ wget https://download.zulip.com/server/zulip-server-latest.tar.gz

Extrayez tous les fichiers.

$ tar -xf zulip-server-latest.tar.gz

Exécutez le script d'installation.

$ sudo ./zulip-server-*/scripts/setup/install --certbot \ --email=YOUR_EMAIL --hostname=YOUR_HOSTNAME

Le --certbot flag oblige le programme d'installation à télécharger Certbot et à installer automatiquement les certificats SSL. Remplacez YOUR_EMAIL avec votre identifiant de messagerie et YOUR_HOSTNAME avec le nom de domaine de Zulip (zulip.example.com ).

Étape 3 - Accéder à l'interface Zulip

Une fois le script d'installation terminé, vous recevrez une URL unique. Copiez cette URL.

.......zulip-workers:zulip_deliver_scheduled_messages:started+ set +x+ su zulip -c '/home/zulip/deployments/current/manage.py generate_realm_creation_link'Veuillez visiter le lien sécurisé à usage unique suivant pour vous inscrire votre nouvelle organisation Zulip :https://zulip.example.com/new/il5dsewnhugjarbnlxf5nc46

Visitez https://zulip.example.com/new/il5dsewnhugjarbnlxf5nc46 dans votre navigateur, et l'écran suivant apparaîtra.

Entrez votre identifiant de messagerie pour commencer à créer votre organisation. Il vous sera demandé de créer un compte sur l'écran suivant.

Entrez le nom de votre organisation et votre nom et choisissez un mot de passe pour vous connecter et cliquez sur S'inscrire bouton pour continuer.

Une fois terminé, le tableau de bord Zulip s'ouvrira et vous pourrez commencer à l'utiliser.

Étape 4 - Configuration des e-mails sortants

Le serveur Zulip doit envoyer des e-mails régulièrement. Pour cela, vous devez configurer le courrier sortant. Pour notre exemple, nous utiliserons le service SES d'Amazon. Tous les e-mails sont envoyés à partir de l'identifiant de messagerie que vous avez utilisé pour créer l'organisation à l'étape 3.

Zulip stocke tous ses paramètres dans le /etc/zulip/settings.py dossier. Ouvrez-le pour le modifier.

$ sudo nano /etc/zulip/settings.py

Décommentez les variables suivantes en supprimant # devant eux et en saisissant les valeurs correspondantes.

## EMAIL_HOST et EMAIL_HOST_USER sont généralement requis.EMAIL_HOST ='email-smtp.us-west-2.amazonaws.com'EMAIL_HOST_USER ='yoursmpt_username'## Les mots de passe et les secrets ne sont pas stockés dans ce fichier. Le mot de passe## pour l'utilisateur EMAIL_HOST_USER va dans `/etc/zulip/zulip-secrets.conf`.## Dans ce fichier, définissez `email_password`. Par exemple :# email_password =abcd1234## EMAIL_USE_TLS et EMAIL_PORT sont requis pour la plupart des fournisseurs SMTP.EMAIL_USE_TLS =TrueEMAIL_PORT =587

Remplissez les variables supplémentaires suivantes. Le premier supprime tout jeton aléatoire de l'adresse e-mail sans réponse, et le second configure l'expéditeur de l'e-mail sans réponse pour vos e-mails.

ADD_TOKENS_TO_NOREPLY_ADDRESS =False# TOKENIZED_NOREPLY_EMAIL_ADDRESS ="noreply-{token}@example.com"## NOREPLY_EMAIL_ADDRESS est l'expéditeur des e-mails noreply qui ne contiennent pas## de liens de confirmation (où le problème de sécurité résolu par## ADD_TOKENS_TO_NOREPLY_ADDRESS ne contient pas existent), ainsi que pour ## e-mails de confirmation lorsque ADD_TOKENS_TO_NOREPLY_ADDRESS=False.NOREPLY_EMAIL_ADDRESS ='[email protected]'

Une fois terminé, enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Zulip enregistre le mot de passe de l'e-mail dans un autre fichier. Ouvrez le fichier /etc/zulip/zulip-secrets.conf pour l'édition.

$ sudo nano /etc/zulip/zulip-secrets.conf

Collez la ligne suivante à la fin du fichier.

email_password =votremot de passe_mtp

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Pour tester la configuration de votre e-mail sortant, vous pouvez envoyer un e-mail de test à l'aide de la commande suivante.

$ sudo -u zulip /home/zulip/deployments/current/manage.py send_test_email [email protected]Si vous rencontrez des problèmes, lisez :https://zulip.readthedocs.io/en/latest/production/ email.html#troubleshootingL'erreur la plus courante est de ne pas définir `ADD_TOKENS_TO_NOREPLY_ADDRESS=False' lors de l'utilisation d'un fournisseur de messagerie qui ne prend pas en charge cette fonctionnalité. e-mail protégé]

Redémarrez le serveur.

$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-server

Notez que vous pouvez démarrer ou arrêter le serveur Zulip uniquement en tant que zulip utilisateur.

Étape 5 - Commandes du serveur Zulip

Pour arrêter le serveur Zulip, utilisez la commande suivante.

$ sudo -u zulip /home/zulip/deployments/current/scripts/stop-server

Pour redémarrer le serveur, utilisez la commande suivante.

$ sudo -u zulip /home/zulip/deployments/current/scripts/start-server

Redémarrez le serveur de la même manière.

$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-server

Il existe de nombreuses tâches de gestion que vous pouvez réaliser à l'aide de manage.py script livré avec Zulip.

Vous pouvez exécuter le script à l'aide de la commande suivante. Nous utiliserons l'help sous-commande pour lister toutes les opérations possibles que l'on peut effectuer.

$ sudo -u zulip /home/zulip/deployments/current/manage.py helpType 'manage.py help ' pour obtenir de l'aide sur une sous-commande spécifique. auth] changepassword createsuperuser[contenttypes] remove_stale_contenttypes[django] check createcachetable dbshell diffsettings dumpdata flush inspectdb loaddata makemigrations migrate sendtestemail shell showmigrations sqlflush sqlmigrate sqlsequencereset squashmigrations startapp startproject test testserver[otp_static] addstatictoken[sessions] clearsessions[social_django] clearsocial[staticfiles] collectstatic find runserver [two_factor] two_factor_disable two_factor_status[zerver] add_users_to_streams archive_messages audit_fts_indexes backup bulk_change_user_nam e change_password change_realm_subdomain change_user_email change_user_role check_redis checkConfig compilemessages convert_gitter_data convert_mattermost_data convert_slack_data create_default_stream_groups create_large_indexes create_realm_internal_bots create_stream create_user deactivate_realm deactivate_user delete_old_unclaimed_attachments delete_realm delete_user deliver_scheduled_emails deliver_scheduled_messages dump_messages edit_linkifiers email_mirror enqueue_digest_emails enqueue_file export export_single_user export_usermessage_batch fill_memcached_caches fix_unreads generate_invite_links generate_multiuse_invite_link generate_realm_creation_link get_migration_status list_realms importation logout_all_users makemessages merge_streams print_email_delivery_backlog process_queue purge_queue query_ldap rate_limit reactivate_realm realm_dom ain register_server remove_users_from_stream rename_stream reset_authentication_attempt_count restore_messages runtornado scrub_realm send_custom_email send_password_reset_email send_realm_reactivation_email send_stats send_test_email send_to_email_mirror send_webhook_fixture_message set_message_flags show_admins soft_deactivate_users sync_ldap_user_transfert de données 

Étape 6 - Mise à niveau de Zulip

Pour mettre à jour Zulip, téléchargez la dernière version depuis le serveur.

$ curl -fLO https://download.zulip.com/server/zulip-server-latest.tar.gz

Exécutez la commande suivante pour effectuer la mise à niveau.

$ sudo /home/zulip/deployments/current/scripts/upgrade-zulip ~/zulip-server-latest.tar.gz

Le script exécutera les fonctions suivantes.

  1. Exécuter apt upgrade pour mettre à jour le système.
  2. Installez la nouvelle version des dépendances de Zulip.
  3. Arrête le serveur Zulip.
  4. Exécute l'puppet apply commande.
  5. Effectuer des migrations de base de données si nécessaire.
  6. Redémarre le serveur Zulip.

Étape 7 - Sauvegarder et restaurer Zulip

Sauvegarder et restaurer Zulip est facile, grâce aux scripts intégrés qui s'occupent de tout.

Pour effectuer une sauvegarde complète de Zulip, exécutez la commande suivante.

$ sudo -u zulip /home/zulip/deployments/current/manage.py backup --output=~/backups/zulip-backup.tar.gz

La commande ci-dessus créera un zulip-backup.tar.gz fichier dans ~/backups annuaire. Celui-ci contient tout ce dont vous aurez besoin pour transférer ou restaurer Zulip.

Pour restaurer une sauvegarde existante, installez Zulip en passant par l'étape 2.

Une fois terminé, exécutez la commande suivante pour terminer la restauration.

$ sudo -u zulip /home/zulip/deployments/current/scripts/setup/restore-backup ~/backups/zulip-backup.tar.gz

Si vous voulez changer de domaine, vous pouvez changer la variable EXTERNAL_HOST dans le fichier /etc/zulip/settings.py puis redémarrez le serveur à l'aide de la commande suivante.

$ sudo -u zulip /home/zulip/deployments/current/scripts/restart-server

Conclusion

Ceci conclut notre tutoriel sur l'installation et la configuration du serveur Zulip Chat sur un système basé sur Debian 11. Vous pouvez suivre la documentation officielle de Zulip pour explorer en détail. Si vous avez des questions, postez-les dans les commentaires ci-dessous.


Debian
  1. Comment installer le serveur Redis sur Debian 11

  2. Comment installer MySQL 8.0 / 5.7 sur Debian 11 / Debian 10

  3. Comment installer ProFTPD sur Debian 8

  4. Comment installer le serveur MySQL sur Debian 9

  5. Comment installer Odoo 12 sur Debian 9

Comment installer FastPanel sur Debian 11

Comment installer I2P sur le serveur Debian :

Comment installer Zulip sur Debian 11

Comment installer VNC sur Debian 10

Comment installer le serveur VNC sur Debian 11

Comment installer Zulip Chat Server sur Ubuntu 20.04 LTS