[bash] Sudo password meegeven

Pagina: 1
Acties:
  • 153 views sinds 30-01-2008
  • Reageer

  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Nu ben ik bezig aan een projectje NetSwitch waarbij ik makkelijk van netwerk-profiel kan switchen. Het werkt allemaal al heel goed enzo, alleen zit me nog een klein dingetje dwars.

Om met je netwerkdevices te prutsen heb je natuurlijk root-rechten nodig. Nu gebruik ik in dit geval sudo om te zorgen dat ik de nodige commando's als root kan uitvoeren en heb de boel nu zo ingesteld dat ik geen password op hoef te geven.

Nu wil ik eigenlijk wel een password opgeven, omdat dit de veiligheid wat verhoogt. Het probleem is alleen dat ik het volledig grafisch wil doen en dus niet sudo op de commandline om een password kan laten vragen.

Mijn vraag is dan ook; Is het mogelijk om het ingevoerde password dan weer aan sudo te voeren?

Met de standaard bash truukjes | en < lukt het niet en in de topics die ik hier over heb kunnen vinden wordt de topicstarter altijd overgehaald om nopasswd te gebruiken.
Toch lijkt het me dat het moet kunnen aangezien ik weet dat KDE grafisch om het rootpassword vraagt zodra je de configuratie aan wilt passen. Wie heeft er een idee?

  • jurp5
  • Registratie: Februari 2003
  • Laatst online: 30-01 20:52
gebruik het commando kdesu
code:
1
kdesu programma

[ Voor 40% gewijzigd door jurp5 op 14-04-2006 10:01 ]


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
jurp5 schreef op vrijdag 14 april 2006 @ 10:01:
gebruik het commando kdesu
code:
1
kdesu programma
Hmm, ja. Het nare is dan dat ik meteen de hele kdelibs en dergelijke moet installeren. Dat terwijl mijn programma eigenlijk meer Gnome gericht is, maar toch bedankt voor de tip. Ik zal iig de sourcecode eens induiken en kijken hoe ze het bij KDE hebben opgelost.

Als iemand anders een manier weet hou ik mij natuurlijk aanbevolen! :)

  • JeroenE
  • Registratie: Januari 2001
  • Niet online
Als iemand anders een manier weet hou ik mij natuurlijk aanbevolen! :)
gksu of gksudo ?

Verwijderd

Als je in je sudoers file iets van NOPASSWD: /pad/naar/jouw/app zet kun je 't prima zonder wachtwoord doen hoor.

  • TheFirepit
  • Registratie: April 2004
  • Laatst online: 05-02 11:13

TheFirepit

Vuurbal

Verwijderd schreef op vrijdag 14 april 2006 @ 13:37:
Als je in je sudoers file iets van NOPASSWD: /pad/naar/jouw/app zet kun je 't prima zonder wachtwoord doen hoor.
Mac_Cain13 schreef op donderdag 13 april 2006 @ 23:06:
Met de standaard bash truukjes | en < lukt het niet en in de topics die ik hier over heb kunnen vinden wordt de topicstarter altijd overgehaald om nopasswd te gebruiken.
Toch lijkt het me dat het moet kunnen aangezien ik weet dat KDE grafisch om het rootpassword vraagt zodra je de configuratie aan wilt passen. Wie heeft er een idee?
Wat zegt hij nou net dan...

It's nice to be important, but it's more important to be nice.


Verwijderd

Je kunt ook gewoon een nuttig commentaar geven ipv wannabe modje te spelen ...

Overigens is nopasswd, mits je het restrict tot bepaalde commando's geen enkel security lek. Tenzij je je eigen applicaties slecht geschreven hebt.

  • Blaasvis
  • Registratie: November 2001
  • Laatst online: 05-02 09:33

Blaasvis

Cidora \o/

ik ik heb een idee, gksu is hier een mooie oplossing voor je kunt dan werken met sudo maar ook met gewoon su. en alles is gewoon via bash te laten lopen.

Freedom is everything you need ; <moto-moi|afk> ik verkloot het gewoon nooit :P


  • teh_twisted
  • Registratie: Oktober 2005
  • Laatst online: 30-07-2025
je hebt 't over "veiliger" en het "meegeven" van 't wachtwoord... je wilt dus "plaintext" je wachtwoord in een bash script zetten omdat 't veiliger is dan het instellen van sudo per programma...

rethink people, BACK to the drawing board ;)

Tyan S7025, 1x Xeon E5520, 32GB DDR3-1333 ECC/REG, GTX275 896MB, 2x Samsung SM 2243SN, Logitech Perf MX. Laptop: MBP 10,1/6,2. Cams: Canon EOS600D+Tamron AF18-200, Sony W350. Gadgets: iPad 64GB 3G, iPhone 5 64GB, PS1-3. Auto: W211 E220CDI


  • burne
  • Registratie: Maart 2000
  • Niet online

burne

Mine! Waah!

Mac_Cain13 schreef op donderdag 13 april 2006 @ 23:06:
dus niet sudo op de commandline om een password kan laten vragen.
sudo is bedoeld als veilig alternatief voor su. Het als parameter of stdin meegeven van een password is onveilig. En het zit dus simpelweg niet in sudo. Vergeet het. Het gaat niet op die manier werken. Nooit.

