ГлавнаяОперационные системыLinuxКак размещать большие файлы и делиться ими в Интернете с помощью PicoShare...

Как размещать большие файлы и делиться ими в Интернете с помощью PicoShare в Linux

Picoshare — это легкое и легкодоступное веб-приложение для обмена файлами для Linux. Он предоставляет простой в использовании интерфейс, позволяющий загружать файлы со своего сервера и обмениваться ими. В этой статье показано, как установить Picoshare и обмениваться файлами в Интернете с помощью Docker в Ubuntu Linux.

Зачем использовать Picoshare для обмена файлами в Интернете

Одним из главных преимуществ PicoShare является то, что его легко развернуть на любой платформе Linux. С помощью Docker вы можете обмениваться файлами в Интерн

Зачем использовать Picoshare для обмена файлами в Интернете

тимости программ.

Еще одним преимуществом PicoShare является то, что он не манипулирует файлами, которые вы загружаете на свою платформу. Это делает его полезным для обмена фотографиями и видео, поскольку вы можете быть уверены, что сервер не будет перекодировать ваши медиафайлы при их загрузке.

Скриншот PicoShare, работающего на сервере.

Наконец, PicoShare имеет возможность дублировать хранилище файлов во внешние решения для хранения объектов. Например, вы можете связать свою корзину, совместимую с Amazon S3, с сервером PicoShare и создать резервную копию содержимого вашего сервера 1:1. Это позволяет легко восстановить данные при переходе из одной системы в другую.

Установка необходимых компонентов для PicoShare

Предположение: Это руководство выполнено на компьютере с Ubuntu 24.04, имеющим как минимум 2 ГБ ОЗУ и 50 ГБ дискового пространства. Вам понадобится доменное имя, по которому вы сможете создавать записи «A» для этого домена. Наконец, в этой статье DigitalOcean Spaces будет использоваться в качестве S3-совместимого хранилища объектов.

Примечание. Хотя приведенные здесь инструкции предназначены для Ubuntu, они также подходят для большинства дистрибутивов Linux.

Первым шагом в установке PicoShare является получение Docker и Nginx для вашей хост-системы (для других дистрибутивов Linux описано, как это сделать установите Docker в свои системы Linux ). Для начала получите ключ подписи для репозитория проекта Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/ap

Установка необходимых компонентов для PicoShare

do chmod a+r /etc/apt/keyrings/docker.gpg

Создайте новый файл репозитория apt с помощью вашего любимого текстового редактора:

sudo nano /etc/apt/sources.list.d/docker.list

Вставьте следующую строку кода в новый файл репозитория:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu noble stable

Сохраните файл репозитория, затем обновите списки репозитория системы и текущие пакеты:

sudo apt update && sudo apt upgrade

Установите Docker, Docker Compose и Nginx с помощью apt в Ubuntu:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx

Создание резервной копии облачного хранилища для PicoShare

Перейдите к поставщику облачного хранилища, совместимому с S3, а затем создайте новый сегмент хранилища. В данном случае я использую Цифровые океанские пространства , поэтому нажимаю Создать ->Хранилище объектов Spaces на экране панели управления.

Снимок экрана, показывающий расположение пункта меню «Хранилище объектов Spaces» на панели управления DigitalOcean.<

Выберите расположение центра обработки данных для вашего хранилища, совместимого с S3, затем установите флажок Включить CDN.

Снимок экрана, на котором показаны кнопки для настройки местоположения корзины Spaces и будет ли корзина использовать CDN DigitalOcean.

Укажите имя для нового сегмента пространств, затем нажмите Создать сегмент пространств, чтобы его инициализировать.

Снимок экрана, на котором показано текстовое поле с названием пространства и расположение кнопки «Создать сегмент пространств».

Нажмите Значок копирования в текстовом поле «Исходная конечная точка» и вставьте его в отдельный текстовый файл.

Снимок экрана, показывающий расположение значка «Копировать» на<h3><span id=Создание резервной копии облачного хранилища для PicoShareнель панели управления DigitalOcean, затем выберите категорию API.

Снимок экрана, показывающий расположение категории API на странице панели мониторинга.

Перейдите на вкладку Пробелы и выберите Создать новый ключ.

Укажите имя нового ключа, затем нажмите Создать ключ доступа.

Скопируйте «Ключ доступа» и «Секретный ключ» со страницы и вставьте их в текстовый файл.

Снимок экрана, показывающий расположение ключа доступа и секретного ключа для сегмента Spaces.

Установка и запуск PicoShare

Создайте новую папку для PicoShare в домашнем каталоге пользователя и зайдите в нее:

mkdir ~/picoshare && cd ~/picoshare

Используйте свой любимый текстовый редактор, чтобы создать файл Compose для PicoShare:

nano ./docker-compose.yml

Вставьте следующий блок кода в новый файл.yml:

version: "3.2"
services:
  picoshare:
    image: mtlynch/picoshare
    environment:
      - PORT=4001
      - PS_SHARED_SECRET=RANDOM PASSWORD HERE
      - LITESTREAM_BUCKET="YOUR BUCKET NAME"
      - LITESTREAM_ENDPOINT="YOUR ORIGIN ENDPOINT HERE"
      - LITESTREAM_ACCESS_KEY_ID="YOUR BUCKET ACCESS ID HERE"
      - LITESTREAM_SECRET_ACCESS_KEY="YOUR BUCKET SECRET HERE"
    ports:
      - 4001:4001
    command: -db /data/store.db
    volumes:
      - ./data:/data

Замените значение переменной «PS_SHARED_SECRET» на достаточно длинный и случайный пароль. Он будет служить паролем для веб-интерфейса PicoShare.

Терминал, показывающий случайно сгенерированный общий пароль для экземпляра PicoShare.

