Automatizza l'accesso con sudo e su


6

Conosco i rischi per la sicurezza, ma sto eseguendo questo esperimento / esercizio su una vecchia macchina * nix raramente usata che ho in giro per casa. Quindi fare questo esercizio non comporta alcun rischio per la sicurezza della mia macchina. Detto questo, non pubblicare commenti sulla sicurezza.

So anche che posso cambiare sudoersper disabilitare le richieste di password, ma non mi interessa.

Ho trovato un comando:

echo "password" | sudo -S su

ma che funziona in modo molto strano. Lo scrivo e il dominio rimane lo stesso; Non cambio in root. C'è qualcos'altro che mi manca o c'è un modo migliore per farlo?


Cose che ho fatto:

  1. aggiunta \na alla fine della password: la password non viene verificata correttamente.
  2. omettendo il su: stampa l'utilizzo su come utilizzare sudocorrettamente

Qual è l'output di printf '%d\n' "$UID" "$EUID"prima e dopo averlo fatto?
Chris Down

~$ printf '%d\n' "$UID" "$EUID" => 1000 1000
Zchpyvr,

Risposte:


2

È piuttosto strano, ma questo è ciò che funziona per me:

% echo -e "password\n" | sudo -S su
<myusername>'s password:HOSTNAME: Undefined variable.
% sudo -S su

Quindi, nel primo passaggio, la password viene passata a sudo(usando il -eflag per echo in modo che \nsia davvero una nuova riga), e nella seconda esecuzione, il authenticaion funziona senza richiedere alcuna password.

(Il ritorno nella seconda riga è probabilmente dovuto a un sistema impostato in modo errato ...)

Modifica: in quella sessione xterm, posso chiamare tutte sudo -S <command>le volte che voglio ... Questo probabilmente perché sono entro il limite di tempo in cui la password sudo deve essere inserita una sola volta.


1

Ho usato il seguente

echo password | sudo -S su - user_to_switch_to

quindi corri

sudo -S su - user_to_switch_to

per passare all'utente desiderato senza inserire manualmente la password.

(NB sostituisci password e user_to_switch_to con il tuo pwd e utente)


1

Ho la fastidiosa sensazione che stai provando a eseguire una shell interattiva su (e amici) mentre eseguo il reindirizzamento. Non credo che funzionerà, in particolare echo passwd|ti darà un eof (fine del file) dopo la password. Penso che avrai bisogno di qualcosa come prevedono o un'utilità di script di dial. prevede una modalità pass-through che può essere invocata alla fine dello script. questo non è necessario se il tuo comando non è interattivo come xterm (che anche se completamente interattivo non ha bisogno di input standard. Fai attenzione anche alla lettura di una password dall'errore standard che rende le cose a dir poco interessanti. (Lo fanno in modo che io / o il reindirizzamento ha meno probabilità di interferire con la richiesta della password)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.