ГлавнаяОперационные системыLinuxКак создать сервер календаря с помощью Baikal

Как создать сервер календаря с помощью Baikal

Настройка брандмауэра сервера

орый позволяет синхронизировать файлы CardDAV и CalDAV онлайн. В отличие от Календаря Google, он беспрепятственно синхронизирует файлы календаря между различными клиентами и устройствами. Приложение также поддерживает многопользовательские экземпляры, а это значит, что Байкал можно использовать совместно с другими людьми и делитесь событиями календаря, как в Календаре Google. . Например, вы можете разместить персональный сервер на Байкале для своих друзей и родственников, а также коллег.

Читайте также: 10 приложений-календарей, которые являются отличной альтернативой календарю Google

Предварительные условия

Перед установкой Baikal подготовьте следующие ресурсы:

  • Машина, доступная за пределами вашей домашней сети : это может быть либо домашний сервер с открытыми портами, либо выделенный VPS, который вы сейчас арендуете.
  • Доменное имя, указывающее на ваш компьютер : в этом руководстве я буду использовать имя «yetanotherbaikalserver.xyz».
  • Root-доступ к вашему компьютеру : для установки утилит и программ, необходимых для работы Байкала.

Учитывая эти факторы, в этом руково

Предварительные условия

я только установке Baikal на VPS Debian 11 из ЦифровойОкеан .

Установите Baikal Linux 03. Краткое описание капель Digitalocean 1.

Установка зависимостей Байкала

Начните с создания отдельной учетной записи пользователя на вашем компьютере, чтобы убедиться, что любые ошибки и ошибки во время процесса не повлияют на всю систему:

sudo useradd -s /bin/bash -d /home/baikal -m -G sudo baikal
sudo passwd baikal
Установить Baikal Linux 04 Создать нового пользователя

После этого переключитесь на этого нового пользователя, запустив su baikal. Отсюда вы теперь можете установить зависимости Baikal, выполнив следующую команду:

sudo apt install php php7.4-fpm php7.4-xml php-sqlite3 sqlite3 nginx certbot python3-certbot-nginx iptables iptables-persistent ufw net-tools unzip
Установка Baikal Linux 05 Установка зависимостей

Читайте также: Как синхронизировать CalDAV и CardDAV с

Установка зависимостей Байкала

уэра сервера

Настройка брандмауэра вашего компьютера необходима для того, чтобы ваш сервер блокировал любые ненужные запросы к нему. Чтобы настроить это, выполните следующий набор команд:

sudo ufw allow 80
sudo ufw allow 443

Приведенные выше команды просто откроют порты 80 и 443 для внешнего подключения и закроют все сетевые порты на компьютере.

Установите Baikal Linux 06 Включите брандмауэр сервера

Настройка Nginx для Байкала

Хотя для Baikal можно использовать различные веб-серверы, в этом разделе основное внимание уделяется их настройке вместе с Nginx.

Для начала создайте файл конфигурации сайта в папке «/etc/nginx/sites-available»:

sudo nano/etc/nginx/sites-available/baikal
Установка Baikal Linux 07 Создание конфигурации Nginx<

Оттуда напишите блок server{}внутри этого нового файла конфигурации. Ниже приведены базовые настройки, которые должны работать сразу после установки:

server {
  listen       80;
  server_name  yetanotherbaikalserver.xyz;
 
  root  /var/www/baikal/html;
  index index.php;
 
  rewrite ^/.well-known/caldav /dav.php redirect;
  rewrite ^/.well-known/carddav /dav.php redirect;
 
  charset utf-8;
 
  location ~ /(\.ht|Core|Specific|config) {
    deny all;
    return 404;
  }
 
  location ~ ^(.+\.php)(.*)$ {
    try_files $fastcgi_script_name =404;
    include        /etc/nginx/fastcgi_params;
    fastcgi_split_path_info  ^(.+\.php)(.*)$;
    fastcgi_pass   unix:/var/run/php/php-fpm.sock;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    fastcgi_param  PATH_INFO        $fastcgi_path_info;
  }
}

Это работает так: Nginx прослушивает любые соединения на порту 80 для имени хоста «yetanotherbaikalserver.xyz». Как только кли

