Это лёгкий веб-инструмент на основе Flask, позволяющий подключаться к SMB/CIFS-шаре и выполнять базовые операции с файлами.
- 🚀 Веб-интерфейс для подключения к SMB/CIFS
- 🔍 Просмотр списка файлов и директорий
- 📤 Скачивание файлов через браузер
- 🔒 Работа со свежими версиями протокола SMB (с использованием
smbprotocol) - ⚙️ Конфигурация через
.env
- Python 3.8+
- Flask (≥2.0.0) — веб-сервер
- Werkzeug (≥2.0.0) — WSGI-утилиты Flask
- smbprotocol (≥1.10.0) — работа с SMBv2/v3
- python-dotenv (≥0.19.0) — загрузка переменных окружения из
.env
-
Склонируйте репозиторий и перейдите в каталог:
git clone https://github.com/MuratOfficial/python-smb.git cd python-smb -
Создайте виртуальное окружение и установите зависимости:
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
pip install -r requirements.txt-
Создайте файл
.envв корне проекта и задайте переменные:SMB_SERVER=192.168.1.100 SMB_SHARE=public SMB_USERNAME=user SMB_PASSWORD=pass123 SMB_DOMAIN=WORKGROUP # можно оставить пустым FLASK_ENV=development
-
Запустите приложение:
flask run
По умолчанию веб-сервис будет доступен по адресу:
http://127.0.0.1:5000
python-smb/
├── smb_app.py # Основной Flask-приложение (роуты, интерфейс)
├── requirements.txt # Зависимости
├── .env.example # Пример конфигурационного файла
├── templates/ # Шаблоны Jinja2 для UI
│ └── index.html
└── static/ # Статические файлы (CSS)
📦 Разработано MuratOfficial — github.com/MuratOfficial