Toon posts:

Rsync zonder wachtwoord problemen met ip adres

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

Verwijderd

Topicstarter
Ik heb een tijdje geleden een backup script gemaakt die een aantal directories van server1 backuped naar server2 (beide staan ergens in amerika). Dat doe ik met rsync (met public/private keys, volgens: http://www.linux.com/articles/113847 )

Werkt allemaal goed. Maar nu heb ik lokaal een backup computer aangeschaft en zou ik graag dagelijks een backup maken van m'n backup server.

Dus ik heb een key aangemaakt op m'n lokale server, de publieke key naar m'n backup server gekopieerd en toegevoegd aan de authorized_keys bestand.

from="[my_non_lan_ip]",command="/root/validate-rsync.sh" ssh-dss AAAAB3NzaC1kc3MA ... bigbox.lan

Het vreemde is dat als ik een backup probeer te maken er nog steeds om een wachtwoord word gevraagd:

rsync -e 'ssh -p 2323 -i /root/bigbox-rsync-key' -az -v --stats root@blog.com:/var/backup/ /backups/

Als ik "from="[my_non_lan_ip]"" verwijder uit m'n authorized_keys dan gaat het perfect en word ik niet gevraagd om wachtwoord.

M'n lokale server zit achter een adsl modem (met nat/dcpd/firewall). [my_non_lan_ip] is vervangen door m'n echte xs4all internet ip adres.

Weet iemand wat ik kan proberen om te zien wat er verkeerd gaat? Ik zie nergens een rsync log file of een debug optie.

Verwijderd

Topicstarter
Bumpy :+

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 07-01 22:10
Probeer het eens met de NAAM van je host waarmee je toegang zoekt.
Als dat niet werkt, voeg dan de optie -v toe direct achter ssh om uit te zoeken waarom de toegang op basis van key wordt geweigerd.

Verwijderd

Topicstarter
Dank je sam.vimes.

Ik heb het met de -v optie geprobeerd en dan krijg ik wat meer duidelijkheid:
===
[root@bigbox ~]# rsync -e 'ssh -v -p 2323 -i /root/bigbox-rsync-key' -az --exclude-from=/root/exclude -v --stats root@blog.com:/var/serverbackups /serverbackups/
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to blog.com [xx.xx.xx.xx] port 2323.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/bigbox-rsync-key type 2
debug1: Remote protocol version 1.99, remote software version OpenSSH_3.9p1
debug1: match: OpenSSH_3.9p1 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_3.9p1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'blog.com' is known and matches the RSA host key.
debug1: Found key in /root/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: gssapi-with-mic
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Offering public key: /root/bigbox-rsync-key
debug1: Remote: Your host 'axx-xx-xxx-xxx.adsl.xs4all.nl' is not permitted to use this key for login.
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: password
root@blog.com's password:
rsync error: received SIGUSR1 or SIGINT (code 20) at rsync.c(231)
===

Ik denk dank de volgende lijn het meest interessant is:
===
debug1: Remote: Your host 'axx-xx-xxx-xxx.adsl.xs4all.nl' is not permitted to use this key for login.
===

Nu heb ik toen ik de keys aanmaakte met ssh-keygen dit gedaan op m'n lokale netwerk, ik vermoed dat ssh-keygen toen het lokale ip adres heeft gebruikt voor het aanmaken van de keys. Maar de server ergens in amerika ziet niet m'n lokale ip adres maar m'n xs4all ip adres.

Heeft iemand enig idee hoe ik dat kan oplossen?

  • sam.vimes
  • Registratie: Januari 2007
  • Laatst online: 07-01 22:10
Verwijderd schreef op zondag 21 oktober 2007 @ 16:22:
[...]
Ik denk dank de volgende lijn het meest interessant is:
debug1: Remote: Your host 'axx-xx-xxx-xxx.adsl.xs4all.nl' is not permitted to use this key for login.


Nu heb ik toen ik de keys aanmaakte met ssh-keygen dit gedaan op m'n lokale netwerk, ik vermoed dat ssh-keygen toen het lokale ip adres heeft gebruikt voor het aanmaken van de keys. Maar de server ergens in amerika ziet niet m'n lokale ip adres maar m'n xs4all ip adres.

Heeft iemand enig idee hoe ik dat kan oplossen?
Je ip-adres wordt niet op een of andere manier opgeslagen in je key. Om een of andere reden mag jouw client-host axx-xx-xxx-xxx.adsl.xs4all.nl geen publickey-login uitvoeren. Ik denk dat de string adsl in je hostnaam geblacklist is, om misbruik door spammers te voorkomen.

Een andere mogelijkheid is dat de server bij jouw public key heeft vastgelegd vanaf welk ip-adres je die voor het eerst gebruikte en staat hij nu alleen dat ip-adres toe. Dan is het probleem op te lossen door op de client-host een nieuw public/private key pair aan te maken en de nieuwe public key ook te installeren in jouw authorized_keys-file op de server.