Настройка Nginx для Байкала

равляет это соединение в корневой каталог Baikal, где Nginx затем открывает сокет UNIX для всех файлов.php, позволяя им работать как веб-приложение.

Читайте также: Как показать фазы Луны/Луны в Календаре Google

Получение и распаковка Байкала

Чтобы загрузить и установить Baikal на свой компьютер, сначала создайте корневой веб-каталог и переключитесь на него:

sudo mkdir -p /var/www/ && cd /var/www/

Затем используйте wget, чтобы получить последнюю бинарную версию Baikal:

sudo wget https://github.com/sabre-io/Baikal/releases/download/0.9.2/baikal-0.9.2.zip
Установить Baikal Linux 08 Скачать бинарный архив

Отсюда установите веб-приложение, распаковав его двоичный архив с помощью следующей команды:

sudo unzip ./baikal-0.9.2.zip
Установите Baikal Linux 09. Разархивируйте двоичный архив.

Наконец, убедитесь, что Nginx может читать и писать в корневой каталог Baikal, запустив chownв папке «baikal»:

sudo chown -R www-data:www-data ./baikal

Перезапуск Nginx и установка SSL

Теперь вы можете включить файл конфигурации Nginx, создав символическую ссылку на «/etc/nginx/sites-enabled». После этого вам также необходимо перезагрузить Nginx, чтобы применить новые настройки. Чтобы выполнить эти два действия, выполните следующие команды:

sudo ln -s /etc/nginx/sites-available/baikal /etc/nginx/sites-enabled
sudo systemctl restart nginx
Установите Baikal Linux 10. Перезапустите Nginx.

Теперь включите SSL для вашего сервера, используя Давайте зашифруем или установка вручную через OpenSSL . В данном случае я использую утилиту certbot от Let’s Encrypt.

Чтобы установить сертификат Let’s Encrypt, выполните следующую команду:

certbot --nginx

Получение и распаковка Байкала

>

Читайте также: Как создать поисковую систему с помощью SearXNG

Завершение настройки Baikal

Чтобы завершить процесс установки, откройте веб-браузер и зайдите на сайт через свое доменное имя. В моем случае я собираюсь использовать «yetanotherbaikalserver.xyz».

Оказавшись там, Baikal перенаправит вас на страницу установки администратора, где запросит ряд параметров, специфичных для сервера, которые вам необходимо установить для вашего экземпляра.

Для начала введите часовой пояс вашего компьютера. Если вы используете VPS, укажите часовой пояс для этого VPS.

Установите Baikal Linux 11 с настройками по умолчанию

Поскольку мой VPS находится в Сингапуре, я выбираю «Азия/Сингапур».

Установить Baikal Linux 12 Установить часовой пояс

Далее выберите функции, которые вам нужны для вашего экземпляра. Проверьте CalDAV и CardDAV, если вы хотите включить на своем сервере поддержку как календаря, так и адресной книги.

Установите Baikal Linux 13 Установите новые функции

У вас также есть возможность указать адрес электронной почты для вашего экземпляра. Чтобы это работало, ваш сервер должен иметь возможность отправлять сообщения SMTP через TLS. Я оставляю это поле пустым, чтобы отключить отправку электронной почты.

Перезапуск Nginx и установка SSLtent/uploads/2024/05/install-baikal-linux-14-remove-email-address.png" alt="Установить Baikal Linux 14 Удалить адрес электронной почты">

Далее выберите формат аутентификации для вашего экземпляра. В большинстве случаев формат дайджеста должен работать «из коробки». Вам также необходимо указать пароль для учетной записи администратора. После этого можно нажать «Сохранить изменения».

Установите метод аутентификации Baikal Linux 15

Наконец, Baikal запросит у вас настройки базы данных вашего экземпляра. По большей части вам не нужно изменять какие-либо настройки на этой странице. Нажмите «Сохранить изменения» еще раз, чтобы завершить установку.

Установите Baikal Linux 16 Настройки базы данных по умолчанию

Читайте также: Как делиться местоположениями и приглашать людей на мероприятия с помощью Календаря Google

