Jak zezwolić użytkownikowi na korzystanie z SCREEN na chrootowanym użytkowniku?
Próbowałem wszystkiego, ale ciągle mi się nie udaje.
Potrzebuję, aby użytkownik mógł korzystać z EKRANU, gdy jest zalogowany w bash jako użytkownik chrootowany.
Jak zezwolić użytkownikowi na korzystanie z SCREEN na chrootowanym użytkowniku?
Próbowałem wszystkiego, ale ciągle mi się nie udaje.
Potrzebuję, aby użytkownik mógł korzystać z EKRANU, gdy jest zalogowany w bash jako użytkownik chrootowany.
Odpowiedzi:
SCREEN prawdopodobnie potrzebuje devpts , pseudoterminalnego systemu plików, do zamontowania /dev/pts
wewnątrz chroota.
mount -t devpts none "$rootpath/dev/pts" -o ptmxmode=0666,newinstance
ln -fs "pts/ptmx" "$rootpath/dev/ptmx"
( newinstance
Flaga jest opcjonalna; daje użytkownikowi całkowicie oddzielną listę pty, co uniemożliwia jej poznanie, którzy inni użytkownicy są zalogowani.)
pam_exec
.)
mkdir
.
W niedostępnym Ubuntu-14.04 można to również osiągnąć za pomocą jednego „mount” i jednego „chmod”.
Oto /mnt/old
katalog docelowy chroota (nowy „root”). Zakłada się również, że użytkownik user
należy do grupy /mnt/old/run
katalogów (będzie /run
w środowisku chroot-ed).
sudo mount --bind /dev/pts /mnt/old/dev/pts
sudo chmod g+w /mnt/old/run
sudo chroot --userspec=user:user /mnt/old
screen
Ostrzeżenia: Nie jestem pewien, czy dzielenie się /dev/pts
jest naprawdę dobrym pomysłem z punktu widzenia bezpieczeństwa, i nie poleciłbym tej metody, jeśli bezpieczeństwo ma znaczenie.