Примечание. Вы можете сгенерировать свой собственный случайный пароль, запустив: cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 32 | head -n 1в отдельном сеансе терминала.

Замените значение переменной LITESTREAM_BUCKET на имя вашего сегмента Spaces.

Терминал, показывающий соответствующее значение для сегмента, совместимого с S3.

Скопируйте часть региона и имени домена вашей конечной точки, а затем вставьте ее в качестве значения переменной «LITESTREAM_ENDPOINT».

Снимок экрана, показывающий правильный формат для переменной конечной точки, совместимой с S3.

Замените значения переменных «LITESTREAM_ACCESS_KEY_ID» и «LITESTREAM_SECRET_ACCESS_KEY_ID» ключом доступа и секретным ключом корзины DigitalOcean Spaces.

Снимок экрана, показывающий ключ доступа к пространствам и секретный ключ для экземпляра PicoShare.

Сохраните файл docker-compose.yml, затем выполните следующую команду, чтобы создать и запустить экземпляр PicoShare:

sudo docker compose up -d

Кстати, вы также можете использовать Docker и Docker Compose для быстрого Установка и запуск PicoSharemaynkrafta/" title="разместите сервер Minecraft на своем компьютере с Linux">разместите сервер Minecraft на своем компьютере с Linux .

Защита PicoShare с помощью обратного прокси-сервера SSL

На этом этапе PicoShare работает через порт 4001 на вашем локальном компьютере. Чтобы получить к нему безопасный доступ в Интернете, вам необходимо убедиться, что все подключения к нему зашифрованы с помощью SSL.

Начните с создания новой записи «A» для вашего доменного имени, указывающей на IPv4-адрес вашего сервера PicoShare. В моем случае я создам запись «A» со значением «picoshare».

Снимок экрана, показывающий DNS-запись «A» для сервера PicoShare.

Установите «основной» пакет Snap в вашей системе Ubuntu:

sudo snap install core

Получите пакет оснастки certbot от Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Создайте новый файл конфигурации сайта Nginx с помощью вашего любимого текстового редактора:

sudo nano /etc/nginx/sites-available/picoshare

Вставьте следующий блок кода в файл конфигурации вашего сайта:

server {
 
        server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;
 
        location / {
                proxy_pass http://127.0.0.1:4001;
                proxy_http_version 1.1;
                proxy_redirect off;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header X-Forwarded-Proto https;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $host;
                client_max_body_size 0m;
        }
}

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

sudo ln -s /etc/nginx/sites-available/picoshare /etc/nginx/sites-enabled/

Дважды проверьте файл конфигурации Nginx на наличие ошибок, затем запустите демон веб-сервера Nginx, используя systemctl:

nginx -t
sudo systemctl enable --now nginx.service
Терминал, показывающий проверку конфигурации и команду systemctl для запуска веб-сервера Nginx.

Зарегистрируйте свой сервер PicoShare с помощью утилиты certbot EFF:

sudo certbot register --agree-tos -m YOUR-EMAIL@ADDRESS.HERE

Создайте новый сертификат SSL, указывающий на доменное имя вашего сервера:

sudo certbot --nginx -d SUBDOMAIN.YOUR-ROOT.DOMAIN

Полезно знать: узнайте, как HTTPS защищает ваши данные в Интернете, до создание собственного сертификата SSL с помощью OpenSSL .

Тестирование PicoShare и загрузка первого файла

Откройте веб-браузер, затем перейдите к своему субдомену, чтобы загрузить целевую страницу PicoShare.

Защита PicoShare с помощью обратного прокси-сервера SSLicoShare, работающую на VPS.">

Нажмите кнопку Войти в правом верхнем углу страницы.

Укажите значение PS_SHARED_SECRET в текстовом поле Пароль, затем нажмите Аутентификация для входа в систему.

Снимок экрана, показывающий приглашение для входа в PicoShare.

Проверьте, можете ли вы сохранить данные на своем сервере PicoShare, нажав кнопку Загрузить, а затем выберите образец файла в меню выбора.

Скриншот, показывающий расположение кнопки «Загрузить» на внутренней панели управления.

Скопируйте первую ссылку, которую сервер возвращает пользователю, которому вы хотите поделиться своим файлом.

Снимок экрана, показывающий расположение первой общей ссылки в экземпляре PicoShare.

Включить временную гостевую загрузку на PicoShare

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

Начните с выбора категории Гостевые ссылки на главной странице PicoShare.

Снимок экрана, показывающий расположение категории «Гостевые ссылки» на панели инструментов PicoShare.

Нажмите кнопку Создать новую над пустой таблицей обзора ссылок.

Укажите основные сведения о гостевой ссылке для загрузки. В моем случае я назову его «MakeTechEasier» и установлю срок действия «Никогда» с ограничением размера файла в 100 МБ и общим ограничением в 10 загрузок.

Скриншот, показывающий заполненную форму гостевой ссылки.

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

Нажмите Значок копирования справа от гостевой ссылки, а затем отправьте содержимое буфера обмена предполагаемому получателю.

Снимок экрана, показывающий расположение значка копирования на экране гостевых ссылок.

Развертывание и обеспечение безопасности PicoShare для обмена файлами в Интернете с помощью Linux — это лишь первый шаг к восстановлению вашей цифровой конфиденциальности в Интернете. Узнайте, как еще больше защитить себя к размещение собственного сервера псевдонимов электронной почты с помощью SimpleLogin .

Изображение предоставлено: Алехандро Эскамилла через Unsplash и PicoShare Github . Все изменения и скриншоты Рамсеса Реда.

Тестирование PicoShare и загрузка первого файла

Включить временную гостевую загрузку на PicoShare

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

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