Добавление первого пользователя Байкала

После запуска Baikal вы можете создать своего первого пользователя, вернувшись в панель администратора и выбрав «Пользователи и ресурсы».

Установите Baikal Linux 17. Выберите вкладку «Пользователи».

На следующем экране выберите «Добавить пользователя», чтобы открыть простую страницу создания, на которой вы можете ввести данные нового пользователя. Например, я могу создать для себя нового пользователя.

Завершение настройки Baikaler-details.png" alt="Установите Baikal Linux 18 Сведения о новом пользователе">

Читайте также: Как установить собственный федеративный Twitter с помощью Pleroma

Связывание Thunderbird с Байкалом

Теперь, когда у вас есть учетная запись пользователя Baikal, вы можете связать ее с любой программой планирования, поддерживающей CalDAV и CardDAV, например Тандерберд .

Чтобы использовать Baikal с Thunderbird, нажмите кнопку «Календарь» на главной странице почтового клиента.

Установите Baikal Linux 19. Выберите Календарь Thunderbird.

Откроется небольшое окно, в котором клиент спросит вас о местонахождении файла календаря. Выберите «В сети» и нажмите «Далее», чтобы продолжить.

Установите Baikal Linux 20. Подключите календарь к сети.

Когда Thunderbird запросит у вас имя пользователя вашей учетной записи Baikal, а также ее URL-адрес, заполните эти данные и нажмите «Найти календари». В качестве URL-адреса укажите адрес вашего сервера, а затем «/dav.php».

Установка Baikal Linux 21 Подробности о сервере Thunderbird

Как только клиент получит все файлы календаря для вашей учетной записи Baikal, он отобразит их и запросит у вас «Тип календаря». Выберите «CalDAV» и нажмите «Подписаться».

Установить Baikal Linux 22 Установить тип календаря

Ваш сервер Baikal готов к использованию.

Читайте также: 9 лучших почтовых клиентов для Linux

Часто задаваемые вопросы

Systemctl сообщает, что Nginx «не удалось выполнить привязку».

Нет! Ошибка «не удалось привязать» возникает всякий раз, когда программе не удается получить контроль над определенным сетевым портом. В этом случае у Nginx возникает конфликт на портах 80 или 443 с существующей службой на вашем компьютере. Вы можете определить, какая программа использует этот ресурс, выполнив следующую команду: netstat -tulpn | grep -e :80 -e :443.

Как только вы узнаете, какая программа вызывает ошибку, запустите apt removeили systemctl disable, чтобы остановить программу.

Например, Apache — это распространенная программа, использующая те же порты, что и Nginx. Вы можете отключить это в Debian, выполнив следующую команду: sudo systemctl disable apache2.

Мой веб-сервер все еще показывает страницу приветствия Debian после настройки Baikal. Как это исправить?

Эта проблема, скорее всего, связана с конфликтом файлов конфигурации Nginx. По умолчанию Debian предоставляет базовую настройку Nginx, которая включает файл конфигурации в «/etc/nginx/sites-enabled». Вам необходимо удалить этот конкретный файл, выполнив следующую команду: sudo rm /etc/nginx/sites-enabled/default.

Я не могу синхронизировать свой календарь, а веб-сайт сообщает об ошибке DOM.

Нет. «Ошибка DOM» указывает на то, что в PHP-сервере вашего сервера Baikal отсутствует модуль XML. Чтобы это исправить, переустановите PHP или вручную установите модуль XML. Например, вы можете запустить следующую команду, чтобы установить отсутствующий модуль в Debian: sudo apt install php7.4-xml.

Изображение предоставлено: Unsplash и Добавление первого пользователя Байкалабля">Сабля . Все изменения и скриншоты сделаны Рамсесом Редом

Связывание Thunderbird с Байкалом

Часто задаваемые вопросы

Systemctl сообщает, что Nginx «не удалось выполнить привязку».

Мой веб-сервер все еще показывает страницу приветствия Debian после настройки Baikal. Как это исправить?

Я не могу синхронизировать свой календарь, а веб-сайт сообщает об ошибке DOM.

ПОХОЖИЕ СТАТЬИ

Популярные записи