Jak mogę edytować pliki na moim zdalnym hoście za pomocą moich lokalnych emacs, gdy mogę uzyskać dostęp do zdalnego hosta przez SSH z uwierzytelnianiem kluczem publicznym? Tramp dobrze radzi sobie z normalnym logowaniem, ale nie wiem, jak sprawić, by działał z parami kluczy. Używam unix/linux na obu końcach.Edycja plików zdalnych za pomocą Emacsa za pomocą uwierzytelniania za pomocą klucza publicznego
Odpowiedz
Brak jest równoważnika TRAMP do ssh [email protected] -i private-key.pem
. Jeśli jednak uruchomisz komendę powłoki ssh-add private-key.pem
, ssh (a tym samym TRAMP) automatycznie użyje uwierzytelnienia private-key.pem
. Po prostu ssh [email protected]
będzie działać na powłoce, a otwarcie pliku /[email protected]:~/filename.txt
będzie działać w emacs, bez pytania o hasło.
Jeśli używasz pliku '~/.ssh/config' do zarządzania kluczami, zobacz odpowiedź [@Sebastien] (http://stackoverflow.com/a/10738277/881224). – Droogans
Jeśli korzystasz z systemu Windows, możesz z łatwością korzystać z funkcji "puknij z trampem". Musisz upewnić się, że plik binarny jest na twojej ścieżce i musisz spersonalizować zmienną (M-x customize-option) domyślną metodę trampową, która w połączeniu ze słowem pageant dostarczy ci tego, czego chcesz.
Pozwoliłem ci przeczytać stronę domową putty, jak skonfigurować konkurs, aby dodać swój klucz.
Istnieje również metoda plinkx które wykorzystują nazwę profilu tak, kiedy wykonujesz:
C-x C-f /putty_profile:
Będzie uzyskać putty_profile ze swojego kit zapisanej nazwy profilu.
Jeśli korzystasz z Linuksa, zwykle nowoczesne dystrybucje powinny mieć klucz gnome (nazwany także konik morski), który zaczyna X od globalnego agenta SSH. Przykład na moim debian dystrybucji:
[email protected]:~$ ps aux|grep ssh-agent
chmouel 2917 0.0 0.0 4904 552 ? Ss Aug30 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/seahorse-agent --execute x-session-manager
jeśli zrobić ssh-add (upewniając się, że posiada tożsamość w katalogu ~/.ssh prawidłowo skonfigurowana) powinien zażądać dla hasła i identyfikacji dla wszystkich sesji X.
Jeśli tak się nie stanie, prawdopodobnie masz problem gdzie indziej w swojej dystrybucji.
Nie otrzymuję pytania, ponieważ Tramp działa doskonale z połączeniami SSH uwierzytelnianymi za pomocą klucza publicznego. Na przykład, zakładając, że zostały ustawione następujące config w ~/.ssh/config
:
Host remotehost
User mylogin
Port 22
Hostname remotehost.fqdn
i przy założeniu, że można uruchomić ssh remotehost
prawidłowo w terminalu, to jesteś w stanie otworzyć plik zdalny przy użyciu TRAMP Cx Cf /remotehost:path/to/file
To była dobra odpowiedź, wystarczyło dodać 'IdentityFile ~/.ssh/identity-file' – Alex
- 1. Autoryzacja klucza publicznego SSH za pomocą Libssh2 C++
- 2. eksport do folderu publicznego za pomocą axlsx
- 3. has_many: za pomocą klucza obcego?
- 4. Pobieranie i usuwanie plików zdalnych za pomocą lftp
- 5. Zapisywanie plików za pomocą spinacza za pomocą interfejsu API
- 6. Edycja strony pdf za pomocą pdfbox
- 7. Niestandardowa edycja ostrości za pomocą klawiatury Android
- 8. Jaki jest najlepszy sposób otwierania plików zdalnych za pomocą emacsa i ssh
- 9. Edycja istniejących plików Excela za pomocą jxl api/Apache POI
- 10. Personifikowanie przy użyciu uwierzytelniania za pomocą formularzy
- 11. Przesyłanie plików za pomocą extjs4
- 12. transfer plików za pomocą RMI
- 13. Przesyłanie plików za pomocą Sinatry
- 14. Sortowanie plików za pomocą DirectoryIterator
- 15. Otwieranie plików za pomocą JFileChooser
- 16. Przesyłanie plików za pomocą RichFaces
- 17. Pobieranie plików za pomocą FtpWebRequest
- 18. Pobieranie plików za pomocą Java
- 19. Śledzenie za pomocą androida za pomocą opencv
- 20. Jak korzystać z uwierzytelniania ssh za pomocą interfejsu API github?
- 21. zalety "Uwierzytelniania HTTP za pomocą PHP"
- 22. Uruchomienie uwierzytelniania LTI za pomocą Node.js
- 23. Użycie uwierzytelniania piramidy za pomocą piramidy
- 24. Przykład uwierzytelniania za pomocą AWS Cognito (boto3)
- 25. Uzyskaj zasób z ResourceDictionary za pomocą klucza
- 26. Uwierzytelnianie za pomocą interfejsu API Google za pomocą konta AccountManager
- 27. TortoiseGit za pomocą niepoprawnego klucza SSH
- 28. Sortowanie tablic zmiennych za pomocą klucza słownika
- 29. Uwierzytelnianie za pomocą klucza tokenu w Postmanie
- 30. Jak określić hasło klucza za pomocą javax.net.ssl?
Używam TRAMP z uwierzytelnianiem kluczem publicznym. Czy mógłbyś trochę wyjaśnić, co dzieje się nie tak (i jakiej wersji używasz Emacs)? Uważam, że TRAMP po prostu dzwoni do SSH, więc najpierw upewnię się, że "ssh yourname @ yourhost" działa zgodnie z oczekiwaniami przy logowaniu kluczem publicznym. – Phil
Dzięki, twoje zapytanie skierowało mnie na właściwy tor, a ja rozwiązałem problem (nauczyłem się lepiej używać SSH). Jednak nadal chciałbym wiedzieć, jak korzystać z Trampa, gdy plik tożsamości SSH znajduje się w niestandardowej lokalizacji, a zatem trzeba użyć opcji wiersza polecenia SSH "-i". – pico
Możesz dodać plik tożsamości za pomocą polecenia ssh-add. – remvee