Bylo oznámeno vydání Fedora Linuxu 40. Přehled novinek ve Fedora Workstation 40 a Fedora KDE 40 na stránkách Fedora Magazinu. Současně byl oznámen notebook Slimbook Fedora 2.
ČTK (Česká tisková kancelář) upozorňuje (X), že na jejím zpravodajském webu České noviny byly dnes dopoledne neznámým útočníkem umístěny dva smyšlené texty, které nepocházejí z její produkce. Jde o text s titulkem „BIS zabránila pokusu o atentát na nově zvoleného slovenského prezidenta Petra Pelligriniho“ a o údajné mimořádné prohlášení ministra Lipavského k témuž. Tyto dezinformace byly útočníky zveřejněny i s příslušnými notifikacemi v mobilní aplikaci Českých novin. ČTK ve svém zpravodajském servisu žádnou informaci v tomto znění nevydala.
Byla založena nadace Open Home Foundation zastřešující více než 240 projektů, standardů, ovladačů a knihoven (Home Assistant, ESPHome, Zigpy, Piper, Improv Wi-Fi, Wyoming, …) pro otevřenou chytrou domácnost s důrazem na soukromí, možnost výběru a udržitelnost.
Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.
Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.
Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.
Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.
Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].
Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).
V tomto zápisku rád sepsal zkušenosti se switchem NetGear GS105PE v síti, která je linuxově pozitvní a windowsově negativní (jinými slovy se jedná o domácí síť, ve které nemám k dispozici žádné m$ windows, pokud se třeba jedná o konfiguraci switche a podobně). To, co zde píši by se přitom mělo/mohlo vztahovat i na nejbližší podobné switche jako jsou třeba GS105Ev2 nebo GS108PE.
NetGear GS105PE vypadá na první pohled jako velmi šikovná pětiportová krabička. Krom toho, že je to switch gigabitový, pak jeho největší výhodou je, že je napájený z PoE (bohužel ale jinak napájet nelze) a zároveň ale umožňuje sám až na dvou portech PoE injektovat (nejlépe ovšem, když je napájen z 802.3.at, pak má dostatek šťávy, aby dal alespoň na jednom portu plné 802.af). A navíc switch podporuje VLAN a pár dalších funkcí z manageovatelných switchů (i když jej Netgear řadí do jakési mezikategorie, kterou nazývá „smart“ - je dnes ještě něco, co není „smart“ ). To by bylo z pozitiv tak víceméně všechno.
Bohužel tento switch má (respektive měl) i několik dosti závažných nesmyslů především co se jeho firmwaru a vzláště pak konfigurace týká. Především: switch původně neměl webové rozhraní a musel se nastavovat utilitou, která je windows only. Vzhledem k tomu, že si to někteří linuxáci nenechali líbít a snažili se napsat si takovou utilitu sami, zjistilo se, že komunikace mezi oficiální utilitou a switchem je z hlediska bezpešnost naprosto tragická. Konfigurace lítala po síti broadcastem po všech VLAN a sice s heslem v plaintextu. To Netgear posléze změnil tak, že heslo zaxoroval řetězcem „NtgrSmartSwitchRock“. Naštěstí se alespoň podařilo vytvořit pár utilitek, kterými šlo switch jakž-takž konfigurovat (viz tady, resp. tady a tady a tady) - teď vám ovšem neřeknu, která z nich funguje s firmwarem se zaxorovaným heslem a která ještě ne, ale v nejhoším to není až takový problém upravit.
Dalším problémem switche (stejně jako spousty dalších - i těch drahých switchů od Netgearu) je, že se snaží „volat domů“. Ať již použijeme jejich windows utilitu nebo v novější verzi firmware webové rozhraní (viz níže), pokaždé se switch snaží spojit se s Netgearem a vynutit si registraci. Vzhledem k tomu, že v kterési verzi firmware měl switch (dle nmap) otevřeny ale vyfiltrovaný port pro PPTP, vykládám si to tak, že ve chvíli, když zákazníkovi něco nefunguje, má technická potvora možnost se na switch připojit, aby se na to podívali, co přesně se děje. Jenže i tak je to dle mého hrozná zhůvěřilost a debilita! Naštěstí, zdá se, existuje způsob, jak minimalizovat škody. Kromě zakázání PPTP a dalších tunelovacích protokolů, dokud je člověk v síti nepotřebuje (což by asi měla být tak jak tak samozřejmost dobrého zabezpečení sítě), zdá se pomůže blokovat v síti na úrovni DNS adresu my.netgear.com
. Netgear se tak pokaždé vzteká, což by ale mohlo znamenat, že stačí blokovat jen tuto adresu .
„Volání domů“ zřejmě bude marketingovým rozhodnutím, které se asi jen tak nezmění. Nicméně, co se týká switche GS105PE, tak šlo v uplynulé době pozorovat velmi výrazný posun k lepšímu. Nejprve se ve verzi firmware objevilo webové rozhraní, které dokonce (oproti jiným switchům z dílny Netgearu) nemělo problém s běžným prohlížečem(TM). Trošičku problémem bylo, jak switch pod linuxem bez windowsovské utility upgradovat, ale i tady se našli lidé, kteří přišli, jak na to, a ještě jiní, kteří zbastlili utilitku, kterou je upgrade možné provést. Jenom bych chtěl upozornit na to, že utilitka neumí xorování hesla, takže je nejjednodušší pro upgrade heslo nastavit na prázdné. Tady je (je třeba mít nainstalováno atftp, konfigurace přímo ve skriptu):
#!/usr/bin/perl -w ####################################################################### # # NSDP firmware update script v.1.0 # Copyright 2012 Konstantin S. Vishnivetsky # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # # For contacts: # WEB: http://www.vishnivetsky.ru # E-mail: kos@vishnivetsky.ru # SkyPE: kvishnivetsky # ICQ: 328-468-511 # Phone: +7 913 774-7588 # ####################################################################### use strict; use utf8; use IO::Select; use IO::Socket; use Data::Dumper; ####################################################################### # !!! ATTENTION !!!! # Some settings are empty - fill it with YOUR settings, please. # !!! ATTENTION !!!! ############ Initial config begin ##################################### my $DEBUG = 1; my $selfmac = "\x00\x11\x22\x33\x44\x55"; # MAC adresa PC (00:11:22:33:44:55) my $swmac = "\x66\x77\x88\x99\xaa\xbb"; # MAC adresa switche (66:77:88:99:aa:bb) my $sw_ip = '10.10.10.10' ; # IP addresa switche (10.10.10.10) my $sw_fw = 'fw.bin' ; # Firmware in *.hex file my $psswd= "password" ; # !!!!! my $DST_ADDR = pack('CCCC', 255,255,255,255); # Global broadcast addr - use on single interface host #my $DST_ADDR = pack('CCCC', 10,10,10,255); # Local broadcast addr of your network - use on multiple interface host ############ Initial config end ####################################### my $seq = rand(65535); printf "Initializing switch for TFTP\n" if $DEBUG; FwUpdate(63321); printf "Waiting...\n"; sleep(5); printf "Sending file %s via TFTP to %s\n", $sw_fw, $sw_ip if $DEBUG; `atftp -p --verbose --trace -l $sw_fw -r $sw_fw $sw_ip`; exit 0; sub FwUpdate { my $SRC_PORT = shift; my $sock = IO::Socket::INET->new( Proto => 'udp', LocalAddr => '0.0.0.0', Broadcast => 1, LocalPort => $SRC_PORT, ReuseAddr => 1 ) or die "Can't bind : $@\n"; my $select = IO::Select->new($sock); sendFwUpdate($sock, $seq++, $selfmac, $swmac, $psswd); my $isAlive = 1; while($isAlive) { my @ready = $select->can_read(5); if (@ready) { my $data = undef; my $from = recv($sock, $data, 1500, 0) || die "recv: $!"; my($port, $from_addr) = sockaddr_in($from); my @hexdata = unpack("C*", $data); printf "<< %s\n", join(' ', map(sprintf("0x%.2x", $_), @hexdata)) if $DEBUG; parseNSDP($data); $isAlive = 0; } else { printf STDERR "Timeout!\n"; $sock->close(); exit -1; } }; $sock->close(); } sub sendFwUpdate { my $sock = shift; my $seq = shift; my $selfmac = shift; my $swmac = shift; my $password = shift; my $msg = pack('nC6a6a6Sna4N', 0x0103, 0x00,0x00,0x00,0x00,0x00,0x00, $selfmac, $swmac, 0x0000, $seq, "NSDP", 0x0000); $msg .= pack('nna'.length($password), 0x000a, length($password), $password); # TLV with password $msg .= pack('nnC', 0x0010, 0x0001, 0x01); # DHCP mode On|Off $msg .= pack('nn', 0xffff, 0x0000); # trailer my @hexdata = unpack("C*", $msg); printf ">> %s\n", join(' ', map(sprintf("0x%.2x", $_), @hexdata)) if $DEBUG; my $dst = sockaddr_in(63322, $DST_ADDR); $sock->send($msg, 0, $dst) or die "send: $!"; }; sub parseNSDP { my $data = shift; my($ctype, $reserved, $selfmac, $dstmac, $reserved1, $seq, $sign, $reserved2) = unpack('na6a6a6a2na4Nn', $data); my @selfmac_ = unpack('C6', $selfmac); my @dstmac_ = unpack('C6', $dstmac); printf "ctype=%.4x\n", $ctype if $DEBUG; printf "selfmac=%s\n", join(':', map(sprintf("%.2x", $_), @selfmac_)) if $DEBUG; printf "dstmac=%s\n", join(':', map(sprintf("%.2x", $_), @dstmac_)) if $DEBUG; printf "seq=%.4x\n", $seq if $DEBUG; printf "sign=%s\n", $sign if $DEBUG; };
Utilitka funguje tak, že se switchi pošle jistý packet a switchi je pak možné firmware poslat přes normální TFTP. Dobrou zprávou je, že ve kterési další verzi firmware lze switch do TFTP módu nastavit přes webové rozhraní a firmware do něj nalít jednoduše pomocí:
atftp -p --verbose --trace -l $FW -r fw.bin $SW_HOST
, kde $FW
je soubor s firmware a $SW_HOST
je ip adresa switche. Nejlepší na tom je, že ani to už není v poslední verzi firmware (1.5.*) nutné. Tento firmware je sice nutno nahrávat nadvakrát - bootloader je zvlášť (čtěte pozorně release-notes), nicméně nakonec tu máme switch, který lze updatovat snadno pomocí webového rozhraní (viz screenshot). Mimochodem, v poslední verzi firmware je možné také vypnout konfiguraci pomocí oné windowsoidní utility úplně (a navíc údajně Netgear tentokrát nasadil „skutečné šifrování“ hesla - popravdě, mně už je to jedno, své switche ovládám nyní jen přes web ).
Zdá se tedy, že alespoň v některých věcech se Netgear poučil ze svých chyb a vývoj firmware GS105PE se ubírá správným směrem. Se šmírováním asi bohužel nic nenaděláme. Zbývá ale jedna věc, která dost vadí ve chvíli, kdy má člověk v sítí více VLAN - switch poslouchá na všech VLAN a pokud si IP adresu žádá dynamicky přes DHCP, pak rozesílá DHCP dotazy přes všechna rozhraní a ve svému důsledku si nastaví adresu z náhodné VLAN. Pochopitelně nejlepší v takovém případě je nastavit adresu na statickou, na což ovšem člověk při nastavování ne vždy zavčas myslí a pak hledá jen, ve kterém segmentu sítě se mu switch usadil. Pro tento případ stačilo blokovat příchozí DHCP packety ze switche a povolit je pouze z VLAN, ze které si to přeji, asi nějak takto (všechny VLAN routuje přes stejný router):
# xx:xx:xx:xx:xx:xx == MAC adresa switche iptables -t raw -A PREROUTING -p udp --dport 67 -m mac --mac-source xx:xx:xx:xx:xx:xx -i $VLAN_SWITCH_ADMIN_IF -j ACCEPT iptables -t raw -A PREROUTING -p udp --dport 67 -m mac --mac-source xx:xx:xx:xx:xx:xx -j DROP
Pravda, je to jen narovnávák na vohejbák, ale lepší než drátem do voka. Samozřejmě ideální by bylo, kdyby switch umožňoval nastavit VLAN pro management, jak to má u dražších modelů, ale moc tomu nevěřím, že by do toho NetGear šel...
Tiskni Sdílej:
switchová část umí podstatně víc věcí než switch v RB450GTo rozhodně, ale jak už tu někdo psal, mě to doma stačí .
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:01.1 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:01.2 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:06.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:1c.0 PCI bridge: Intel Corporation DH89xxCC PCI Express Root Port #1 (rev 08) 00:1c.1 PCI bridge: Intel Corporation DH89xxCC PCI Express Root Port #2 (rev 08) 00:1c.2 PCI bridge: Intel Corporation DH89xxCC PCI Express Root Port #3 (rev 08) 00:1c.3 PCI bridge: Intel Corporation DH89xxCC PCI Express Root Port #4 (rev 08) 00:1d.0 USB controller: Intel Corporation DH89xxCC USB2 Enhanced Host Controller #1 (rev 08) 00:1f.0 ISA bridge: Intel Corporation DH89xxCC LPC Controller (rev 08) 00:1f.2 SATA controller: Intel Corporation DH89xxCC 4 Port SATA AHCI Controller (rev 08) 00:1f.3 SMBus: Intel Corporation DH89xxCC SMBus Controller (rev 08) 00:1f.7 System peripheral: Intel Corporation DH89xxCC Watchdog Timer (rev 08) 01:00.0 Co-processor: Intel Corporation Device 0434 (rev 21) 01:00.1 Ethernet controller: Intel Corporation DH8900CC Series Gigabit Fiber Network Connection (rev 21) 01:00.2 Ethernet controller: Intel Corporation DH8900CC Series Gigabit Fiber Network Connection (rev 21) 07:00.0 Unassigned class [ff00]: Juniper Networks Device 0062 (rev 01) 08:00.0 Unassigned class [ff00]: Juniper Networks Device 0063 (rev 01) 09:00.0 Ethernet controller: Broadcom Corporation Device b854 (rev 03):)