README.md

HomeServer README.md

Домашний сервер из Raspberry для всего

По большому счету подойдет для любых линукс-систем.
Здесь я подбираю или адаптирую или собираю под архитектуру ARM64. Но не все получаются.

pic0.png
RaspberryPi 4B

aarch64 ARM Cortex-A72 3; 32-bit, 64-bit; Little Endian; 1800-600MHz; 8GB

OS

Raspberry Pi OS Lite (64-bit) port of Debian Bookworm with no desktop из комалекта rpi-imager

Место расположения около домашнего роутера и использовать лучше проводное подключение т.к.:

  • WiFi может пригодится для вещания второй беспроводной сети
  • Если поднимать KVM, то проще настроить виртуальный бридж

Замена в файлах sudo nano /etc/apt/sources.list.d/debian.sources и sudo nano /etc/apt/sources.list.d/raspi.list http://… на https://…

Сетевые настройки либо на роутере настроен ip для MAC, либо на самом raspberry с помощью sudo nmtui и sudo reboot
pic2.png pic3.png pic4.png
Предположим сеть нашего сервера 192.168.0.100/24, 192.168.0.1, 192.168.0.1 8.8.8.8 1.1.1.1, workgroup.
user - фамилия, имя и отчество, паспорт sudo и sa пользователя.

Схема управления кулером (D965T транзистор или аналог NPN 500ma, 1N4001 диод, 470 резистор) подключена к 14-GPIO.
pic1.png
Настройка в sudo raspi-config на 14 pin и 60 цельсия,
но у меня температура не повышалась выше 58 градусов даже при опытах с deepseek.

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

USB порты лучше не нагружать - на этой малинке почти все завязано на USB hub, в том числе и Lan и WiFi.

Создание ключа ssh на хосте

  1. ssh-keygen -t rsa -b 4096 -C "user@hotmail.com"
  2. eval "$(ssh-agent -s)"
  3. ssh-add .ssh/id_ed25519
  1. ssh-keygen -t rsa
    от админа
  2. Get-Service ssh-agent | Set-Service -StartupType Manual
  3. Start-Service ssh-agent
  4. Get-Service ssh-agent
  5. ssh-add C:\Users\user\.ssh\id_ed25519

Копирование на raspberry

  1. ssh-copy-id user@192.168.0.100
  1. ssh user@192.168.0.100 mkdir -p /home/user/.ssh/
  2. scp C:\Users\user\.ssh\id_ed25519.pub user@192.168.0.100:/home/user/.ssh/authorized_keys

Соединение и настройка

ssh user@192.168.0.100
sudo dpkg-reconfigure {locales,console-setup} && sudo reboot
sudo apt update && sudo apt full-upgrade -y && sudo reboot

  • Установка утилит и средств разработки по усмотрению
sudo apt install -y ssh mc ufw fail2ban htop iftop nmon btop speedtest-cli git unzip unrar aptitude \
apt-transport-https ca-certificates gnupg-agent curl wget net-tools \
gcc gdb default-jdk default-jre build-essential make python3 python3-pip python3-venv python3-dev \
tree rename pass apt-file clang clangd npm nodejs vim dkms perl automake autoconf m4 libevent-dev \
golang llvm-dev libnss3-dev libnss3-tools liblzma-dev libarchive13 libzstd-dev libtest-assertions-perl \
libfuzzer-19-dev meson ffmpeg && sudo apt-file update

curl -LsSf https://astral.sh/uv/install.sh | sh

# Отключение BT
blacklist btbcm
blacklist hci_uart
# Отключение WI-FI
blacklist brcmfmac
blacklist brcmutil
  • На всякий пожарный
    sudo ufw allow OpenSSH

  • Установка виртуального моста
    sudo apt install bridge-utils
    sudo nmtui
    pic5.png pic6.png pic7.png pic8.png pic9.png

  • Пустой мост (интерфейсы потом приляпаем)
    sudo nano /etc/network/interfaces.d/virtbr

auto virtbr0
iface virtbr0 inet manual
    bridge_fd 0
    bridge_maxwait 0
    bridge_ports none
    bridge_hello 2
    bridge_maxage 20
# Защита от петель выключена
    bridge_stp off
# Зададим MAC
    bridge_hw 2a:1e:aa:b1:34:eb

Установка сервисов

Мониторинг

RPi Monitor , Zabbix

Закачки

Transmission , Httrack , Yt-dlp

Медиасервер

Gerbera

Администрирование

Администрирование контроллера Webmin , Cockpit
Сервер активации Microsoft KMS Server на Linux
Сервер времени NTP или Chrony
Система доменных имен Unbound , PowerDNS , Dnsmasq , BIND
Динамическая настройка узла Kea , Dnsmasq
Сервер печати Cups , Sane
Передача файлов Samba , Dnsmasq , Tftpd Hpa , atftpd
Передача гипертекста Apache , Nginx
Центр распределения ключей KDC (Сервер выдачи мандатов (разрешений) TGS) Kerberos

Виртуализация

Docker , QEMU-KVM , MikroTik

Проброс устройств

Сервер 1c

Базы данных

MS SQL, Postgres, MySQL, MariaDB , MongoDB ,

Децентрализованные сети

i2pd , tor

Программирование

C ; WEB - PHP , Django ; Python

Контроллер домена

DC

Искусственный интеллект

Ollama , OpenWebUI ,

IP Телефония

Asterisk ,

Не боимся, выбирам что нужно и настраиваем.

Если что не так - сохраняем ~/.bash_history и снова RPI-IMAGER

Описание
Домашний сервер (и не только) для всего, что душа пожелает
Конвейеры
0 успешных
0 с ошибкой
Разработчики