Calibre — это мощная и простая программа для управления электронными книгами. Она позволяет не только организовывать библиотеку на вашем устройстве, но и предоставляет возможность доступа к ней через интернет с помощью Calibre Server. В этой статье мы рассмотрим, как установить и настроить Calibre Server на сервера под управление debian/ubuntu-like дистрибутивов, а также как защитить доступ к вашей библиотеке.
Протестировано на:
Ubuntu: 22.04
1. Настройка файрвола (UFW)
Перед установкой Calibre Server необходимо настроить файрвол, чтобы разрешить подключения по HTTP и HTTPS.
Шаг 1: Проверка статуса файрвола
Проверьте статус UFW:
sudo ufw status
Если файрвол активен, вы увидите:

Шаг 2: Открытие портов
Разрешите трафик на портах HTTP (80) и HTTPS (443):
sudo ufw allow http
sudo ufw allow https
Проверяем статус:
sudo ufw status
Вы должны увидеть:

2. Установка Calibre
Шаг 1: Установка зависимостей
Установите необходимые зависимости:
sudo apt install libfontconfig libegl1 libopengl0 libxcb-cursor0 libxkbcommon0 libgl1 libglx0 libxcomposite1 libxdamage1 libxrandr2 libxtst6 libasound2 libxkbfile1
Шаг 2: Загрузка и установка Calibre
Загрузите установщик Calibre:
wget https://download.calibre-ebook.com/linux-installer.sh
Сделайте его исполняемым:
chmod +x ./linux-installer.sh
Запустите установщик:
sudo ./linux-installer.sh
3. Создание библиотеки и добавление книг
Шаг 1: Создание каталога для библиотеки
Создайте каталог для библиотеки Calibre:
mkdir calibre-library
Шаг 2: Добавление книг
Скачайте книгу для примера:
wget https://www.gutenberg.org/ebooks/6527.kindle.images -O debian.mobi
Добавьте книгу в библиотеку:
calibredb add debian.mobi --with-library calibre-library/
4. Запуск Calibre Server
Запустите Calibre Server:
calibre-server calibre-library

Сервер будет доступен по адресу http://ваш_IP:8080

Примечание.
Если этот порт у вас закрыт файрволом, то открыть его можно следующей командой:
sudo ufw allow 8080
5. Создание systemd-юнита для Calibre Server
Шаг 1: Создание юнита
Создайте файл /etc/systemd/system/calibre-server.service
:
sudo nano /etc/systemd/system/calibre-server.service
Добавьте следующий код:
[Unit]
Description=Calibre Server
After=network.target
[Service]
Type=simple
User=<username>
Group=<username>
ExecStart=/opt/calibre/calibre-server /home/<username>/calibre-library --enable-local-write
[Install]
WantedBy=multi-user.target
Замените <username>
на имя вашего пользователя.
Шаг 2: Запуск и включение службы
Перезагрузите демон systemd и запустите службу:
sudo systemctl daemon-reload
sudo systemctl enable calibre-server
sudo systemctl start calibre-server
Проверьте статус службы:
sudo systemctl status calibre-server

6. Настройка аутентификации
Шаг 1: Остановка сервера
Остановите сервер:
sudo systemctl stop calibre-server
Шаг 2: Добавление пользователя
Добавьте пользователя:
sudo calibre-server --manage-users
Выберите опцию 1
для добавления нового пользователя и следуйте инструкциям.

Шаг 3: Включение аутентификации
Отредактируйте файл службы:
sudo nano /etc/systemd/system/calibre-server.service
Добавьте флаг --enable-auth
в строку ExecStart
:
ExecStart=/opt/calibre/calibre-server "/home/<username>/calibre-library" --userdb "/home/<username>/.config/calibre/server-users.sqlite" --enable-local-write --enable-auth
Перезагрузите демон systemd и запустите сервер:
sudo systemctl daemon-reload
sudo systemctl start calibre-server
Теперь доступ к библиотеке будет защищён аутентификацией.

Заключение.
Вы успешно установили и настроили Calibre Server на Debian/Ubuntu дистрибутивах. Теперь вы можете управлять своей библиотекой электронных книг и получать к ней доступ из любой точки мира. Если у вас возникнут вопросы, оставляйте комментарии ниже.
Was this helpful?
2 / 0