Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Password bij ssh script  (gelezen 1492 keer)

Offline gercokees

  • Lid
Password bij ssh script
« Gepost op: 2006/12/27, 16:41:50 »
Hoi hoi,
Ik heb een stukje code geknusteld, en via de rc2.d map gelinkt. Ik heb getest, en het stukje kode wordt tijdens het opstarten netjes uitgevoerd, maar het doet (helaas natuurlijk) niet precies wat ik wil. Ik denk dat het komt omdat er een ssh password nodig is in het volgende stukje:

   rsync -arvuz --delete                                  \
        --exclude-from="$EXCLUDES"                         \
        -e ssh                                             \
                            /home/gercokees/docjes/        \
        gercokees@gercokees:/home/gercokees/docjes

touch /home/gercokees/testen.txt
Als ik het script handmatig uitvoer dan doet ie het wel, maar alleen tijdens het opstarten dus niet. (Het wordt wel gestart tijdens het opstarten, Dat kan ik zien aan het touch commando....)

Wie weet goede raad?
Groet,
Gerco-Kees
<><

Password bij ssh script
« Reactie #1 Gepost op: 2006/12/27, 16:47:16 »
Hangt ervan af wanneer het wordt uitgevoerd tijdens het opstarten. Als het wordt opgestart als er nog geen netwerk beschikbaar is dan ben je de pineut :)

Laat je het uitvoeren door Upstart of door de gnome session manager?
www.sinax.be
Open Source Integrators, consulting and custom development

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #2 Gepost op: 2006/12/27, 16:53:52 »
Upstart kan toch alleen in Edgy? Op deze computer gebruik ik dapper. Het nadeel van de gnome session manager is dat het alleen bij de gebruiker werkt die op dat moment is ingelogd... In de rc2.d map heb ik de volgende link gemaakt:
S80syncen
moet goed zijn dacht ik...
of moet ie toch in de rcS.d map???
Groet,
Gerco-Kees
<><

Password bij ssh script
« Reactie #3 Gepost op: 2006/12/27, 17:14:16 »
Wist niet zeker wat voor versie je draaide en aangezien je nogal hardcore bezig bent vermoede ik dat je Edgy draaide :)

Probeer eens S99Syncen, dat heeft de laagste prioriteit als ik het goed heb. Als om de een of andere reden een benodigde service na S80 start heb je problemen. Maar ik vermoed dat alles goed staat, S80 zou goed genoeg moeten zijn.
www.sinax.be
Open Source Integrators, consulting and custom development

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #4 Gepost op: 2006/12/27, 17:31:31 »
Wel, /etc/rc2.d/S99syncen werkt helaas nog niet..
Wel leuk dat je vind dat ik hardcore bezig ben. Dat zie ik wel als een compliment... :-)
Groet,
Gerco-Kees
<><

Offline Tukcedo

  • Lid
    • http://www.tukcedo.nl
Password bij ssh script
« Reactie #5 Gepost op: 2006/12/29, 13:22:30 »
Het probleem is waarschijnlijk dat wanneer het script wordt uitgevoerd, er nog geen juiste omgevingsvariabelen bekend zijn omdat je nog niet als gebruiker bent ingelogd. Ik neem dus even aan dat als je bent ingelogd en het script werkt zoals je zegt, dat je ook niet om een wachtwoord wordt gevraagd, m.a.w. je hebt public key authenticatie goed ingesteld. In dat geval kun je specifiek naar de juiste private key verwijzen. Als je er geen bijzondere naam aan hebt gegeven, dan is dit waarschijnlijk ~/.ssh/id_dsa. In je script kun je de verwijzing naar deze key opnemen met "-i /home/gercokees/.ssh/id_dsa". Omdat je de userid e.d. al in het commando hebt opgenomen lijkt me zo op 1e gezicht de rest van je commando compleet.
Tukcedo Services - Unix en Linux Consultants
http://www.tukcedo.nl

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #6 Gepost op: 2006/12/29, 15:27:14 »
Ik heb er inderdaad nog eens over nagedacht, en ik denk dat ik iets met die public key niet goed heb gedaan. Ik wordt namelijk ook als ik ben ingelogd toch om een password gevraagd... De inhoud van mijn ~/.ssh/ is:
autohorized_keys2
id_dsa
id_dsa.pub
known_hosts

