[ssh/ubuntu] Commando aanroep op externe server werkt niet

Pagina: 1
Acties:

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 16:15

alienfruit

the alien you never expected

Topicstarter
Ik ben bezig om van web-server A enkele commando's uit te voeren op server B. Nu heb ik het zover dat ik zonder inloggen ssh webcontrol@serverB kan gebruiken. Om een reeks commando's uit te voeren. Alleen nu is er één regel nodig waarvoor ik sudo nodig heb. Alleen als ik dus het volgende probeer: ssh webcontrol@serverB 'sudo trac-admin /srv/trac_envs/client1 initenv dan krijg ik de volgende foutmelding:

code:
1
2
3
4
5
6
7
8
root@webserver:~# ssh webcontrol@orbit 'sudo trac-admin /srv/trac_envs/client1 initenv'
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts


Iemand enig idee hoe ik dit kan oplossen? Ik heb gelezen dat je dit zou kunnen oplossen door sudoers aan te passen op de orbit/Server B. Ik heb nu het volgende maar het werkt nog steeds:

code:
1
2
3
4
5
6
7
8
9
# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL
webcontrol ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
webcontrol ALL=(ALL:ALL) ALL

webcontrol ALL=NOPASSWD: /usr/local/bin/trac-admin /usr/bin/trac-admin


Iemand enig idee wat ik fout doe?

  • pachacuti
  • Registratie: Januari 2002
  • Laatst online: 14-09 12:40
probeer eens:

ssh -t webcontrol@orbit 'sudo trac-admin /srv/trac_envs/client1 initenv'

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 08-06 08:44
Voeg optie -t aan het ssh-commando toe om te forceren dat er een pseudo-tty wordt gealloceerd.

pachacuti was me voor...

[ Voor 14% gewijzigd door sam.vimes op 06-09-2012 09:34 . Reden: te laat ]


  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 16:15

alienfruit

the alien you never expected

Topicstarter
Ja, dan vraagt ie dus om het wachtwoord. Ik had verwacht dat die weg ging via mijn sudoers :|

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 08-06 08:44
Er wordt om je wachtwoord gevraagd door sshd op de server, nog voordat het sudo-commando wordt aangeroepen.
Om wachtwoordloos in te loggen met ssh moet je een private/public key pair genereren zonder wachtwoord en de public key toevoegen aan ~webcontrol/.ssh/authorized_keys op de server en inloggen met ssh -i private_key_file.

[ Voor 7% gewijzigd door sam.vimes op 06-09-2012 12:14 ]


  • lordgandalf
  • Registratie: Februari 2002
  • Laatst online: 02-10 16:23
sudo vraagt altijd om een password if im correct.
als er een manier is om het met keys te doen zou ik die ook wel willen weten.

Steam: Profile / Socialclub: Profile / Uplay: minedwarf / Origin: lordgandalf3


  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 08-06 08:44
lordgandalf schreef op donderdag 06 september 2012 @ 12:16:
sudo vraagt altijd om een password if im correct.
als er een manier is om het met keys te doen zou ik die ook wel willen weten.
Sorry, je bent niet correct.
Uit de manual page van sudoers:
A password is not required if the invoking user is root, if the target user is the same as the invoking user, or if the policy has disabled authentication for the user or command.
AFAIK, de config van alienfruit is correct (http://www.gratisoft.us/s....html#nopasswd_and_passwd).

  • lordgandalf
  • Registratie: Februari 2002
  • Laatst online: 02-10 16:23
Ja okee dan niet inderdaad maar in dit specifieke geval heb ik het nooit voor elkaar gekregen om met ssh keys direct root te worden via sudo
sudo vraagt dan altij een wachtwoord

Steam: Profile / Socialclub: Profile / Uplay: minedwarf / Origin: lordgandalf3


  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 23:03

Hero of Time

Moderator LNX

There is only one Legend

lordgandalf schreef op donderdag 06 september 2012 @ 12:30:
Ja okee dan niet inderdaad maar in dit specifieke geval heb ik het nooit voor elkaar gekregen om met ssh keys direct root te worden via sudo
sudo vraagt dan altij een wachtwoord
Net gedaan, werkt zonder wachtwoord vragen, als visudo correct is ingesteld.
ssh user@server 'sudo whoami'
root


En anders is het werken zoals eerder is aangegeven via ssh -t.

Commandline FTW | Tweakt met mate


  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 18:29

deadinspace

The what goes where now?

alienfruit schreef op donderdag 06 september 2012 @ 09:26:
Alleen als ik dus het volgende probeer: ssh webcontrol@serverB 'sudo trac-admin /srv/trac_envs/client1 initenv dan [...]
code:
1
webcontrol ALL=NOPASSWD: /usr/local/bin/trac-admin /usr/bin/trac-admin

Iemand enig idee wat ik fout doe?
Je roept sudo trac-admin aan met de argumenten "/srv/trac_envs/client1 initenv", maar in je sudoers staat dat alleen het argument "/usr/bin/trac-admin" is toegestaan. Ik denk dat je een komma had willen typen tussen die twee executables.

Ik raad overigens wel aan om de argumenten via sudo te beperken. En één trac-admin lijkt me wel voldoende ;)

  • terual
  • Registratie: Augustus 2010
  • Laatst online: 19-09 05:49
