Користувальницькькі налаштування

Налаштування сайту


Сайдбар

Розділи

Загальний опис
Історія змін
Рекомендації щодо оновлення
Плани на майбутнє
Відомі проблеми
Онлайн демо
Люди
Трохи про безпеку

FAQ



Редагувати сайдбар

purenasrscriptd

Це стара версія документу!


PureNAS з rscriptd на Debian 13.2

Домовленості

Для прикладу припустимо, що Ubilling з усіма потрохами розташований на сервері доступному за адресою 1.2.3.6 а Чистий Debian 13.2 встановлено на сервер, з відповідними інтерфейсами. Ви не повинні конфігурувати інтерфейси самостійно, PureNAS зробить це автоматично за вас при своїй ініціалізації.

Встановлення PureNAS

su -
apt install -y ethtool net-tools conntrack tcpdump htop mtr-tiny sudo irqbalance
apt install -y git expat libexpat1-dev build-essential softflowd snmpd snmp
apt install -y php8.4-cli php8.4-mysqli php8.4-mbstring php8.4-bcmath php8.4-curl
apt install -y build-essential libncurses-dev libssl-dev bc flex bison dwarves rsync libelf-dev
apt install -y autoconf libtool pkg-config libpcap-dev libnfnetlink-dev libbpf-dev libdbus-1-dev 
apt install -y libvirt-dev libxml2-dev uuid-dev clang

після чого просто клонуємо його поточну гілку собі:

git clone https://github.com/nightflyza/PureNAS.git /etc/PureNAS

вмикаємо автоматичний старт при запуску

cp -R /etc/PureNAS/dist/purenas.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable purenas.service

розгортаємо пресет автоматичних тюнячок

cp -R /etc/PureNAS/dist/99-nat-tuning.conf /etc/sysctl.d/
sysctl -p /etc/sysctl.d/99-nat-tuning.conf

Компілюємо rscriptd

wget http://ubilling.net.ua/stg/stg-2.409.tar.gz
tar zxvf stg-2.409.tar.gz
cd stg-2.409/projects/rscriptd/
./build 
/usr/bin/gmake install

розгортаємо заготовки конфігів та скриптів ініціалізації користувачів

cp -R /etc/PureNAS/dist/rscriptd/* /etc/rscriptd/

Налаштування PureNAS

Всі налаштування PureNAS відбуваються в одному єдиному файлі /etc/PureNAS/purenas.conf. Для зображеного на схемі прикладу всі важливі налаштування, які базово треба модифікувати, будуть виглядати якось так:

LAN_IF="enp0s3"
WAN_IF="enp0s8"
 
USER_NET="172.16.0.0/17"
USER_GATEWAY_IP="172.16.0.1/17"
FORCE_ASSIGN_GATEWAY_IP="YES"
 
WAN_IP="1.2.3.5/24"
WAN_DEFAULT_ROUTE="1.2.3.4"
 
SHAPER_ENABLED="YES"
 
NAT_ENABLED="YES"
 
RSCRIPTD_ENABLED="YES"

Налаштування rscriptd

/etc/rscriptd/rscriptd.conf
ExecutersNum=4
ConfigDir=/etc/rscriptd
Password=тут_ваш_пароль_rscriptd_з_stargazer.conf
Port=9999
UserTimeout=3600
ScriptOnConnect=/etc/rscriptd/OnConnect
ScriptOnDisconnect=/etc/rscriptd/OnDisconnect
/etc/rscriptd/dbconfig.conf
host = 1.2.3.6
port = 3306
username = somelogin
password = somepassword
database = stg

З боку Ubilling-a

Перед першим використанням, переконайтеся, що з боку сервера білінгу, в /etc/stargazer.conf присутня розкоментована секція вигляду

<Module remote_script>
SendPeriod = 10
SubnetFile =/etc/stargazer/remote_nas.conf
Password = тут_ваш_пароль_rscriptd
UserParams=Cash Tariff
Port = 9999
</Module>

Також потрібні увімкнені опції RESET_AO та STGNASHUP у billing.ini для запобігання проблемам із реініціалізацією користувачів на віддалених NAS.

Також варто додати ваш сервер rscriptd в табличку безпечних хостів у firewall.conf з боку вашого біллінгу, якось ось так

${FwCMD} table 22 add 1.2.3.5

Про створення користувача з віддаленим доступом до бази

CREATE USER 'somelogin'@'%' IDENTIFIED BY 'somepassword';
GRANT ALL PRIVILEGES ON *.* TO 'somelogin'@'%' WITH GRANT OPTION;
purenasrscriptd.1768237741.txt.gz · Востаннє змінено: 2026/01/12 19:09 повз nightfly