Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.
Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).
Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.
Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.
Byla publikována Výroční zpráva Blender Foundation za rok 2024 (pdf).
Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.
Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.
Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.
Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána verze 3.0 (Mastodon) nástroje pro záznam a sdílení terminálových sezení asciinema (GitHub). S novou verzí formátu záznamu asciicast v3, podporou live streamingu a především kompletním přepisem z Pythonu do Rustu.
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: