Chcę mieć możliwość „su” do konkretnego użytkownika, co pozwala mi na uruchomienie dowolnej komendy bez podania hasła.
Na przykład:
Jeśli mój login to użytkownik1, a użytkownik, którego chcę „su”, to użytkownik2:
Użyłbym polecenia:
su - user2
ale potem zachęca mnie to
Password:
permission
sudo
zio
źródło
źródło
open -na Skype
działa dla ciebie?Odpowiedzi:
sudo
mogę to dla Ciebie zrobić :)Wymaga to jednak trochę konfiguracji, ale kiedy to zrobisz, zrobiłbyś to tylko:
I byłbyś zalogowany jako użytkownik2 bez podawania hasła.
Konfiguracja
Aby skonfigurować sudo, musisz edytować swój plik konfiguracyjny poprzez:
visudo
. Uwaga: to polecenie otworzy konfigurację za pomocąvi
edytora tekstu, jeśli nie czujesz się z tym komfortowo, musisz ustawić inny edytor (za pomocąexport EDITOR=<command>
) przed wykonaniem następującego wiersza. Innym edytorem wiersza poleceń, który czasem uważany jest za łatwiejszy, jestnano
to możliweexport EDITOR=/usr/bin/nano
. Zwykle potrzebujesz uprawnień superużytkownika dovisudo
:Ten plik ma inną sekcję, aliasy, a następnie wartości domyślne i na końcu masz reguły. Tutaj musisz dodać nową linię. Nawigujesz na końcu pliku i dodajesz to:
Można wymienić również
/bin/bash
przezALL
a następnie można uruchomić dowolną komendę jako User2 bez hasła:sudo -u user2 <command>
.Jeśli chcesz móc przejść do dowolnego użytkownika, po prostu użyj
Aktualizacja
Właśnie widziałem Twój komentarz dotyczący Skype. Możesz rozważyć dodanie Skype'a bezpośrednio do pliku konfiguracyjnego sudo. Zakładam, że masz Skype'a zainstalowanego w folderze Aplikacje :
Następnie zadzwonisz z terminala:
źródło
su - user2
zamiastsu user2
poleceń, prawdopodobnie wszystkie powinny obejmowaćsudo -u user2 -i
, aby symulować początkowe logowanie jako użytkownik2Skonfiguruję publiczne / prywatne klucze ssh dla drugiego konta i przechowuję klucz na pierwszym koncie.
Następnie możesz uruchomić polecenie takie jak:
Nadal występują problemy, w których Skype się myli, ponieważ na jednym koncie użytkownika działają dwie instancje, a pliki odczytywane / zapisywane przez ten program mogą powodować konflikty. Może również działać wystarczająco dobrze dla twoich potrzeb i nie potrzebujesz iPoda touch, aby uruchomić drugą instancję Skype.
źródło
expect
skrypt do interakcji. Po prostu używamsudo su - blah
i wpisuję hasło. Myślę, że druga odpowiedź obejmuje sudo wystarczająco dobrze, aby zachować to jako komentarz.sudo -u user2 <...>
) ma tę zaletę, że nie może być używane zdalnie, co może pomóc w bezpieczeństwie - nie ma klucza prywatnego dla użytkownika 1, który mógłby zostać skradziony.