Moje pracovní prostředí a oblíbený software

Už dlouho jsem nic nepublikoval, žádné rozumné téma mne momentálně nenapadá, a tak tedy zkusím alespoň popsat, ze kterých komponenet se skládá moje pracovní prostředí.

Jádrem většiny pracovních prostředí je grafické rozhraní. U mne tomu nebude jinak. Nepoužívám však molochy jako KDE či Gnome, dokonce ani odlehčené varianty jako Xfce či Fluxbox. Používám dlaždicového správce oken. Pěkný název, že? Ve své podstatě je to správce oken, který okna (klienty) neumisťuje libovolně, ale jako dlaždice – vedle sebe. Dlaždicoví správci oken jsou charakterističtí také tím, že většinu operací s okny i se správcem samotným umožňují provádět klávesnicí, bez potřeby používat hlodavce.

Dlaždicových správců oken je samozřejmě celá řada, já používám Awesome (desktop) a Wmii (laptop). V případě Awesome musím podpořit odkazem jeden báječný web plný mnoha zajímavých informací a také domov pěkně napsaných konfiguráků pro Awesome (ty se mimochodem píší v jazyce LUA). Oba dva tito správci mají výhodu v tom, že jsou schopni používat i plovoucí režim (umisťování oken „tradičním“ způsobem), což umožňuje používat některé špatně napsané, defektní aplikace, které si s dlaždicovým uspořádáním oken neumí poradit.

A proč že používám dlaždicového správce oken místo nějakého WIMP prostředí jako KDE nebo Gnome? Efektivita, rychlost, pohodlí, možnost zapomenout na myš a používat jen klávesnici.

Dobrá, to bychom měli grafické prostředí. Ale žádné grafické prostředí se neobjede bez aplikací. Pro linuxáře je obvykle primárním nástrojem příkazová řádka, a s tou související terminál. Já používám urxvt s velmi pěkným neproporcionálním fontem Terminus. Jako e-mailový klient používám Claws mail a Mutt spolu s Fetchmailem a msmtp. V obou klientech používám GnuPG k podepisování a příležitostnému šifrování e-mailů.

Prohlížeč. Webový prohlížeč. Na Lynx mi asi neskočíte, že?. Ano, používám ho, ale jen zřídka, obvykle na nějakém serveru, kam jsem zrovna přihlášen. Na desktopu a laptopu používám Firefox, ale ne jen tak ledajaký Firefox. Používám Vimperator, plugin, který umožňuje Firefox ovládat jako Vim, který je zvláštní shodou okolností také mým oblíbeným textovým editorem. Dodávám, že ve Vimu jsem napsal mj. svoji bakalářskou práci (tedy s pomocí LaTeXu).

Co se týče přehrávače hudby, používám moc a mpd. Pro přehrávání videa používám smplayer. Vektorovou grafiku vytvářím a edituji v Inkscapu, bitmapovou zpracovávám v GIMPu. Fotografie spravuji pomocí DigiKam a negativy „vyvolávám“ za pomoci Ufrawu nebo nyní čerstvě pod GNU/GPL vydaného Rawtherapee. HDR vytvářím pomocí Qtpfsgui (ano, vím, příšerný název, ale fajn aplikace), panoramata za pomocí Autopano-siftu přepsaného do jazyka C (nemám rád Mono), Huginu a Enblendu.

Jelikož pracuji jako linuxový správce, a také se snažím trošku vyvíjet webové aplikace (dobrá, přiznávám, zatím jsem ještě žádnou slušnou nenapsal, ale chystám se na to), potřebuji nějakou tu virtualizaci a virtuální linuxové servery, kde mi běží vhodně nakonfigurované služby. Jelikož používám 64-bitový systém (viz 8GB RAM), moc mi tu nechodí VirtualBox OSE (svobodná verze VirtualBoxu od nyní mrtvého Slunce, které pohltila Vědma), takže používám KVM a Qemu. Virtuální mašiny spravuji přes SSH, qemu konzoli a Vinagre.

A co že používám na serverech? Debian, Apache, MySQL, PostgreSQL a PHP. Doufám, že v tomto případě mi snad odpustíte absenci odkazů. Ke sdílení projektového svazku s webovými aplikacemi používám NFS, ke vzdálenému přístupu na servery v domácí síti OpenVPN a ke správě všeho možného a nemožného OpenSSH a GNU Screen.

Tím bych tento článek zakončil. Zbytek zajímavého softwaru, který používám, si nechám na příště, pokud se k tomuto tématu ještě někdy vrátím. A co vy, používáte nějaký zajímavý svobodný software?

Záložní MX server v Postfixu

Jak funguje záložní MX server? Tak, že převezme poštu pro primární server, hodí si ji do fronty, a pak se v určitých intervalech snaží poštu opět doručit primárnímu serveru. Zprovoznění této funkcionality je velmi jednoduché, stačí modifikovat /etc/postfix/main.cf následovně:

1) ujistěte se, že v koloně smtpd_recipient_restrictions je umístěno permit_mynetworks před reject_unauth_destination, takto:

smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination

2) přidejte parametr relaydomains, který bude obsahovat proměnnou $mynetworks a seznam všech domén, pro které chcete daný server učinit záložním, tedy např:

