Hirdetés
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- Elektromos rásegítésű kerékpárok
- Lalikiraly: A nagy ő! Stohl...
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- Luck Dragon: Asszociációs játék. :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- sziku69: Fűzzük össze a szavakat :)
- potyautas: A teljesség igénye
- Parci: Milyen mosógépet vegyek?
Aktív témák
-
WN31RD
addikt
Kipróbáltam, és tényleg nem megy... :((( :F
Nyomoztam kicsit a kernel forrásban (2.6-os) a probléma után, és úgy tűnik, a ''kernel capabilities'' funkció okozza a gondot. Ugyanis nem csak az ioperm()-hez, hanem a /dev/port megnyitásához is szükséges a CAP_SYS_RAWIO, ld.: kernel forrás drivers/char/mem.c, open_port().
Ha a default capabilites nincsen aktiválva (capability kernel modul), akkor a root processzeknek megvan minden capability, a többinek pedig semmi, és ezen nem lehet változtatni, ld. kernel forrás security/dummy.c, dummy_capable().
Megoldási javaslatok (nem próbáltam ki):
a. root-ként induljon a processz, aztán dobálja el a privilégiumait, amint megnyitotta a /dev/port-ot
b. root-ként induljon egy kisegítő processz, ami mondjuk egy socket-en keresztül átad egy file descriptor-t a /dev/port-ra
c. kapcsold be a linux capabilites-t, és - pl. a PAM segítségével - add meg a CAP_SYS_RAWIO-t a kérdéses júzernek
d. piszkálj bele a kernelbe valamelyik helyen, amit említettem
Érdekelne a kipróbált, működő megoldás, ha majd meglesz. :) -
FastCatch
csendes tag
A kódrészlet, amin a hiba keletkezik:
bool OpenIOChannel()
{
Ports = open (''/dev/port'', O_RDWR | O_NDELAY );
return ( Ports > 0 );
}
Egy debugger-rel megnézve, az open -1-re állítja a Ports-ot, ha nem root
vagyok és az errno 1.
???
Vicces módon különben a kmem group-nak az egyetlen tagja az a user,akit
felvettem, a root nincs benne...
Sőt, ha a /dev/port-ra mindenkinek rw jogot adok (chmod a+rw /dev/port), akkor
_sem_ fut le a kód. Na ezt már végképp nem értem.
***
SZERK: a kód beillesztése nem sikerült...
[Szerkesztve] -
WN31RD
addikt
-
WN31RD
addikt
Ha a /dev-be bele tud menni a júzer, és listázni tudja a tartalmát, márpedig tudja (r-x jogok), az elég. Onnantól kezdve már az egyes file-okhoz (pl. /dev/port) rendelt jogok számítanak.
Elvileg elég, ha a júzer tagja egy olyan csoportnak, amelyik írni tud a device-ba. Nem tudom, mi kellene még, de biztos nem a /dev jogaival van baj.
A csoporthoz való hozzáadás után csináltál egy ki-be jelentkezést a júzerrel? -
FastCatch
csendes tag
Azzal kezdtem, hogy kísérletképpen hozzátettem a usert a kmem csoporthoz, de ez nem látszik elégnek. Szerint az is baj, hogy a /dev-et a root-on kívül mindenki csak olvashatja -- vagy ez hülyeség? Akkor csináljam azt, hogy felveszek ahhoz (is) egy új csoportot és beleteszem a root-ot, meg a usert?
FC -
FastCatch
csendes tag
Sziasztok!
Az a kérdésem, hogy hogyan lenne legcélszerübb elérni, hogy egy userx nevű user tudja _írni_ a /dev/port-ot. nem t'om mi az általános, ezért leírom:
[CODE]
drwxr-xr-x root root /dev
crw-rw---- root kmem /dev/port
[/CODE]
nekem az kell, hogy a userx tudja írni/olvasni a /dev/port-ot, a root értelemszerűen maradjon meg jogaiban, de a többi usernek nem akarnék feleslegesen jogokat osztogatni (úgy olyan eccerű lenne, hogy nem kérdeznék :P).
Előre is kösz,
FC
Aktív témák
Hirdetés
- Kertészet, mezőgazdaság topik
- Milyen egeret válasszak?
- Ilyet se látunk minden nap, már füstölt a GeForce, de a játék még futott
- Debrecen és környéke adok-veszek-beszélgetek
- Napelem
- PayPal
- Melyik tápegységet vegyem?
- Okos Otthon / Smart Home
- HiFi műszaki szemmel - sztereó hangrendszerek
- MasterDeeJay: RAM gondolatok: Mennyi a minimum? DDR3 is jó?
- További aktív témák...
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Game Pass Ultimate előfizetések 1 - 36 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN! AKCIÓ!
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- HIBÁTLAN iPhone 13 Pro 128GB Gold-1 ÉV GARANCIA - Kártyafüggetlen, MS4432, 100% Akksi
- Eladó Apple iPhone 12 Pro Max 256GB / 12 hó jótállás
- HP EliteBook 840 G7 i5-10210U 16GB 256GB FHD 400nit 1 év garancia
- Dell Latitude 5420 14" Touchscreen i5-1135G7 16GB 512GB 1 év garancia
- BESZÁMÍTÁS! HP Elitedesk 800 G1 USDT brand - i7 4790S 16GB DDR3 256GB SSD Intel HD 4600 250W WIN10
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