die authorized key bevat de key die ik op de andere computer heb aangemaakt. Heb ik misschien een foutje gemaakt met het copieeren ofzo?

De inhoud van known_hosts zijn twee regels, die voor een groot deel identiek is, op de eerste pakweg 60 karakters na....
Groet,
Gerco-Kees
<><

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #7 Gepost op: 2007/01/04, 20:35:58 »
Hoera,
Na een avond van geexpirimenteer gaat ie nu heerlijk synchroniseren. Het probleem zat m er onderandere in dat ik iets met die ssh key's verkeerd had gedaan. Waarschijnlijk niet goed gecopieerd ofzo. Uiteindelijk de map .ssh verplaatst, en opnieuw key's gegenereerd, op beide computers, nog wat kleine aanpassingen (hij vond de exclude file nog niet) en nu werkt het (voor een groot deel).

Er is nog een probleem (of eigenlijk, een onopgeloste vraag..)
er staat nu dit:
  rsync -arvuz                                            \
--exclude-from="$EXCLUDES"                          \
        -e "ssh -i /home/gercokees/.ssh/id_dsa"             \
                            /home/                          \
        gercokees@gercokees:/home/ ;
Tijdens het opstarten (via rc2.d/S99syncen....) synchroniseert ie keurig mijn eigen bestanden, maar niet van andere gebruikers. Komt denk ik omdat ie geen root wordt op de andere computer...
Wie weet wat?
Groet,
Gerco-Kees
<><

Offline Tukcedo

  • Lid
    • http://www.tukcedo.nl
Password bij ssh script
« Reactie #8 Gepost op: 2007/01/05, 11:49:17 »
Dat komt inderdaad omdat het script jou aan de andere kant ook inlogt als gercokees en jij hebt natuurlijk geen schrijfrechten op de dirs van andere gebruikers. Dezelfde truc met de .ssh bestanden uithalen als root gebruiker op de ontvanger, eigenlijk dus: authorized_keys aanpassen en pubkey kopieren.
Tukcedo Services - Unix en Linux Consultants
http://www.tukcedo.nl

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #9 Gepost op: 2007/01/05, 11:55:06 »
is:
sudo cp /home/gercokees/.ssh/ /root/.ssh/

en script bewerken naar:
 rsync -arvuz                                            \
    --exclude-from="$EXCLUDES"                          \
        -e "ssh -i /root/.ssh/id_dsa"             \
                            /home/                          \
        root@gercokees:/home/ ;
dan genoeg?
Groet,
Gerco-Kees
<><

Offline Tukcedo

  • Lid
    • http://www.tukcedo.nl
Password bij ssh script
« Reactie #10 Gepost op: 2007/01/05, 15:49:48 »
Je hoeft op de ZENDER niks te veranderen, op de ONTVANGER kun je de bestanden authorized_keys en de pubkey naar /root/.ssh kopieren. Ik zou niet de hele directory overzetten, tenzij je natuurlijk de ownership e.d. aanpast. Let op: SSH kan zo zijn geconfigureerd dat het bij al te losse permissies geen toegang geeft. De eerste keer zou ik het even met het handje proberen.

Succes!
Tukcedo Services - Unix en Linux Consultants
http://www.tukcedo.nl

Offline gercokees

  • Lid
Password bij ssh script
« Reactie #11 Gepost op: 2007/01/06, 11:06:03 »
Hoi,
Het is gelukt, en het loopt als een trein....!
Dankjulliewel
Groet,
Gerco-Kees
<><