relay_domains = $mydestination, shadow.cz

3) ujistěte se, že příslušné domény, pro které chcete daný server učinit záložním, nejsou uvedeny v mydestination, virtual_alias_domains či virtual_mailbox_domains

4) přidejte prázdný parametr relay_recipient_maps:

relay_recipient_maps =

A je hotovo. Jeden drobný problém ovšem stále zůstává – Postfix drží poštu ve frontě jen určitou dobu – pokud se tedy e-mail nepodaří doručit do této doby, je zahozen a je vygenerováno oznámení o nedoručení zprávy. Tuto dobu je možné ovlivňovat parametrem maximal_queue_lifetime. Výchozí hodnota je 5 dní (5d). Pokud byste chtěli tuto dobu prodloužit třeba na 14 dní, vložíte do výše uvedeného konfiguračního souboru následující řádku:

maximal_queue_lifetime = 14d

Nezapomeňte přidat MX záznam záložního serveru do DNS. Funkcionalitu doporučuji před nasazením otestovat někde nanečisto.

Doplňuji zdroj, ze kterého jsem vycházel a přeji happy hacking.

Co v Linuxu nikdy nedělat

Jak všichni velmi dobře víme, příkazová řádka v GNU/Linuxu je neuvěřilteně mocným nástrojem, který může být využit k ohromnému usnadnění práce, nebo k destrukci. Vyzkoušejte si svoje znalosti GNU/Linuxu a zkuste odhadnout, co vlastně následující destruktivní příkazy provádějí. Před tím, než se do toho pusím, zmíním obvyklou větu – doma to nezkoušejte.

  1. rm -rf --no-preserve-root /
  2. dd if=/dev/zero of=/dev/mem
  3. dd if=/dev/urandom of=/dev/sda bs=446 count=1
  4. dd if=/dev/sda of=/dev/sdb
  5. kill -9 1
  6. kill -2 1

U každého příkazu zkuste odhadnout, jak se systém zachová. Možnosti jsou následující (může jich platit i více naráz):

  1. dojde k rebootu
  2. systém po restartu už nenaběhne
  3. systém/jádro spadne
  4. dojde ke ztrátě dat
  5. nestane se vůbec nic

Odpovědi klidně pište jako komentáře. V pátek zveřejním příspěvek, který všechny tyto příkazy objasní. Zájemcům pošlu link mailem, aby nemuseli čekat.

Kritická zranitelnost v jádře Linuxu

A máme tu další díru v jádře velkou jako vrata, umožňuje získat rootovská práva neprivilegovaným uživatelům. Naštěstí tato zranitelnost postihuje jen systémy s určitým nastavením a příslušnou hrozbu lze zvrátit změnou parametru mmap_min_addr na nenulovou hodnotu.

Správcům serverů doporučuji provést rychlou kontrolu:

sysctl vm.mmap_min_addr

Pokud tento příkaz vrátí nenulovou hodnotu, pak na vás příslušné exploity nezafungují. Pokud vrátí nulu, zvyšte hodnotu ručně:

sysctl -w vm.mmap_min_addr="4096"

A následně zapište příslušné nastavení do konfiguráků, aby restart tuto hodnotu nevrátil zpět na nulu. Dlužno dodat, že některé programy mohou mít s tímto nastavením problémy (standardní serverový software však nejspíše žádný problém mít nebude – s výjimkou starší verze Qemu, který nepůjde spustit jinak než jako root). U desktopů může být problém s aplikacemi typu Dosbox (opět bez roota nepůjde spustit).

P.S. Z data publikace příspěvku nic neusuzujte – je chybné.

Zdroje:

(Řešení problému) Qemu, bridge, tap, oprávnění

Pokud se někdy setkáte s tím, že Qemu bude ze všech sil odmítat inicializovat /dev/tun/tap a vytvořit příslušný interfejs, zatímco pokud Qemu spustíte jako root, tak to zvládne bez problémů, mám pro vás řešení, jak to zvládnout bez nutnosti Qemu spouštět jako root – stačí binárce qemu přidat správnou capabilitu:

sudo setcap cap_net_admin=ep /usr/bin/qemu

Ubuntu: tohle by se u distra pro BFU nemělo dít

Vyšla nám už před nějakou dobou nová verze distribuce Ubuntu, v současné době prakticky jedna z nejoblíbenějších distribucí pro začátečníky a běžné uživatele. Naneštěstí zrovna vyšla v období, kdy se kolem grafických karet od Intelu dějí velké změny. Výsledkem jsou bohužel problémy padající na ty, kteří takovou kartu vlastní. To by samozřejmě nebylo nic hrozného, pokud by se ovšem o těchto problémech nevědělo dlouho před vydáním.

Celý příspěvek

Návod na restrictions v Postfixu

Poslední dobou příliš nestíhám psát články do blogu, tak zkusím alespoň odkázat na velmi pěkný návod a velmi obsáhlou dokumentaci, kde si můžete dohledat v návodu neprobrané volby. Přidám ještě trošku kratší dokument na stejné téma. Mohl bych také odkázat na vynikající knihu o Postfixu s názvem Postfix od autorů Ralf Hildebrandt a Patrick Koetter. Seženete ji přirozeně i v českém jazyce ve vašem oblíbeném knihkupectví.