Unofficial

BitchMyQnap

BitchMyQnap: IRC na vašem QNAP

Klienti, bot, server se službami, bouncer a FTP.

BitchMyQnap přináší na NAS kompletní sestavu IRC: klienty irssi a BitchX, bota Eggdrop s Tcl, server UnrealIRCd se službami Anope, bouncer ZNC a Pure-FTPd.

Balíček obsahuje programy. Projekt Editoru v Bucket & Code Server IDE přidává průvodce, který se zeptá na názvy a vaše hesla, zapíše konfigurace a spustí malou síť.

V App Center: (example) BitchMyQnap · Intel a AMD (x86_64) · QTS 6.0 nebo QuTS hero 6.0 či novější · freeware

Běžící síť na NASu

./irc.sh start

unrealircd: started

anope: started

znc: started

eggdrop: started

ftp: started

./irc.sh status

unrealircd: running (pid 10590)

anope: running (pid 10619)

znc: running (pid 10651)

eggdrop: running (pid 10683)

ftp: running (pid 10713)

Co je uvnitř

Seznam receptů uvádí tyto programy a sestavení doplní knihovny, které potřebují.

Klienti

irssi
terminálový klient IRC, s TLS
BitchX
klasický terminálový klient, s TLS

Bot

eggdrop
Eggdrop 1.10, bot pro IRC
tclsh
Tcl 8.6, skriptovací jazyk bota

Server a služby

unrealircd
UnrealIRCd 6, server IRC, s unrealircdctl
services
Anope 2.0: NickServ, ChanServ, OperServ a další

Bouncer

znc
ZNC 1.9 s webovým panelem; bez modulů Perl, Python a Tcl

FTP

pure-ftpd
Pure-FTPd s TLS
pure-pw
vlastní databáze uživatelů

Nástroje

busybox
chpst spouští každý program pod jeho vlastním uživatelem
screen
udrží klienta v běhu i po zavření terminálu

Jak to vypadá

Skutečné obrazovky z malé testovací sítě na NASu QNAP: kanál průvodce, jeho bot a dva klienti.

irssi: uživatel vstupuje do kanálu bitchmyqnap, s přezdívkami sysop a BitchBot
irssi přes TLS v kanálu průvodce, s operátorem a botem.
BitchX: statistiky serveru a vstup do kanálu bitchmyqnap
BitchX ve stejném kanálu.

Komu to pomůže

Chcete vlastní chat

UnrealIRCd a Anope vám dají registrované přezdívky a kanály na serveru, který sami provozujete, pro přátele nebo tým.

Na IRC jste celý den

ZNC zůstává připojený, i když počítač spí, a irssi běží v screen dál i po zavření terminálu.

Máte rádi boty

Eggdrop sedí ve vašem kanálu a rozšiřujete ho skripty v Tcl.

Instalace

  1. Jednou přidejte repozitář tohoto webu do App Center: tři kroky.
  2. V seznamu repozitáře najděte (example) BitchMyQnap a stiskněte Instalovat.
  3. Zapněte SSH v Ovládací panely › Síť & Služby souborů › Telnet / SSH.

Spuštění

BitchMyQnap nemá vlastní okno: spouštíte ho z terminálu. Přihlaste se přes SSH jako admin a spusťte klienta. Pro vlastní síť použijte projekt níže.

ssh admin@192.0.2.10                      # adresa vašeho NASu
irssi -c irc.example.com -p 6697 --tls    # libovolný server IRC přes TLS

Síť na tři příkazy

Balíček obsahuje programy a průvodce a spouštěč zůstávají v projektu Editoru BitchMyQnap, takže tato část potřebuje Bucket & Code. Sestavte a aktivujte aplikaci podle popisu níže a pak v terminálu Editoru spusťte:

make setup       # průvodce: názvy, vaše hesla, složka sítě
make start       # spustí programy sítě
make irc-status  # které z nich běží

Průvodce se zeptá na název sítě, názvy serveru a služeb, kanál, vaši přezdívku, přezdívku bota a na to, zda nastavit FTP. Vaše hesla uchovává jen jako hashe. Heslo spojení mezi UnrealIRCd a Anope a klíče cloak jsou náhodné.

Každý program běží jako uživatel 65534 a irc.sh pošle programu signál, jen když /proc ukazuje, že jeho vlastní binární soubor běží pod tímto uživatelem.

Porty běžící sítě

PortCo naslouchá
6667UnrealIRCd, IRC, na všech adresách
6697UnrealIRCd, IRC přes TLS, na všech adresách
9669UnrealIRCd, spojení služeb, jen na 127.0.0.1
9667ZNC, IRC přes TLS a webový panel, na všech adresách
9021, 9022-9031Pure-FTPd, řídicí a pasivní porty, na všech adresách

Po spuštění

  • Připojte klienta na port 6697 a /oper s vaší přezdívkou a heslem z vás udělá operátora IRC.
  • /msg NickServ REGISTER zaregistruje vaši přezdívku. Anope z ní udělá root služeb.
  • Pošlete botovi přes /msg zprávu hello: první, kdo řekne hello, se stane jeho vlastníkem.
  • Webový panel ZNC je na portu 9667 přes HTTPS a klient IRC se připojuje na stejný port s TLS.

Dobré vědět

  • UnrealIRCd, ZNC a Eggdrop odmítají běžet jako root. Chcete-li je spustit jen z balíčku, napíšete jejich konfigurace a vyberete uživatele sami.
  • Programy sítě se při restartu NASu zastaví. make start je znovu spustí.
  • V QuTS hero může ACL sdílené složky uzavřít složku uvnitř pro uživatele 65534. Průvodce to na konci zkontroluje a uzavřenou složku pojmenuje. Složka na vlastním svazku aplikace funguje.
  • BitchX začíná každý řádek dvěma 8bitovými znaky, které terminál UTF-8 neumí vykreslit. Obrázek výše je nechává prázdné.

Změňte to a sestavte znovu, kdykoli budete chtít

BitchMyQnap je příklad z Bucket & Code Server IDE, našeho bezplatného vývojového prostředí pro QNAP. Každý program zkompiluje ze zdrojového kódu přímo na vašem NASu a výsledek zabalí jako QPKG.

Z panelu

  1. V Bucket & Code otevřete Apps a potom kartu Examples. Pokud ještě nemáte prostředí pro sestavení, přidejte Ubuntu 24.04 builder (full).
  2. Stiskněte Use this example u BitchMyQnap (geek set 3). Aplikace se objeví se svými recepty a zatím není nic sestaveno.
  3. Stiskněte Build a potom Activate. Export vytvoří QPKG, jakmile je nainstalovaný toolchain QDK.

Z terminálu

Projekt Editoru BitchMyQnap má stejný seznam v souboru recipes.txt. Odeberte řádek nebo přidejte recept z knihovny a pak v terminálu Editoru spusťte:

make app        # vytvoří aplikaci z recipes.txt
make build      # sestaví ji a sleduje úlohu
make activate   # /usr/app/BitchMyQnap teď ukazuje na sestavení
make qpkg       # exportuje QPKG (vyžaduje toolchain QDK)

QPKG obsahuje programy aplikace. setup.sh a irc.sh zůstávají v projektu.

Stránka New app v App Builderu Bucket & Code Podívejte se, jak se to dělá v Bucket & Code Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware) 8 min na YouTube

Související stránky