Jak mogę włączyć konto roota? Wiem, że zwykle nie jest to zalecane, ale chciałbym skonfigurować nieinteraktywny skrypt do tworzenia kopii zapasowych mojego serwera za pomocą rsync. Mógłbym użyć, --rsync-path="sudo rsync"
ale wtedy musiałbym przechowywać moje hasło sudo w sposób wyraźny, co wydaje się znacznie gorsze niż włączenie konta root.
rsync
user-management
Olivier Lalonde
źródło
źródło
sudo rsync
i umożliwienie mu wyboru opcji przekazanych do rsync oznacza, że użytkownik może na przykład użyć rsync do odczytu / zapisu/etc/sudoers
pliku i udzielić sobie pełnego dostępu do sudo.Możesz edytować,
/etc/sudoers
aby zezwolić każdemu użytkownikowi, który uruchamia polecenie (lub wszystkim użytkownikom), aby uruchomił jeroot
bez hasła (być może trochę niebezpieczne z rsync).Nie możesz po prostu uruchomić całego polecenia / skryptu / cokolwiek innego
root
? Zakładam, że będzie to działało przez crona, więc po prostu dodajroot
zadanie przez:Uwaga: możesz robić dość złożone rzeczy, zawijając komendę cron w
bash -e "..."
nawias klamrowy lub po prostu zrób to w osobnym skrypcie. Zakładając, że nie jest skonfigurowany, jeśli zostanieroot
uruchomiony (przezcron
), będzie działałroot
tak, aby rozwiązać problem z uprawnieniami.źródło
sudo
przez zwykłych użytkowników. Byłoby to bezpieczniejsze niż tylko na to pozwalaniersync
.Możesz (ale nie powinieneś) podać użytkownikowi root hasło
Edycja: Bit Setuid nie działa dla skryptów. W przeciwnym razie możesz użyć bitu setuid w programie do tworzenia kopii zapasowych.
Być może chcesz uruchomić kopię zapasową jako zadanie CRON?
źródło
sudo whoami
zwraca, root), więcsudo passwd
jest po prostu potrzebny.