Waarom log je niet als root in op de server?
ssh root@orbit 'trac-admin /srv/trac_envs/client1 initenv'

  • SPee
  • Registratie: Oktober 2001
  • Laatst online: 21:42
terual schreef op donderdag 06 september 2012 @ 18:04:
Waarom log je niet als root in op de server?
ssh root@orbit 'trac-admin /srv/trac_envs/client1 initenv'
Waarschijnlijk omdat dat bij de meeste distro's is uitgeschakeld/geblokkeerd.
En omdat de TS wel gehoorzaamt aan de vele waarschuwingen "log nooit direct via SSH in als root gebruiker"

let the past be the past.


  • Kees
  • Registratie: Juni 1999
  • Laatst online: 18:55

Kees

Serveradmin / BOFH / DoC
deadinspace schreef op donderdag 06 september 2012 @ 16:24:


Je roept sudo trac-admin aan met de argumenten "/srv/trac_envs/client1 initenv", maar in je sudoers staat dat alleen het argument "/usr/bin/trac-admin" is toegestaan. Ik denk dat je een komma had willen typen tussen die twee executables.

Ik raad overigens wel aan om de argumenten via sudo te beperken. En één trac-admin lijkt me wel voldoende ;)
Daarbij kun je makkelijk zelf bepalen waar trac-admin staat met 'which trac-admin', dan hoef je uberhaubt geen twee paden op te geven.

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 16:15

alienfruit

the alien you never expected

Topicstarter
Aah, ik heb het probleem gevonden! De lijst met te gebruiken programma's is komma-gescheiden ipv mt spaties :|

Acties:
  • 0 Henk 'm!

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

lordgandalf schreef op donderdag 06 september 2012 @ 12:30:
Ja okee dan niet inderdaad maar in dit specifieke geval heb ik het nooit voor elkaar gekregen om met ssh keys direct root te worden via sudo
sudo vraagt dan altij een wachtwoord
Je haalt twee dingen door elkaar. Met ssh-keys kun je passwordless naar een server toe.
Of sudo een wachtwoord vraagt is afhankelijk van de NOPASSWD vlag in je sudoers. Hiervoor wordt niets gedaan met je ssh-keys

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 23:03

Hero of Time

Moderator LNX

There is only one Legend

alienfruit schreef op vrijdag 07 september 2012 @ 07:57:
Aah, ik heb het probleem gevonden! De lijst met te gebruiken programma's is komma-gescheiden ipv mt spaties :|
Tja, altijd handig om even de man-page te lezen ;). Probeer het eerst in een normale shell uit te voeren, want als je parameters mee moet geven, moet je die wellicht ook opgeven. Dat heb ik op 't werk ook, een gebruiker mag tomcat via sudo herstarten via het init script, meer niet. Maar als ik geen * zet achter 't init script, dan mag 't niets doen. Ik wil wel dat het kan kijken naar status e.d.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 16:15

alienfruit

the alien you never expected

Topicstarter
Nou ik ben al blij dat het werkt! ;)
Pagina: 1