Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 4.5.0. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.
Byl vydán Mozilla Firefox 138.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 138 je již k dispozici také na Flathubu a Snapcraftu.
Šestnáctý ročník ne-konference jOpenSpace se koná 3. – 5. října 2025 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytvářejí všichni účastníci, se skládá z desetiminutových
… více »Richard Stallman přednáší ve středu 7. května od 16:30 na Technické univerzitě v Liberci o vlivu technologií na svobodu. Přednáška je určená jak odborné tak laické veřejnosti.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.04.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
TmuxAI (GitHub) je AI asistent pro práci v terminálu. Vyžaduje účet na OpenRouter.
Byla vydána nová verze R14.1.4 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek i s náhledy v poznámkách k vydání. Podrobný přehled v Changelogu.
Bylo vydáno OpenBSD 7.7. Opět bez písničky.
V Tiraně proběhl letošní Linux App Summit (LAS) (Mastodon). Zatím nesestříhané videozáznamy přednášek jsou k dispozici na YouTube.
Příkaz ssh (stejně jako i další související programy) čte globální konfiguraci z /etc/ssh/ssh_config a uživatelskou konfiguraci z ~/.ssh/config. Poslední slovo mají parametry příkazové řádky.
Globální i uživatelský soubor se skládá ze sekcí podle jednotlivých serverů. Sekce začínají direktivou Host, za kterou následuje název serveru, který zadáváte jako parametr ssh. Nastavení, která mají platit pro všechny servery, patří do sekce Host *.
Pro začátek vám ukáži, jak si ulehčit zadávání serverů s dlouhým názvem a alternativním portem.
cat ~/.ssh/config Host prace HostName server.oddeleni.example.net User uzivatel_b00 Port 1111 $ ssh prace
Přečtěte si článek Bash: chytré doplňování od Michala Vyskočila (nebo se podívejte po dalších zdrojích v odkazech na konci článku) a nastavte si doplňování příkazů i pro OpenSSH.
OpenSSH umí doplňovat názvy SSH serverů po stisku tabulátoru podle sekcí v konfiguraci a ~/.ssh/known_hosts (seznam známých serverů a jejich klíčů).
$ ssh p<tab>
SSH přenosy můžou být datově náročné. Pokud jsou oba počítače rychlé a práci zdržuje kapacita linky mezi nimi, může pomoct zapnutí komprese přepínačem -C.
$ ssh -C uzivatel@example.net
Alternativně můžete nastavit kompresi v konfiguračním souboru ~/.ssh/config.
Host * Compression yes
Komprese musí být povolena na serveru. Výchozí nastavení OpenSSH serveru (/etc/ssh/sshd_config) ji odkládá do úspěšného dokončení autentizace.
Compression delayed
Jedním z takových datově náročnějších použití SSH je spouštění vzdálených grafických aplikací (zapíná se přepínačem -X). Zkuste si takhle na serveru pustit nejdříve jednodušší aplikace a pak zkuste třeba Inkscape.
$ ssh -C -X uzivatel@example.net xclock $ ssh -C -X uzivatel@example.net inkscape
Opět můžete upravit konfiguraci a nastavit, pro které servery chcete používat X Forwarding automaticky.
Host xserver HostName server.example.net ForwardX11 yes
Spouštění grafických aplikací musí být povolené v konfiguraci SSH serveru (což většinou je).
X11Forwarding yes
Přenosy souborů zajišťuje SFTP protokol (nebo starší SCP protokol). Oba se používají ve spojení s SSH. K dispozici jsou dva konzolové programy: scp (ovládá se podobně jako cp (relativní cesty na vzdáleném stroji se vztahují k domovskému adresáři) a sftp (nabízí podobné rozhraní jako klasický příkaz ftp).
$ scp clanek.html uzivatel@example.net: $ scp clanek.html uzivatel@example.net:work/ $ scp uzivatel@example.net:/etc/hosts hosts.example $ scp hosts.example root@example.net:/etc/hosts $ sftp uzivatel@example.net
Přenos souborů pomocí SSH (a SFTP) je podporován mnoha grafickými aplikacemi. Patří mezi ně všechny aplikace založené na KDE (KIO), lepší správci souborů, systémy pro správu verzí a další. Za zmínku stojí i WinSCP (nápadně podobný Total Commanderu), který se hodí, pokud se potřebujete k souborům dostat z Windows nebo po někom chcete, ať vám uloží soubory do počítače.
SFTP subsystém musí být nastaven na serveru (většinou je).
Subsystem sftp /usr/lib/misc/sftp-server
Pro pohodlnější práci se někdy hodí připojit si vzdálený adresář do lokálního filesystému. K tomu slouží FUSE a na něm postavený sshfs (který používá SFTP protokol). Nainstalujte si ho a zkuste připojit nějaký vzdálený adresář (to můžete i jako běžný uživatel, pokud vám přípojný bod patří). Samozřejmě můžete vzdálený filesystém zase odpojit.
$ mkdir pripojny_bod $ sshfs uzivatel@example.net:/adresar/ktery/chcete pripojny_bod $ ls pripojny_bod $ fusermount -u pripojny_bod $ rmdir pripojny_bod
I když je váš počítač za IP maškarádou (často zjednodušeně nazývanou NAT), můžete pomocí SSH připojit váš lokální disk do adresáře na serveru (tzn. opačně než v předchozím příkladu). Využívá se k tomu přesměrování portů pomocí SSH, kterým se bude zabývat příští článek.
Pokud chcete zpřístupnit nějaký adresář při startu systému, využijte konfigurační soubor /etc/fstab.
Pokud root nemá ssh klíč, měli byste ho vygenerovat (aby vše fungovalo, nesmí být klíč chráněný passphrase). Na straně serveru pak doporučuji založit pro tyto účely samostatný účet a přidat mu veřejný klíč serveru. Tentokrát výjimečně provádíme všechny příkazy za roota. Ten poslední je jen pro budoucí kontrolu.
# ssh-keygen -t dsa -N '' # scp /root/.ssh/id_dsa.pub root@example.net:root_id_dsa.pub # ssh root@example.net root@example.net# adduser ssh_share --system --home /data --shell `find /usr -iname sftp-server | head -1` --group root@example.net# mkdir -p ~ssh_share/.ssh root@example.net# cat /root/root_id_dsa.pub >> ~ssh_share/.ssh/authorized_keys root@example.net# touch ~ssh_share/funguje_to
Samozřejmě za adresář /data můžete dosadit, co chcete. Teď vyzkoušíme, jestli je konfigurace v pořádku. Všechny příkazy voláme za roota na klientovi a musí projít bez zadávání hesla nebo passphrase.
# mkdir test_sshfs # sshfs ssh_share@example.net: test_sshfs # ls test_sshfs funguje_to # fusermount -u test_sshfs # rmdir test_sshfs
Vypsání souboru funguje_to ukazuje, že vše funguje, jak má. Už zbývá jen přidat příslušný řádek do /etc/fstab.
sshfs#ssh_share@example.net: /mnt/data fuse allow_other 0 0
Místo /mnt/data můžete vybrat přípojný bod, který se vám hodí. Volba allow_other znamená, že bude filesystém čitelný i pro ostatní uživatele.
# mount -a
Pokud vše proběhlo v pořádku, gratuluju vám k úspěšnému spuštění síťového filesystému na bázi SSH. V některých případech je použití sshfs jednodušší a účelnější než konfigurace plnohodnotného síťového filesystému.
Další aplikace zabezpečují pomocí SSH svoji komunikaci. Systém pro správu verzí Git používá SSH jako výchozí protokol pro operace se vzdálenými repozitáři. Program rsync pro synchronizaci vzdálených adresářů standardně také používá SSH ke spojení se vzdálenými stroji.
Příště si zkusíme prostřednictvím OpenSSH přesměrovávat TCP porty (jak jsem už slíbil) a také spojit fyzické sítě ve VPN.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
ForwardX11 yes
ješte:
ForwardX11Trusted yes
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
sftp-server
u nefunguje scp
, protoze scp
neni nic jineho nez vstup presmerovany pres pipe (ssh
) a vystup do remote shellu. upozornuji na slovo 'vyhradnim', ctenar muze sam vyzkouset pri pouziti ForceCommand
:)
hehe... kolega mi rekl, "kdo pouziva scp...?"... wow, ja tedy osobne pouzivam, vetsinou pouze scp
:)
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
na konci I. dilu autor zadal o tipy na temata, dostal jich kopec... bohuzel zustal u zakladu, ktery zna kazdy uzivatel unixu, co neklika, jak zbesily
Vy v tom článku někde vidíte napsáno, že je tento díl poslední? Já tam naopak na konci vidím zmínku o tom, co bude v příštím dílu, očekával bych tedy, že nejméně jeden ještě bude. Takže by asi bylo lepší s hodnocením, u čeho autor zůstal nebo nezůstal, počkat až na konec seriálu…
jinak, co jsme se dozvedeli? nic zajimaveho... skoda.Proč to množné číslo? Mluv za sebe laskavě. Nebo je vás tam víc? Víc machýrků co už všechno uměj, tak čtou abclinuxu?
Takže mi přišlo o moc lepší nainstalovat tam sftp modul pro sshd a odinstalovat vsftpd,který bral zbytečně 6MB RAM - ušetřil jsem 6 MB RAM :)
sftp je temer o rad pomalejsi. coz se vsak u beznych operaci neprojevuje.
V jakém smyslu je "téměř o řád pomalejší"?
AllowUsers root@localhost !root
nebo DenyUsers root@!localhost
bohužel nefungují.
Stejně tak omezení uživatele pomocí direktivy Match mi nepomůže, protože nemůžu omezit nic významného.
Neřešil jste někdo podobný problém? Rád bych to vyřešil přímo v sshd, vím že to můžu udělat třeba přes pam_access, ale tohle by přece SSH daemon mohl zvládnout...
Radek
Match
v man sshd_config
a posledni verze OpenSSH to rozsiruje i pro definovani zpusobu autentifikace.
Match Introduces a conditional block. If all of the criteria on the Match line are satisfied, the keywords on the following lines override those set in the global section of the config file, un- til either another Match line or the end of the file. The argu- ments to Match are one or more criteria-pattern pairs. The available criteria are User, Group, Host, and Address. Only a keyword. Available keywords are AllowTcpForwarding, Banner, ForceCommand, GatewayPorts, GSSApiAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, PasswordAuthentication, PermitOpen, RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset, X11Forwarding, and X11UseLocalHost.
Available keywords are AllowTcpForwarding, ForceCommand,GatewayPorts, PermitOpen, X11DisplayOffset, X11Forwarding, and X11UseLocalHost.
Nevím proč to tak je, ale obávám se, že balíček s novou verzí pro všechny verze Fedory asi nebude. A použití nedistribučních balíčků bych se rád vyhnul. Na druhou stranu, pokud už se rozhodnu použít jiný, tak si tam můžu přidat i patch na podporu LDAPu, který by se mi tam docela taky hodil $ uname -sr ; ssh -V OpenBSD 4.1 OpenSSH_4.6, OpenSSL 0.9.7j 04 May 2006
/etc/hosts.allow
, pokud je sshd
zkompilovano proti TCPWrappers
$ ldd /usr/sbin/sshd | grep wrap libwrap.so.0 => /lib/libwrap.so.0 (0xb7f54000)
ssh
? Pokud ne, stačí PermitRootLogin no
. Pokud z nějakého důvodu potřebujete povolit lokální přihlášení roota přes ssh, asi bude dobré prozdradit důvod, proč to tak potřebujete (třeba se najde jiné řešení).
su
. V současnosti řešíme administraci serverů tak, že se přihlásí uživatel a pak si udělá su. K tomu musí znát rootovské heslo. Já bych rád, aby se to udělalo tak, že se uživatel přihlásí svým klíčem a potom udělá ssh root@localhost
a root bude mít nastavené klíče, které se smí přihlásit. Půjde tak lépe hlídat kdo se smí přihlásit a lépe půjde odebrat někomu možnost přihlásit se jako root, než mu mlátit do hlavy, aby zapoměl heslo. PermitRootLogin
without-password
a to su zůstane jako ta nouzovka. Ale pak se půjde ze sítě přihlásit jako root rovnou, bez použití neroot uživatele... Ale to by možná nemuselo zas až tak vadit...
Radek
pam_wheel
, které přesně k tomuhle slouží?
sudo
je dobre, ale ne vselekem. jestli ma nekdo blbe napsany /etc/sudoers
, tak nekdo muze z povoleneho programu ziskat root shell a je po logovani :)
takze, bud verime, a mame tu nejakou dohodu s uzivateli... nebo holt se podivame po paranoidnim resenim - tj. auditing a RBAC a MAC.
sudo -s
dostaneme root shell a uživatel zadává vlastní heslo. Ale pravidla bezpečnosti stejně říkají, že pokud měl někdo přístup k root shellu, tak jediná možnost, jak zajistit bezpečnost po jeho odchodu je přeinstalovat počítač...
-Y Enables trusted X11 forwarding. Trusted X11 forwardings are not subjected to the X11 SECURITY extension controls.vsetko je v manuale