Počítačové hře Doom je dnes 30 let. Vydána byla 10. prosince 1993. Zahrát si ji lze také na Internet Archive.
V srpnu společnost HashiCorp přelicencovala "své produkty" Terraform, Packer, Vault, Boundary, Consul, Nomad a Waypoint z MPL a Vagrant z MIT na BSL (Business Source License). V září byl představen svobodný a otevřený fork Terraformu s názvem OpenTofu. Na konferenci Open Source Summit Japan 2023 byl představen (YouTube) svobodný a otevřený fork Vaultu s názvem OpenBao (GitHub).
Na dnes plánované vydání Debianu 12.3 bylo posunuto. V jádře 6.1.64-1 v souborovém systému ext4 je chyba #1057843 vedoucí k možnému poškození dat.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek i s náhledy aplikací v Týden v GNOME a Týden v KDE.
Tak od ledna linuxové terminály, výchozí pozadí i celé desktopy v barvě "broskvového chmýří", v barvě "jejíž všeobjímající duch obohacuje mysl, tělo i srdce". Barvou roku 2024 je PANTONE 13-1023 Peach Fuzz.
Byla vydána verze 10 linuxové distribuce Freespire (Wikipedie). Jedná se o bezplatnou linuxovou distribuci vyvíjenou společností PC/OpenSystems LLC stojící za komerční distribucí Linspire (Wikipedie), původně Lindows.
Binarly REsearch před týdnem informoval o kritických zranitelnostech UEFI souhrnně pojmenovaných LogoFAIL. Tento týden doplnil podrobnosti. Útočník může nahradit logo zobrazováno při bootování vlastním speciálně upraveným obrázkem, jehož "zobrazení" při bootování spustí připravený kód. Pětiminutové povídání o LogoFAIL a ukázka útoku na YouTube.
Byla vydána listopadová aktualizace aneb nová verze 1.85 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.85 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
git.kernel.org je nově oficiálně také v tmavém vzhledu.
Richard Hughes na svém blogu oznámil, že počet aktualizací firmwarů pomocí služby LVFS (Linux Vendor Firmware Service) přesáhl 100 milionů. Přehled podporovaných zařízení, nejnovějších firmwarů nebo zapojených výrobců na stránkách LVFS.
Ahoj, nevie mi niekto poradit ci sa da sudo nakonfigurovat tak, aby ked spustam program pod konkretnim userom, tak aby si vypitalo heslo usera pod ktorym chcem tento program spustit a nie moje!
Pokud znáš heslo uživatele, pod kterým chceš daný program spustit, tak postrádá použití sudo smysl. Použij:
$ su -c program username
Dik, na to som uz prisiel.
Jedneho takeho usera som uz mal v default instalacii, ktory moze pouzivat prikaz su. Ale neviem ako docielim aby mohol aj iny konkretny user pouzivat prikaz su.
Skupinu wheel nemam, pridanie uzivatela do skupini root nepomohlo. V mojom konfiguraku /etc/pam.d/su je toto:
# # The PAM configuration file for the Shadow `su' service # # This allows root to su without passwords (normal operation) auth sufficient pam_rootok.so # This module parses environment configuration file(s) # and also allows you to use an extended config # file /etc/security/pam_env.conf. # # parsing /etc/environment needs "readenv=1" session required pam_env.so readenv=1 # locale variables are also kept into /etc/default/locale in etch # reading this file *in addition to /etc/environment* does not hurt session required pam_env.so readenv=1 envfile=/etc/default/locale # Defines the MAIL environment variable # However, userdel also needs MAIL_DIR and MAIL_FILE variables # in /etc/login.defs to make sure that removing a user # also removes the user's mail spool file. # See comments in /etc/login.defs # # "nopen" stands to avoid reporting new mail when su'ing to another user session optional pam_mail.so nopen # The standard Unix authentication modules, used with # NIS (man nsswitch) as well as normal /etc/passwd and # /etc/shadow entries. @include common-auth @include common-account @include common-session
ked zadam ako pouzivatel www-data prikaz su -c id bob
tak mi to vyhodi chybu: Sorry, user www-data is not allowed to execute '/bin/su -c id bob'
as root on server.
Ked to spravim ako user knoppix, tak si pekne vypita heslo na boba a komand zbehne uspesne.
Mas pravdu, to som si neuvedomil ze som sa pod toho usera dostal cez sudo a tam spustal su. Teraz som to spravil takto, Spustil som si terminal pod userom knoppix, na krotom mi funguje su, v nom som sa cez prikaz su www-data switchol
na usera www-data a tam nasledne spustil prikaz su -c id bob kde si vypitalo heslo. No po zadani som dostal hlasku Sorry, try again.
Este dodatok, heslo je urcite spravne
www-data
bez hesla nedostal.
Tak tomu nerozumiem ako sa tam sudo dostalo. Ako som uviedol, Do grafickeho prostredia distribudie knoppix som prihlaseny pod uzivatelom knoppix. Tam spustim terminal a switchnem sa na usera www-data a vykonam prikaz uvedeny vyssie. Skusal som sa prihlasit aj vzdialene cez ssh ako user www-data. a tam zadat prikaz su -c id bob no dostal som taku istu hlasku. Mozes mi prosimta vysvetlit ako sa do toho zaplietlo sudo ked som ho nepouzil.
No racej vysvetlim co chcem dosiahnut. chcem napisat skript ktoremu dam tri argumenty, login, heslo a prikaz. A nesledne chcem aby sa tento prikaz vykonal pod danym userom. Lenze som natrafil na tento problem plus dalsi, ked som to skusal spustit v skripte (este bez argumentov): #!/bin/sh su bob -c id << _EOF_ bob _EOF_
tak som dostal hlasku su: must be run from a terminal
To je z bezpečnostích důvodů, aby uživatelé nedávali hesla do skriptů.
Skript, který popisuješ je defacto program su.
/var/log/auth.log
po té co se akce nezadaří.
Nastává problém, i když se na uživatele www-data dostaneš pomocí:
$ su - www-data
Je to to ise aj ked to spravim ako si mi napisal. a subor /var/log/auth.log je prazdny
Není auth.log jen odrotovaný do auth.log*?
A když použiješ místo uživatele www-data např. uživatele franta, kterého si nově vytvoříš, a spouštíš su -c program user pod ním, je stále stejný problém?
No vytvoril som si uzivatela boba. otvoril som terminal a zadal prikazy:
server:5 16:05:36 ~ $ id uid=1000(knoppix) gid=1000(knoppix) groups=20(dialout),21(fax),22(voice),24(cdrom),25(floppy),26(tape),27(sudo),29(audio),30(dip),44(video),60(games),100(users),106(usb),110(scanner),115(camera),1000(knoppix) server:5 16:05:46 ~ $ su - bob Password: server:5 16:05:50 ~ $ id uid=1002(bob) gid=1003(bob) groups=27(sudo),1003(bob) server:5 16:05:55 ~ $ su -c id knoppix server:5 16:05:65 ~ $
Dostal som prazdny riadok.
Jakou verzi Knoppixu máš? Co říká:
$ ls -l /bin/su -rwsr-xr-x 1 root root 27108 Nov 22 17:01 /bin/su $ ls -l /usr/bin/id -rwxr-xr-x 1 root root 26572 Apr 4 2008 /usr/bin/id bob$ su -c true knoppix bob$ echo $? 0 bob$ su -c false knoppix bob$ echo $? 1 bob$ su -c 'echo $USER' knoppix knoppix
Po zadání su -c id knoppix
se Tě to neptalo na heslo? A co říká echo $?
po dokončení tohoto příkazu?
Je to live cd instant-gridu:
instant-grid.de/files/instant-grid-1.1-release.iso
server:6 16:58:51 security $ ls -l /bin/su -rwsr-xr-x 1 root root 27000 Dec 7 2006 /bin/su
heslo ma nepitalo
server:6 16:58:55 security $ echo $? 141
Aha, takže řádek je prázdný, protože se nestihlo nic vykonat 141 = SIGPIPE.
A su - -c id knoppix
vrací také chybový kód 141?
Ano tiez.
Třeba se dozvíme něco z výstupu:
$ strace su -c id knoppix
To vypadá na chybu v su/id, jako kdyby se neingnoroval SIGPIPE, který měl být ignorován. Zkusím si stáhnout to CD a pustit si to u sebe.
Asi bude dobré, když založíš nový dotaz, proč su -c id končí s touhle chybou, třeba něco někoho napadne.
Vypis z strace prikladam v prilohe.
O něco výše jsi psal, že se Tě to neptalo na heslo, ale v strace je:
write(2, "Password: ", 10Password: ) = 10 read(0, "\n", 511) = 1 write(2, "su: Authentication failure\n", 27su: Authentication failure
To je pravda, ked to zadam bez strace tak ma to heslo ani nepyta.
Cely prikaz ktory som zadal z strace je: strace su -c id knoppix 2>&1 | tee strace.txt
je zaujimave ze ked to zadam takto tak to pomne heslo chce.
Prikladam novy strace aj zo spravnym heslom, predtym som to iba odklepol.
bashrc:
# /etc/bash.bashrc [ -f /etc/profile ] && . /etc/profile export CAS_SERVER_URL="https://172.24.127.1:8443/wsrf/services/CASService" export CAS_SERVER_IDENTITY="/O=org/OU=Instant-Grid/OU=TestGrid/CN=host/server" export CATALINA_BASE="/home/knoppix/ogce-portal-only/portal_deploy/apache-tomcat-5.5.27" export CATALINA_HOME=$CATALINA_BASE export CATALINA_TMPDIR=$CATALINA_BASE/temp
Nemyslim ze by to bolo zavysle na bashrc. pretoze to iste mi spravy ked sa chcem prepnut z boba na ineho usera.
Hlavne potrebujem vediet, ak by si mi mohol poradit ako to su spustit v skripte, ked mi vypisuje hlasku: su: must be run from a terminal
Potrebujem pod jednotlivimi uzivatelmi spustat prikaz ktory si vyziada zo servera novy certifikat, pritom sa tam autentifikuje proxy certifikatom ktory je ulozeny v tempe s nazvom x509_uxxx.proxy, kde xxx je uid daneho usera. Tento program nema ziadny prepinac ktorym by som explicitne urcil cestu k certifikatu, vzdy ho hlada v tempe v tomto formate podla toho aky uzivatel spusta tento prikaz. Tento prikaz potrebujem volat z php funkciou passthru. Je to akysi webovy wrap na tento komand, aby si uzivatel zadal iba meno a heslo a prikaz sa spusti z jeho pravami a vrati novy certifikat.
Uživateli www-data bych dal pomocí sudo (bez zadání hesla) možnost spouštět příkaz pro vrácení certifikátu pod daným uživatelem. Ale nejprve bych ověřil heslo pomocí následujícího skriptu v Pythonu (pwcheck.py):
#!/usr/bin/python import sys import spwd import crypt if (len(sys.argv) != 3): print "Usage: %s user password" % (sys.argv[0]) sys.exit() user = sys.argv[1] password = sys.argv[2] sp = spwd.getspnam(user).sp_pwd salt = sp[0:sp.rfind("$")+1] user_sp = crypt.crypt(password, salt) if (user_sp == sp): print "OK" sys.exit(0) print "ERROR" sys.exit(1)
Skript musíš spustit pod uživatelem root, protože potřebuje přistupovat do /etc/shadow. To bych opět vyřešil pomocí sudo na pwcheck.py.
Tiskni
Sdílej: