Trianon — скрипт фотохостинга с шифрованием и автоудалением - изображение 1
1 / 9
Программы

Trianon — скрипт фотохостинга с шифрованием и автоудалением

0 скачиваний
3 октября 2026 г.

Описание

Trianon — скрипт анонимного фотохостинга с шифрованием и автоудалением

Готовый фотохостинг на своём сервере за 10 минут. Посетители загружают картинки без регистрации, получают ссылку на альбом, а файлы хранятся на диске в зашифрованном виде и удаляются сами через заданный срок. Установщик сам настраивает сервер, базу данных и бесплатный SSL-сертификат, Интерфейс на русском языке и удобен на телефонах. В админ-панели можно сменить логотип, фон и подвал сайта, отредактировать информационные страницы и разместить рекламу.


Кому подойдёт

  • Тем, кто хочет запустить свой сервис обмена изображениями (аналог imgur / fastpic) и зарабатывать на рекламе.
  • Сообществам, форумам и командам, которым нужен приватный хостинг картинок без сторонних сервисов.
  • Владельцам VPS, которым нужен готовый продукт, а не конструктор: залил, запустил установщик, работает.

Возможности для посетителей

  • Загрузка без регистрации. Перетащите файлы в окно или выберите их на диске.
  • До 20 изображений за раз. Каждая загрузка автоматически становится отдельным альбомом.
  • Индикатор прогресса загрузки в процентах.
  • Проверка файлов в браузере: неподходящий формат или слишком большой файл подсвечиваются ещё до отправки.
  • Срок хранения на выбор: от 1 до 180 дней. По истечении срока файлы удаляются автоматически.
  • Пароль на альбом. Один пароль открывает все изображения альбома, вводить его для каждой картинки не нужно. Автор загрузки видит свои фото без ввода пароля.
  • Ссылка на альбом и кнопка «Копировать».
  • Прямая ссылка на каждое изображение, её можно вставить на форум, в блог или в чат.
  • Короткие адреса вида /i/… для изображения и /a/… для альбома (работают и на Apache, и на Nginx).
  • Форматы: JPEG, PNG, GIF. Анимация в GIF сохраняется.
  • Удобно на телефоне. Все страницы адаптированы под смартфоны и планшеты: крупные поля и кнопки, выбор фото из галереи, альбом в одну колонку.
  • Интерфейс на русском языке, включая сообщения об ошибках и админ-панель.

Адаптивный дизайн

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

Безопасность и приватность

Безопасность была главным требованием при разработке, а не добавлена потом.

  • Шифрование файлов на диске (AES-256-GCM). Изображения хранятся в папке только в зашифрованном виде и расшифровываются в момент показа. Даже при доступе к диску сервера посторонний не увидит содержимое. GCM к тому же проверяет целостность, поэтому подменённый файл не будет показан.
  • Уникальный ключ шифрования для каждой установки. Установщик генерирует его автоматически.
  • Удаление EXIF и метаданных. JPEG и PNG пересохраняются, поэтому из них пропадают GPS-координаты, модель камеры, дата съёмки и другие скрытые данные.
  • Случайные ссылки длиной 16 символов: подобрать адрес чужого альбома перебором практически невозможно.
  • Встроенная CAPTCHA защищает от ботов и массовых загрузок.
  • Ограничение частоты запросов: не больше 30 загрузок в час с одного IP, 10 попыток ввода пароля к альбому и 5 попыток входа в админку за 15 минут.
  • IP-адреса не хранятся в открытом виде. Для антиспама используется только их хеш.
  • Без регистрации, трекеров, аналитики и сторонних сервисов.
  • Пароли хранятся только в виде хеша (bcrypt): и пароли альбомов, и пароль администратора.
  • Проверка содержимого файлов, а не только расширения: тип определяется по сигнатуре файла, а слишком большие изображения (больше 25 мегапикселей) отклоняются, что защищает сервер от «бомб распаковки».
  • Защита от типовых веб-атак: SQL-инъекций (подготовленные запросы PDO), XSS (экранирование вывода), CSRF (токены во всех формах админки), кликджекинга (заголовки безопасности).
  • Закрытый доступ к служебным файлам: конфигурация, скрипты, дампы, бэкапы и папка с загрузками недоступны из браузера.
  • Безопасная админ-сессия: вход защищён от перебора, сессия завершается через 30 минут бездействия.
  • HTTPS «из коробки»: бесплатный сертификат Let's Encrypt с автопродлением.

Панель администратора

  • Список всех загруженных изображений с датой загрузки и сроком удаления.
  • Удаление любого изображения в один клик, например по жалобе.
  • Настройки сайта без правки кода:
    • Логотип и фон главной страницы: JPEG, PNG, GIF или WebP до 5 МБ. Кнопка «Вернуть по умолчанию».
    • Подвал сайта: текст и строка копирайта. E-mail и ссылки автоматически становятся кликабельными, {year} заменяется на текущий год.
    • Три рекламных места: баннеры 160×600 слева и справа от формы загрузки и мобильный баннер 320×100 под формой.
    • Информационные страницы «О нас», «Политика конфиденциальности» и «Условия использования». Можно менять заголовок и текст, выключать ненужные страницы. Ссылки на них автоматически появляются в подвале сайта. В комплекте готовые тексты на русском языке.
    • Простая разметка без HTML: абзацы, подзаголовки, списки, кликабельные ссылки и e-mail.

