SFTP/SSH Network location för Kodi

Permalänk
Medlem

SFTP/SSH Network location för Kodi

Hej!

Har ett problem här hemma. Jag försöker lägga till min server som nätverksenhet via SFTP/SSH. När jag gör det med Kodi får jag felmeddelandet "Kodi was unable to connect to the network location. This could be due to the network not being connected. Would you like to add it anyway?".

Servern ifråga har SFTP/SSH tjänster igång. Det går tillexempel utmärkt att ansluta till den med hjälp av filezilla eller terminalen. Följande meddelanden får jag i auth.log på servern när jag försöker ansluta:

Jun 13 20:43:25 charlie sshd[2707]: Received disconnect from xxx.xxx.xxx.xxx: 11: Bye Bye [preauth]

Så här säger Kodi's logg:

20:56:31 T:140735172117248 ERROR: SFTPSession: Password present, but server does not support password authentication 20:56:31 T:140735172117248 ERROR: SFTPSession: No authentication method successful 20:56:31 T:140735172117248 ERROR: SFTPSession: Not connected, can't list directory '/tank' 20:56:31 T:140735172117248 ERROR: GetDirectory - Error getting sftp://USERNAME:PASSWORD@xxx.xxx.xxx.xxx:22//tank

Det verkar alltså som att inloggningen från Kodi's sida inte sker på korrekt sätt. Jag antar att Kodi skriver USERNAME:PASSWORD för att inte lagra lösenord i klartext? Det känns lite obra annars. Jag kan såklart köra med andra protokoll (AFP/Samba/NFS), vilket jag gör lokalt. Dock vill jag gärna kunna köra detta enkelt utifrån nätverket. Några förslag på hur man kan få bukt med detta?

Permalänk
Skrivet av trexake:

20:56:31 T:140735172117248 ERROR: SFTPSession: Password present, but server does not support password authentication 20:56:31 T:140735172117248 ERROR: GetDirectory - Error getting sftp://USERNAME:PASSWORD@xxx.xxx.xxx.xxx:22//tank

Verkar som att du har krypteringsnyckel-baserad inloggning (alltså utan lösenord och användarnamn) aktiverad på servern. Eller brukar du logga in med användarnamn lösenord via SSH mot den?

Visa signatur
Permalänk
Medlem
Skrivet av CryingFreeman:

Verkar som att du har krypteringsnyckel-baserad inloggning (alltså utan lösenord och användarnamn) aktiverad på servern. Eller brukar du logga in med användarnamn lösenord via SSH mot den?

Jag loggar in med lösenord och användarnamn, dvs en nyckel krävs ej. Det fungerar som sagt utmärkt när jag försöker ansluta med andra klienter (filezilla, ssh, sftp, rsync).

Permalänk

Har tyvärr ingen erfarenhet av Kodi, men går det att komma åt någon form av shell-prompt/terminalfönster så kan du ju prova med att logga in manuellt den vägen.

Sorry för den sparsmakade hjälpen...

Visa signatur
Permalänk
Medlem

Tjena!

Såg lite skumt ut på sökvägen med 2st / på slutet. Jag kollade lite på kodis forum och där hade man /~ på slutet i sökvägen vilket jag tror är hemma katalogen för användaren "USERNAME". Prova skapa ett konto som har hemmakatalog /tank och sedan låter du kodi logga in utan hänvisning till att byta katalog till /tank. Kodi är ju inte helt buggfritt heller..

Permalänk
Medlem

Som nämnt, det går utmärkt att komma åt detta via andra klienter. Gällande hur kodi skriver det så har jag självklart testat andra sökvägar. Testade att inte köra någon sökväg för att komma till användarens hemkatalog, med samma resultat.

09:40:49 T:140735172117248 ERROR: SFTPSession: Password present, but server does not support password authentication 09:40:49 T:140735172117248 ERROR: SFTPSession: No authentication method successful 09:40:49 T:140735172117248 ERROR: SFTPSession: Not connected, can't list directory '' 09:40:49 T:140735172117248 ERROR: GetDirectory - Error getting sftp://USERNAME:PASSWORD@xxx.xxx.xxx.xxx:22/

Dock är det ju så, att när jag ansluter med filezilla/terminalen eller dylikt får jag ju meddelandet att RSA key fingerprint inte kan autentiseras och man väljer då att fortsätta ändå (och det läggs in i known_host).

The authenticity of host 'host.se (xxx.xxx.xxx.xxx)' can't be established. RSA key fingerprint is "fingerprint". Are you sure you want to continue connecting (yes/no)?

Skiljer sig detta från vanlig användarnamn/lösenord autentisering?

Permalänk
Medlem

Ja i och med att en krypteringsnyckel används med denna "RSA key fingerprinter"-metod. kryptering är ju hela grejen med ssh/sftp. Frågan är ju hur Kodi har implementerat detta i sin applikation samt om de har gjort rätt. Skulle tro att Kodi's forum är bra ställe och kika på.

Permalänk
Medlem
Skrivet av Lubenero:

Ja i och med att en krypteringsnyckel används med denna "RSA key fingerprinter"-metod. kryptering är ju hela grejen med ssh/sftp. Frågan är ju hur Kodi har implementerat detta i sin applikation samt om de har gjort rätt. Skulle tro att Kodi's forum är bra ställe och kika på.

Man tycker ju att Kodi borde klara av detta. Vet att jag har kört sftp för typ två år sedan med xbmc. Minns inte hur ssh servern var inställt där däremot. Kodi lagrar även information till mediaenheter i klartext.
mediasources.xml

<mediasources> <network> <location id="0">smb://rpi:secretPassword@192.168.1.150/</location> <location id="1">sftp://rpi::secretPassword@xxx.xxx.xxx.xxx:22/tank</location> </network> </mediasources>

Permalänk

@trexake:

Vilken version av kodi kör du? Har hittat en bugg som verkar överensstämma någorlunda med ditt problem och denna är åtgärdad i version 14.

http://trac.kodi.tv/ticket/15357
http://trac.kodi.tv/attachment/ticket/15357/kodi.log < Sök efter "password present" så ser du ..

http://forum.kodi.tv/showthread.php?tid=140532

Vet inte om det här är relaterat, men det är värt ett försök?

Visa signatur
Permalänk
Medlem
Skrivet av CryingFreeman:

@trexake:

Vilken version av kodi kör du? Har hittat en bugg som verkar överensstämma någorlunda med ditt problem och denna är åtgärdad i version 14.

http://trac.kodi.tv/ticket/15357
http://trac.kodi.tv/attachment/ticket/15357/kodi.log < Sök efter "password present" så ser du ..

http://forum.kodi.tv/showthread.php?tid=140532

Vet inte om det här är relaterat, men det är värt ett försök?

Jag kör den senaste (14.2). Vidare har jag märkt att jag inte alls kör password Authentication utan Keyboard-Interactive authentication (innefattar inte detta password authentification?). Det skönaste i just detta fallet vore om man kunde fixa med nycklar och dylikt för Kodi. Ändrar jag och kör passwordAuthentification yes i sshd_config fungerar det fint. Får se hur jag gör i framtiden. Har otroligt många inbrottsförsök varje dag. Ligger fortfarande på port 22 men kör med sshguard så folk blir rätt hårt bannade (flera hundra IP som är bannade). Kör med starka lösenord också.

Permalänk

Generera nycklar är inte så svårt.

Anta att du har användarnamnet pelle på båda datorerna och hemkatalog /home/pelle

Logga in som pelle. Kör

ssh-keygen -t rsa

på den dator du vill ansluta ifrån (klient). Ange en lösenordsfras.

Kopiera /home/pelle/.ssh/id_rsa.pub på klienten till /home/pelle/.ssh/authorized_keys på den server du vill ansluta till. Kopiera sedan in innehållet av id_rsa.pub i authorized_keys. Skriv inte över filen utan lägg till, t ex genom

cat id_rsa.pub >> .ssh/authorized_keys

Klart.

Visa signatur
Permalänk
Medlem
Skrivet av CryingFreeman:

Generera nycklar är inte så svårt.

Anta att du har användarnamnet pelle på båda datorerna och hemkatalog /home/pelle

Logga in som pelle. Kör

ssh-keygen -t rsa

på den dator du vill ansluta ifrån (klient). Ange en lösenordsfras.

Kopiera /home/pelle/.ssh/id_rsa.pub på klienten till /home/pelle/.ssh/authorized_keys på den server du vill ansluta till. Kopiera sedan in innehållet av id_rsa.pub i authorized_keys. Skriv inte över filen utan lägg till, t ex genom

cat id_rsa.pub >> .ssh/authorized_keys

Klart.

Däremot: Hur får jag Kodi att använda den nyckeln? Det ser till synes ut som att Kodi enbart stödjer password authentification.

Permalänk
Medlem

@trexake: Du har förmodligen löst frågan (eller gett upp) för länge sedan, men jag tänkte bidra med min erfarenhet efter att själv ha brottats med just denna fråga.

TL;DR - Ja, det verkar gå att få Kodi att autentisera med hjälp av existerande public-private nycklar. Dock, så förefaller det som att Kodi enbart klarar att hantera "passwordless" nycklar.

Jag har följande i min ~/.ssh/config (anpassa allt inom hakparenteser):

Host <somedescriptivename> Hostname <mittkodi.minserver.se> PreferredAuthentications publickey IdentityFile </home/acamar/.ssh/kodikey> IdentitiesOnly yes User <acamar>

Och i mitt Kodi mediasources.xml (och även i de andra Kodi-inställningsfilerna), så använder jag samma "hostname" som i ~/.ssh/config, så här:

<mediasources> <network> <location id="0">sftp://<somedescriptivename>//media/audio/music</location> </network> </mediasources>

Jag provade först med min vanliga lösenordsförsedda nyckel, men det fungerade inte. När jag bytte till en nyckel med odefinierat lösenord ("passwordless") så fungerade det däremot bra.

Permalänk
Medlem
Skrivet av acamar:

@trexake: Du har förmodligen löst frågan (eller gett upp) för länge sedan, men jag tänkte bidra med min erfarenhet efter att själv ha brottats med just denna fråga.

TL;DR - Ja, det verkar gå att få Kodi att autentisera med hjälp av existerande public-private nycklar. Dock, så förefaller det som att Kodi enbart klarar att hantera "passwordless" nycklar.

Jag har följande i min ~/.ssh/config (anpassa allt inom hakparenteser):

Host <somedescriptivename> Hostname <mittkodi.minserver.se> PreferredAuthentications publickey IdentityFile </home/acamar/.ssh/kodikey> IdentitiesOnly yes User <acamar>

Och i mitt Kodi mediasources.xml (och även i de andra Kodi-inställningsfilerna), så använder jag samma "hostname" som i ~/.ssh/config, så här:

<mediasources> <network> <location id="0">sftp://<somedescriptivename>//media/audio/music</location> </network> </mediasources>

Jag provade först med min vanliga lösenordsförsedda nyckel, men det fungerade inte. När jag bytte till en nyckel med odefinierat lösenord ("passwordless") så fungerade det däremot bra.

Intressant, tack! Jag ska kolla på detta när jag har tid. Använder sällan denna tjänst men det är trevligt att det fungerar när man vill.