Vis bandau ir bandau sukurti skripta ar programa kuri automatiskai prisilogintu i mano user ir paleistu X.
Kol kas man to nepavyko...
Bandziau sukurti savo login manager, bet problemos del teisiu, mano programa nesugeba nusimesti ju (EPERM)
#include <stdio.h> #include <unistd.h> #define UNPRIV_UID 1000 #define UNPRIV_GID 100 int main(void) { //setuid(1000); //setgid(100); if (setuid(UNPRIV_UID)!=0) printf("Failed to set nonroot UID\n"); if (setgid(UNPRIV_GID)!=0) printf("Failed to set nonroot GID\n"); printf("uid: %d\n", getuid()); printf("gid: %d\n", getgid()); system("/usr/bin/id"); return 0; }
Kaip suprantu tai visai normalu pagal glibc security standartus...
Savo gentoo pertvarkiau taip, kad naudotu systemd. Systemd turi toki featura kaip paleisti servisus su nurodyto user teisemis ant boot.
Mano servisas:
cat /usr/lib/systemd/system/startx.service [Unit] Description=Startx [Service] User=minde ExecStart=/usr/bin/startx [Install] WantedBy=graphical.target
be auto login teises:
uid=1001(minde) gid=100(users) groups=100(users),0(root),10(wheel),18(audio),27(video) context=staff_u:sysadm_r:sysadm_t
auto login (systemd)
uid=1001(minde) gid=100(users) groups=100(users),0(root),10(wheel),18(audio),27(video) context=system_u:system_r:kernel_t
Aisku sioks toks progresas, dabar GID nustato tinkamai, bet su SELinux teisemis problema...
Gal kam yra teke pasikurti toki env kuris veiktu ? Arba gal yra kam ideju kaip nusimesti root teises ?
Ties pirmu kodu yra klaida, ja lengva fix. Reikia pirma setgid ir tik tada setuid...
Tema perkelta iš https://legacy.ubuntu.lt/forum/viewtopic.php?f=6&t=8946
Vis bandau ir bandau sukurti skripta ar programa kuri automatiskai prisilogintu i mano user ir paleistu X.
Kol kas man to nepavyko...
Bandziau sukurti savo login manager, bet problemos del teisiu, mano programa nesugeba nusimesti ju (EPERM)
Kaip suprantu tai visai normalu pagal glibc security standartus...
Savo gentoo pertvarkiau taip, kad naudotu systemd. Systemd turi toki featura kaip paleisti servisus su nurodyto user teisemis ant boot.
Mano servisas:
be auto login teises:
auto login (systemd)
Aisku sioks toks progresas, dabar GID nustato tinkamai, bet su SELinux teisemis problema...
Gal kam yra teke pasikurti toki env kuris veiktu ? Arba gal yra kam ideju kaip nusimesti root teises ?
Ties pirmu kodu yra klaida, ja lengva fix. Reikia pirma setgid ir tik tada setuid...
Tema perkelta iš https://legacy.ubuntu.lt/forum/viewtopic.php?f=6&t=8946