PGSimCity (GitHub) je webová 3D vizualizace vnitřního fungování databázového systému PostgreSQL v podobě města. Vytvořena pomocí umělé inteligence.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.0 a 24.04-1.4. Nová verze 24.04-2.0 již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.
Byly zveřejněny informace o kritické zranitelnosti CVE-2026-64600 pojmenované RefluXFS (technické detaily) v XFS. Je tam již od verze Linuxu 4.11, tj. rok 2017. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel může editovat libovolný soubor, například klidně zrušit rootovské heslo v /etc/passwd. Videoukázka na Vimeo. V upstreamu je zranitelnost opravena.
OpenAI / ChatGPT má dnes výpadky (OpenAI Status, DownDetector).
Poskytovatel hostingu svobodných/open-source projektů Codeberg po hlasování na valné hromadě vydal stanovisko k využívání LLM. Kvůli vytěžování infrastruktury a rostoucím cenám hardwaru, ale také hrozbám pro spolupráci v komunitě se k LLM staví kriticky. Nebude poskytovat hosting projektů vytvářených LLM agenty.
Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.
Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.
AI tento rok naplno vtrhla do vývoje softwaru a výrazně ovlivňuje také open source projekty. Jiří Eischmann v příspěvku Jak mění AI open source na svém blogu rozebírá několik trendů, které v open source v poslední době v souvislosti s AI pozoruje, a jak tyto trendy svět otevřeného softwaru mění (Inflace projektů, Zahlcení kontroly, Klesající motivace zveřejňovat kód).
Evropská komise (EK) vyměřila americké internetové společnosti Google pokutu 890 milionů eur (21,5 miliardy Kč) za porušení unijního nařízení o digitálních trzích (DMA). Firma se podle unijní exekutivy provinila tím, že ve vyhledávači Google Search upřednostňovala vlastní služby a že podnikům ukládala omezení, která jim bránila nasměrovat spotřebitele k alternativním, často levnějším nákupním kanálům na platformě Google Play.
… více »Samsung na akci Galaxy Unpacked July 2026 (YouTube) představil své nové telefony Galaxy Z Fold8 Ultra, Fold8 a Flip8, hodinky Galaxy Watch Ultra2 a Watch9 a chytré brýle ve spolupráci s Gentle Monster a Warby Parker.
#!/usr/sbin/nft -f
# vlan10: 192.168.10.0/24 - LAN
# vlan20: 192.168.20.0/24 - DMZ
# vlan30: 192.168.30.0/24 - Guest network
# vlan100: 192.168.100.0/24 - servis / management network
# tun0: 192.168.40.0/24 - OpenVPN
# wg0: 192.168.50.0/24 - Wireguard VPN
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
# accept any localhost traffic
iif lo accept
# accept trafic originated from us
ct state established,related accept
# drop invalid packets
ct state invalid counter drop
# accept http, https from anywhere
tcp dport { 80,443 } accept
# accept OpenVPN clients from anywhere
udp dport 1194 accept
# accept WireGuard clients from anywhere
udp dport 5180 accept
# accept SSH only from my servis / management IPs
tcp dport ssh ip saadr 192.168.100.11 accept
tcp dport ssh ip saadr 192.168.100.12 accept
# accept icmp from anywhere
ip protocol icmp accept
# accept icmpv6 from anywhere
ip6 nexthdr icmpv6 accept
# meta nfproto ipv6 from anywhere
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 1 accept
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 255 counter accept
# count and reject everithing else
counter reject with icmpx type admin-prohibited
}
chain forward {
type filter hook forward priority 0;
}
chain output {
type filter hook output priority 0;
}
}
table ip nat {
chain prerouting {
type nat hook prerouting priority 100; policy accept;
iif "ens192" tcp dport 33891 dnat to 192.168.20.11:3389
iif "ens192" tcp dport 33892 dnat to 192.168.20.12:3389
}
chain postrouting {
type nat hook postrouting priority 100; policy accept;
ip saddr 192.168.10.0/24 oif "ens192" masquerade
ip saddr 192.168.20.0/24 oif "ens192" masquerade
ip saddr 192.168.30.0/24 oif "ens192" masquerade
ip saddr 192.168.40.0/24 oif "ens192" masquerade
ip saddr 192.168.50.0/24 oif "ens192" masquerade
ip saddr 192.168.100.0/24 oif "ens192" masquerade
}
}
chain forward {
type filter hook forward priority 0; policy drop;
iifname "vlan100" oifname "ens192" ct state related,established accept # vlan100 -> WAN
iifname "ens192" oifname "vlan100" accept # WAN -> vlan100
iifname "vlan101" oifname "ens192" ct state related,established accept # vlan101 -> WAN
iifname "ens192" oifname "vlan101" accept # WAN -> vlan101
iifname "vlan102" oifname "ens192" ct state related,established accept # vlan102 -> WAN
iifname "ens192" oifname "vlan102" accept # WAN -> vlan102
iifname "vlan103" oifname "ens192" ct state related,established accept # vlan103 -> WAN
iifname "ens192" oifname "vlan103" accept # WAN -> vlan103
iifname "vlan100" oifname "vlan101" ct state related,established accept # vlan100 -> vlan101
iifname "vlan100" oifname "vlan102" ct state related,established accept # vlan100 -> vlan102
iifname "vlan100" oifname "vlan103" ct state related,established accept # vlan100 -> vlan103
}
#!/usr/sbin/nft -f
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
# accept any localhost traffic
iif lo accept
# accept trafic originated from us
ct state established,related accept
# drop invalid packets
ct state invalid counter drop
# accept http, https from anywhere
tcp dport { 80,443 } accept
# accept OpenVPN clients from anywhere
udp dport 1194 accept comment "OpenVPN in"
# accept WireGuard clients from anywhere
udp dport 5180 accept comment "WireGuard in"
# accept SSH only from this IPs
tcp dport ssh ip saddr 10.255.255.32 accept comment "SSH in"
tcp dport ssh ip saddr 10.1.100.11 accept comment "SSH in"
tcp dport ssh ip saddr 10.1.100.12 accept comment "SSH in"
# accept icmp from anywhere
ip protocol icmp accept
# accept icmpv6 from anywhere
ip6 nexthdr icmpv6 accept
# meta nfproto ipv6 from anywhere
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 1 accept
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 255 counter accept
# count and reject everithing else
counter reject with icmpx type admin-prohibited
}
chain forward {
type filter hook forward priority 0; policy drop;
# povolím přístup na internet z vlan100
iifname "vlan100" oifname "ens192" accept # vlan100 to Internet
iifname "ens192" oifname "vlan100" ct state related,established accept # Internet to vlan100
# povolím přístup na internet z vlan101
iifname "vlan101" oifname "ens192" accept # vlan101 to Internet
iifname "ens192" oifname "vlan101" ct state related,established accept # Internet to vlan101
# povolím přístup z vlan100 do vlan101
# pokud se komunikace navazuje z vlan100
iifname "vlan100" oifname "vlan101" accept # vlan100 to vlan101
iifname "vlan101" oifname "vlan100" ct state related,established accept # vlan101 to vlan100
}
chain output {
type filter hook output priority 0;
}
}
table ip nat {
chain prerouting {
type nat hook prerouting priority 0; policy accept;
}
chain postrouting {
type nat hook postrouting priority 100; policy accept;
ip saddr 10.100.1.0/24 oif "ens192" snat 10.255.255.251
ip saddr 10.101.1.0/24 oif "ens192" snat 10.255.255.251
}
}
Předem děkuji.
iifname "vlan101" ip saddr 10.101.1.11 oifname "vlan100" accept
iifname "vlan100" ip daddr 10.101.1.11 oifname "vlan101" accept
Díky,
cat /etc/nftables.conf
#!/usr/sbin/nft -f
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
# accept any localhost traffic
iif lo accept
# accept trafic originated from us
# ct state established,related accept
# drop invalid packets
ct state invalid counter drop
# accept http, https from anywhere
tcp dport { 80,443 } accept
# accept OpenVPN clients from anywhere
udp dport 1194 accept comment "OpenVPN in"
# accept WireGuard clients from anywhere
udp dport 5180 accept comment "WireGuard in"
# accept SSH only from this IPs
tcp dport ssh ip saddr 10.255.255.32 accept comment "SSH in"
tcp dport ssh ip saddr 10.100.1.11 accept comment "SSH in"
tcp dport ssh ip saddr 10.101.1.11 accept comment "SSH in"
# accept icmp from anywhere
ip protocol icmp accept
# accept icmpv6 from anywhere
ip6 nexthdr icmpv6 accept
# meta nfproto ipv6 from anywhere
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 1 accept
icmpv6 type { nd-neighbor-advert, nd-neighbor-solicit, nd-router-advert} ip6 hoplimit 255 counter accept
# count and reject everithing else
counter reject with icmpx type admin-prohibited
}
chain forward {
type filter hook forward priority 0; policy drop;
# povolím přístup na internet z vlan100
iifname "vlan100" oifname "ens192" accept # vlan100 to Internet
iifname "ens192" oifname "vlan100" ct state related,established accept # Internet to vlan100
# povolím přístup na internet z vlan101
iifname "vlan101" oifname "ens192" accept # vlan101 to Internet
iifname "ens192" oifname "vlan101" ct state related,established accept # Internet to vlan101
# povolím přístup z vlan100 do vlan101
# pokud se komunikace navazuje z vlan100
iifname "vlan100" oifname "vlan101" accept # vlan100 to vlan101
iifname "vlan101" oifname "vlan100" ct state related,established accept # vlan101 to vlan100
iifname "vlan101" ip saddr 10.101.1.12 oifname "vlan100" accept
iifname "vlan100" ip daddr 10.101.1.12 oifname "vlan101" accept
}
chain output {
type filter hook output priority 0;
}
}
table ip nat {
chain prerouting {
type nat hook prerouting priority 0; policy accept;
}
chain postrouting {
type nat hook postrouting priority 100; policy accept;
ip saddr 10.100.1.0/24 oif "ens192" snat 10.255.255.251
ip saddr 10.101.1.0/24 oif "ens192" snat 10.255.255.251
}
}
Díky,
Petr
Tiskni
Sdílej: