57 lines
1.5 KiB
Markdown
57 lines
1.5 KiB
Markdown
# 🗂️ Trashbox - Минималистичный файловый сервер
|
||
|
||
### Установка зависимостей
|
||
``` bash
|
||
sudo apt update
|
||
sudo apt install nginx busybox gcc
|
||
```
|
||
### Настройка структуры
|
||
```bash
|
||
mkdir -p /home/romkazvo/www/cgi-bin
|
||
cd /home/romkazvo/www/cgi-bin
|
||
git clone https://git.mashup.su/RomkaZVO/Trashbox.git
|
||
```
|
||
### Структура
|
||
``` bash
|
||
cgi-bin/
|
||
├── Makefile
|
||
├── config.ini
|
||
├── template.html
|
||
├── style.css
|
||
├── .htpasswd
|
||
├── src/
|
||
│ ├── main.c
|
||
│ ├── config.c / config.h
|
||
│ ├── auth.c / auth.h
|
||
│ ├── fs.c / fs.h
|
||
│ ├── render.c / render.h
|
||
│ ├── utils.c / utils.h
|
||
│ ├── style.c
|
||
│ └── status.c
|
||
├── index.cgi
|
||
├── style.cgi
|
||
└── status.cgi
|
||
403 и 404 опционально в папку уровнем выше, чем cgi-bin
|
||
```
|
||
### Компиляция CGI
|
||
```bash
|
||
cd src
|
||
make
|
||
sudo make install
|
||
```
|
||
### Конфигурация Nginx
|
||
Файл конфигурации `/etc/nginx/sites-available/trashbox`:<br>
|
||
Образец здесь [тык](https://git.mashup.su/RomkaZVO/Trashbox/src/branch/main/busybox_nginx_reverse.txt)
|
||
|
||
### Запуск BusyBox
|
||
```bash
|
||
busybox httpd -p 127.0.0.1:8050 -h /home/romkazvo/www
|
||
```
|
||
### Папки с паролями
|
||
Создается папка, а для создания пароля нужно:
|
||
```bash
|
||
cat > /home/romkazvo/www/cgi-bin/.htpasswd << EOF
|
||
secret:mysecretpassword
|
||
EOF
|
||
```
|