Монетизация

Рекламные места уже встроены в дизайн, отдельно для компьютеров и для мобильных:

  • два баннера 160×600 по сторонам от формы загрузки (на экранах шире 1024px);
  • мобильный баннер 320×100 под формой (на телефонах и планшетах), чтобы зарабатывать и на мобильном трафике.

Каждый баннер можно настроить одним из способов:

  • Картинка со ссылкой для прямых рекламодателей. Ссылка получает атрибут rel="sponsored", как требуют поисковики.
  • Код рекламной сети (HTML/JavaScript), например Яндекс РСЯ, Google AdSense и другие.

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


Установка: один скрипт, около 10 минут

Автоматический установщик install.sh делает всё сам:

  1. Определяет ОС и проверяет ресурсы сервера и свободные порты.
  2. Устанавливает PHP 8.2, MariaDB и веб-сервер по вашему выбору: Apache или Nginx.
  3. Создаёт базу данных и пользователя со сгенерированными надёжными паролями.
  4. Генерирует ключ шифрования и пароль администратора.
  5. Настраивает виртуальный хост, права на файлы и параметры PHP.
  6. Получает SSL-сертификат Let's Encrypt. Сначала проверяет, что домен уже указывает на сервер, и настраивает автопродление.
  7. Проверяет установку и выводит все адреса и данные для входа.

Во время установки отображается прогресс с таймером, а подробный журнал пишется в файл. Установщик не «зависает» на скрытых вопросах пакетного менеджера.


Обслуживание

В комплекте есть скрипты для повседневной работы:

  • update.sh — безопасное обновление. Сначала проверяет синтаксис нового кода и сохраняет текущую версию (последние 5 копий). После обновления проверяет, что сайт отвечает, а если нет, показывает команду для отката. Загруженные фото и настройки не затрагиваются.
  • backup.sh — резервное копирование базы данных, изображений и конфигурации. Можно поставить в cron на ежедневный запуск. Старые копии удаляются через 7 дней, доступ к архивам есть только у root.
  • restore.sh — восстановление из бэкапа: можно восстановить всё целиком или по частям (база, файлы, конфигурация).
  • health-check.sh — диагностика. Проверяет веб-сервер, базу, PHP и расширения, права на файлы, доступность загрузок и наличие «забытых» файлов с секретами в веб-каталоге.
  • Автоочистка. Изображения с истёкшим сроком и пустые альбомы удаляются автоматически, без настройки cron.

Технические характеристики

| Параметр | Значение |
|---|---|
| Язык / платформа | PHP 8.2 (совместим с PHP 7.4+) |
| База данных | MariaDB 10.3+ / MySQL 5.7+ |
| Веб-сервер | Apache 2.4+ или Nginx 1.18+ |
| Шифрование | AES-256-GCM (OpenSSL) |
| SSL | Let's Encrypt (Certbot) с автопродлением |
| Форматы загрузки | JPEG, PNG, GIF |
| Размер файла | до 1 МБ (настраивается) |
| Файлов за одну загрузку | до 20 (настраивается) |
| Срок хранения | 1–180 дней (настраивается) |
| Лимит загрузок | 30 в час с одного IP (настраивается) |
| Макс. разрешение | 25 мегапикселей |
| Язык интерфейса | русский |
| Адаптивность | смартфоны, планшеты, компьютеры |
| Рекламные места | 2 × 160×600 + мобильное 320×100 |
| Сторонние зависимости | нет (без фреймворков, CDN и внешних API) |

Все лимиты меняются одной строкой в config.php.


Требования к серверу

  • ОС: Ubuntu 20.04+, Debian 10+, CentOS 7+, Rocky Linux 8+, AlmaLinux 8+
  • ОЗУ: от 1 ГБ (рекомендуется 2 ГБ)
  • Диск: от 5 ГБ (зависит от объёма загрузок)
  • Домен, направленный на IP сервера (для SSL)
  • Root-доступ к VPS

Подойдёт самый недорогой VPS.


Что входит в комплект

  • Полный исходный код без обфускации
  • Автоматический установщик для Ubuntu / Debian / CentOS / Rocky / AlmaLinux
  • Скрипты обновления, резервного копирования, восстановления и диагностики
  • Панель администратора с настройками внешнего вида, страниц и рекламы
  • Редактируемые страницы «О нас», «Политика конфиденциальности», «Условия использования» с готовыми текстами и страница 404
  • Подробная инструкция по установке на русском языке (INSTALL_RU.md) и документация на английском

Коротко

✅ Загрузка без регистрации, до 20 фото за раз
✅ Русский интерфейс и адаптивный дизайн для телефонов
✅ Шифрование AES-256 на диске и удаление EXIF
✅ Автоудаление через 1–180 дней
✅ Пароль на альбом
✅ CAPTCHA и защита от спама
✅ Админ-панель: модерация, логотип, фон, подвал, страницы
✅ Три рекламных места, включая мобильное (баннер или код рекламной сети)
✅ Установка одним скриптом с SSL
✅ Обновление, бэкапы и диагностика в комплекте
✅ Без сторонних сервисов и трекеров

Отзывы (0)

Пока нет отзывов

2 900 ₽
ZIP, 275.4 KB

Оплачивая заказ, вы принимаете публичную оферту и условия возврата

Мгновенная доставка
Безопасная оплата

О продавце

D

DeployKit

4 товаров

На платформе с 12 сентября 2026 г.