Článek prozatím neobsahuje:
- aby Glowing Bear běžel na pozadí (screen v LXC kontejneru nejde)
- SSL certifikát pro neveřejnou IP adresu
Požadavky:
V tomto návodu v Debian LXC kontejneru si ukážeme
Proč je dobré použít kontejner se můžeš dočíst ve článku: https://www.turris.cz/doc/cs/public/lxc
Pro stažení zavislostí je nutné, aby ses přihlásil na SSH
, které běží ve tvém routeru a zkopíroval tento příkaz
apt-get install cmake pkg-config libncursesw5-dev libcurl4-gnutls-dev zlib1g-dev libgcrypt20-dev libgnutls28-dev gettext ca-certificates libaspell-dev python-dev libperl-dev ruby2.3-dev liblua5.3-dev tcl-dev guile-2.0-dev asciidoctor libcpputest-dev
apt-get build-dep weechat
V době psaní článku je aktuální verze: 1.8
Není vhodné používat starší verze, protože od verze 0.3.3 do 1.7.1 se nachází bug, který ti může shodit weechat. Více zde
wget https://weechat.org/files/src/weechat-1.8.tar.gz
Rozbalení archívu .tar.gz
tar -xvzf weechat-1.8.tar.gz
Nyní přejdeme do rozbalené složky:
cd weechat-1.8
mkdir build cd build cmake .. make make install
mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory make make install
Kompilace trvá zhruba 2 minuty, jak na Turris 1.x, tak také na Turris Omnia.
Prvotní vytvoření konfiguračních souborů:
cd /usr/local/bin/weechat
/save
a potom hned
/quit
Nyní ve složce /rootfs/root
najdeme skrytou složku .weechat a v ní si můžeš přidat např. na jaký server se chceš připojovat, jakou chceš mít přezdívku na IRC serveru atd.
/server add freenode chat.freenode.net
/set irc.server.freenode.username "Moje přezdívka" /set irc.server.freenode.realname "Moje pravé jméno"
/set irc.server.freenode.nicks "mojeprezdivka,mojeprazdivka2,mojeprazdivka3,mojeprazdivka4,mojeprazdivka5"
/set irc.server.freenode.autoconnect on
/set irc.server.freenode.addresses "chat.freenode.net/7000" /set irc.server.freenode.ssl on
/msg NickServ REGISTER heslo tvujemail@priklad.cz
například pro automatickou identifikaci (= přihlášení uživatele)
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
/set irc.server.freenode.autojoin "#kanal1,#kanal2"
/connect freenode
Po dokončení nastavení je nutné napsat /save, aby se ti to vše uložilo do konfiguračních souborů
Turris 1.x
wget 'https://raw.githubusercontent.com/BKPepe/scripty-turris/master/weechat' -O /etc/init.d/weechat chmod +x /etc/init.d/weechat
Omnia:
wget 'https://raw.githubusercontent.com/BKPepe/scripty-turris/master/weechat' -O /etc/init.d/weechat chmod +x /etc/init.d/weechat
Pokud si nainstaloval weechat do jiného adresáře je nutné si script upravit.
Protože mně nevyhovuje se neustále připojovat do SSH a chatovat přímo ze shellu, tak používám webový klient Glowing Bear.
Glowing Bear můžeš najít na adrese: https://www.glowing-bear.org/
Prvně ve weechatu je nutné vytvořit unencrypted relay:
/relay add weechat 9001 /set relay.network.password tvoje_heslo_pod_kterym_se_budes_prihlasovat_do_weboveho_rozhrani
Pokud neplánuješ hostovat Glowing Bear u sebe a odpadne ti starost o aktualizace, neboť vyvojáři Glowing Bear se o to stará a ty to můžeš bezplatně využívat. Je to od velice vstřícný krok a rovnou přejdi na krok:
SSL Weechat & Glowing Bear
Přeci jenom pokud chceš hostovat Glowing Bear u sebe. Rozhodně ti v tom nebudu bránit a ukážu ti jak na to.
git clone https://github.com/glowing-bear/glowing-bear cd glowing-bear
Jednoduchý webový server, kde budeš mít Glowing Bear zapneš pomocí:
python -m SimpleHTTPServer
Glowing Bear nyní najdeš na http://ipadresatvehokontejneru:8000 dokud nezavřeš SSH klienta.
Pokud máš svojí vlastní doménu a veřejnou IP adresu, tak tento krok přeskoč a přejdi na: Let's Encrypt certifikát
mkdir -p ~/.weechat/ssl cd ~/.weechat/ssl
Bohužel LE certifikát nelze použít bez vlastní domény a veřejné IP adresy od tvého internetového providera. Přihlaš se do webhostingu, kde máš svojí doménu a vytvoř si subdoménu a její DNS záznam přesměruj na svojí veřejnou IP adresu. Případně si můžeš založit subdomény zdarma například od poskytovatele jako je afraid
U registrátora domény si najdi „DNS záznamy“ a přidej DNS záznam, aby vypadal např. takto
Přesměrování portu tzv. port forwarding je nutné provést v LuCI: Síť → Firewall → Přesměrování portů
Vytvoříš nové přesměrování, aby vypadalo takto:
Potom se můžeš pustit na instalaci Let's Encrypt certifikátu.
apt-get install certbot
Vytvoř si složku ssl, která se bude nacházet ve skryté složce .weechat
mkdir -p ~jmenouzivatele/.weechat/ssl
Nyní vytvoř LE certifikát pro tvojí subdoménu/doménu (v mém případě to je subdoména: irc.weechat.cz)
certbot certonly --standalone -d irc.weechat.cz
Vyzve nás to k zadání emailu, který je používán v případě urgentní obnovy nebo v případě bezpečnostních upozornění Potom potvrdíme licenční podmínky pomocí klávesy A a zmáčkneme enter. Nyní se nás to ptá, zda chceme sdílet naší emailovou adresu s nadací: Electronic Frontier Foundation a budou nám posílat emaily ohledně zabezpečení webu, chránění uživatelů a budou bránit digitální práva. Volbu nechám na tobě. [Y]es/[N]o
Pokud se ti objeví tato chyba:
Type: connection Detail: DNS problem: NXDOMAIN looking up A for irc.weechat.cz
Tak to znamená, že si zapomněl přidat DNS pro svojí subdoménu/doménu. Vrať se a opakuj tento krok případně zkontroluj tento krok: #Nastavení DNS záznamu pro doménu
Pokud je vše v pořádku, tak bys měl mít tento výstup v konzoli:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Obtaining a new certificate Performing the following challenges: tls-sni-01 challenge for irc.weechat.cz Waiting for verification... Cleaning up challenges Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pem IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/irc.weechat.cz/fullchain.pem. Your cert will expire on 2017-08-18. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
V Important Notices najdeš cestu, kde se ti certifikát a klíč uložil.
Nyní certifikát a klíč přesuneme do složky, kterou jsme vytvořili v minulém kroku:
cat /etc/letsencrypt/live/TVOJESUBDOMENA/{fullchain,privkey}.pem > ~jmenouzivatele/.weechat/ssl/relay.pem chown -R username:username ~username/.weechat/ssl/
Nyní nastavíme SSL relay, abychom se mohli šifrovaně připojit do Weechatu.
/set relay.network.password y0ur_StRonG-pa$sw0rd:of*choice /relay sslcertkey /relay add ssl.weechat 9001
Teď se vrátíme zpátky k LE, protože sice je certifikát zadarmo, ale vydrží pouze 3 měsíce, proto nám je nutné použít automatická obnova certifikátu, protože pokud si certifikát neobnovíš, tak se nebudeš moct přihlásit na stránce Glowing Bear
Budeme k tomu potřebovat administrační rozhraní routeru LuCI
, kde si naplánujeme úlohu. Podobně jako v tomto článku: https://www.turris.cz/doc/cs/public/cron_automaticke_vypinani_wifi
Nastavíme si, aby každý čtvrtek ve 12:39 obnovil LE certifikát:
39 12 * * 4 /usr/local/sbin/renew.sh
Nyní si vytvoříme soubor renew.sh, který umístíme do /usr/local/sbin Obsah souboru renew.sh bude vypadat takto:
#!/bin/bash certbot renew -q cat /etc/letsencrypt/live/irc.weechat.cz/privkey.pem \ /etc/letsencrypt/live/irc.weechat.cz/fullchain.pem > \ ~username/.weechat/ssl/relay.pem chown username ~username/.weechat/ssl/relay.pem
Soubor je nutné si pozměnit podle tvé domény/subdomény a případně také cestu, kde máš nainstalovaný weechat.
Nyní máme hotovo!
Již brzy.
It's possible to connect to slack using weechat. According to this site: https://wiki.archlinux.org/index.php/WeeChat
Pokud se někdy rozhodneš odinstalovat Weechat, stačí odstranit dvě složky weechat
a skrytou složku .weechat
(která obsahuje nastavení pro relay, tvoje nešifrovaná/zašifrovaná hesla)
Obě složky by se měly nacházet v /mnt/hdd/lxc-containers/debian/rootfs/root
,kde také najdeš Glowing Bear. Ten také nezapoměň smazat.
Můžeš využít také program WinSCP
nebo pomocí PuTTY
se můžeš procházet složkami na tvém Turrisu pomocí příkazu
apt-get install mc
a MC
spustíš pomocí příkazu:
mc
Autorem článku je: Josef Schlehofer
Pokud je ti něco nejasné, tak neváhej a kontaktuj autora. Rád ti to vysvětlí a případně pomůže.
Můžeš se také na něj obrátit prostřednictvím soukromé zprávy na Turris fóru