I don't like facts. They have a liberal bias.


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Hartelijk dank voor alle reacties en waarschuwingen dat het onveilig is. Natuurlijk hebben jullie helemaal gelijk dat het plaintext doorgeven van een password onveilig is en dat was dan ook niet zo zeer het doel. Het ging me er meer om een grafisch frontje voor sudo te hebben.

Gksu is volgens mij ook precies wat ik zoek. :) Dus ik zal daar eens mee aan de gang! Bedankt Blaasvis en Jeroene voor deze oplossing.

edit:
Overigens doet de kdesu code ook niet veel anders dan het password opvragen en doorgeven aan sudo, maar dan met een hele constructie er omheen om het voor sudo te laten lijken alsof er gewoon een user is die dit gebruikt.

[ Voor 22% gewijzigd door Mac_Cain13 op 16-04-2006 15:16 . Reden: KdeSU ]


  • Tim
  • Registratie: Mei 2000
  • Laatst online: 04-08-2025

Tim

Zelf gebruik ik in een bash scriptje
code:
1
echo "${PASSWD}" | sudo -S commando

en dit werkt prima.

"Probleem" met gksu is dat de de rechten een time-out hebben (Je moet telkens je wachtwoord invoeren als je meer dan 15 minuten geen sudo hebt gebruikt)

[ Voor 27% gewijzigd door Tim op 16-04-2006 16:25 ]


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Hey verrek, dit werkt inderdaad ook perfect. Op het moment heb ik deze in gebruik. :) Niet zo zeer om de time-out, die kan me namelijk niet zoveel schelen, maar meer omdat dit makkelijker is en me een tooltje installeren scheeld.

Overigens wel heel erg dom dat ik dit niet gezien heb, want ik heb de manual toch een aantal keer doorgenomen. Alleen blijkbaar steeds hier overheen gelezen. Er staat namelijk gewoon:
-S The -S (stdin) option causes sudo to read the password from the standard input instead of the terminal device.
Dus het is er toch ooit een keer ingecode Burne. ;)

  • Equator
  • Registratie: April 2001
  • Laatst online: 06-02 13:38

Equator

Crew Council

#whisky #barista

Waarschijnlijk om van de zeikers af te zijn die het verrekken om hun zaken netjes en veilig te regelen ;) :+
Persoonlijk zou ik voor de grafische sudo schil gaan. Netjes en doet precies wat je wilt.
Voor testen en dergelijke zou ik keurig nopasswd in de sudoers file laten staan. ;)

  • daft_dutch
  • Registratie: December 2003
  • Laatst online: 02-12-2025

daft_dutch

>.< >.< >.< >.<

waarom geeft je de gebruiker geen sudo rechten zoals sudo normaal werkt
/etc/sudoers

>.< >.< >.< >.<


  • Equator
  • Registratie: April 2001
  • Laatst online: 06-02 13:38

Equator

Crew Council

#whisky #barista

daft_dutch schreef op donderdag 20 april 2006 @ 04:47:
waarom geeft je de gebruiker geen sudo rechten zoals sudo normaal werkt
/etc/sudoers
De TS heeft aangegeven dat hij dit ook heeft gedaan, maar hij wilde niet op de bash prompt een wachtwoord in hoeven geven.
Er zijn al grafische shells voor sudo aangebracht wat imo de mooiste oplossing is.

  • daft_dutch
  • Registratie: December 2003
  • Laatst online: 02-12-2025

daft_dutch

>.< >.< >.< >.<

ik begrijp het niet
je kan met sudo
als een gebruiker su opdrachten doen zonder password
daar is het enige waarvoor ik sudo gebruik

>.< >.< >.< >.<


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Gewoonlijk gebruik je met sudo wel degelijk een wachtwoord. Alleen dan niet het root-wachtwoord maar gewoon je eigen.

Timpie: dat hoort. Zo werkt sudo. De timeout is standaard geloof ik 5 minuten.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

Wat ik niet echt begrijp... Waarom heb je een paswoord nodig dat automatisch wordt ingevuld zodra je sudo gebruikt? Imho is er geen structureel verschil met een paswoordloze /etc/sudoers entry... :? De methode is iets anders, maar uiteindelijk bereik je wel hetzelfde, nee?

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Hij wil dat 't paswoord wordt ingevoerd in een gui app.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
CyBeR schreef op vrijdag 21 april 2006 @ 04:47:
Hij wil dat 't paswoord wordt ingevoerd in een gui app.
Precies, om een klein voorbeeltje te geven van wat ik nou precies heb gedaan:
code:
1
zenity --entry --hide-text --text "$MSG_ASKPWD" --title "$MSG_TITLE" | sudo -S netcfg $1 || echo fail
Kortom, ik vraag de user op een grafische manier om zijn password en voer die aan sudo. Op deze manier kan ik verifieren dat de juiste gebruiker het progje uitvoerd en netcfg als root uitvoeren. Wel zo safe.

Daarnaast, volgens mij is het pipen van een password op deze manier helemaal niet zo onveilig. Het password komt ten slotte nergens in de history of in logs te staan, omdat het direct door wordt gegeven aan sudo. Dus: Wel grafisch en niet onveilig. :)

[ Voor 3% gewijzigd door Mac_Cain13 op 21-04-2006 16:22 ]


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Op die manier is 't niet onveilig, nee :) Wel als je zou doen 'echo password | sudo -S'. Dan staat 'echo password' een (beperkte, toegegeven) tijd in je process list.

All my posts are provided as-is. They come with NO WARRANTY at all.

Pagina: 1