Filezilla lub WinSCP alternatywa dla Ubuntu

12

W systemie Windows używam FileZilla do przesyłania / pobierania plików z mojej witryny WordPress, za pośrednictwem sftp, przy użyciu klucza ssh.

Teraz Linux jest moim głównym systemem operacyjnym. Przez ostatni miesiąc klient FileZilla działał dobrze na Ubuntu 16.04, ale teraz ulega awarii przy każdym uruchomieniu. Przeszukuję internet i stwierdziłem, że dzieje się to z wieloma użytkownikami. Niestety obsługa FileZilla ma tylko jedną odpowiedź, jeśli zapytamy:

Ubuntu 16.04 to stary system operacyjny, użyj wersji 17.10 lub najnowszej wersji Debiana.

Nie chcę używać 17.10. Poszukuję alternatywy dla klienta FileZilla dla systemu Linux, której mogę użyć jako klienta sftp z kluczem ssh.

Znalazłem gFTP (który jest starym programem i nie jestem pewien, na ile jest bezpieczny?). Odkryłem również, że mogę użyć menedżera plików Ubuntu, aby połączyć się z moim serwerem. Czy to dobry pomysł, aby połączyć się z serwerem podczas korzystania z Nautilus lub Caja?

W rzeczywistości nie chcę umieszczać nazwy użytkownika / hasła w oknie dialogowym, które pojawia się po kliknięciu opcji Plik> Połącz z serwerem, zamiast tego chcę użyć mojego .ppkklucza. Jak mogę to dodać w Nautilus lub Caja?

ShahMoeen
źródło
Chcę tylko wyjaśnić moje pytanie. W rzeczywistości nie chcę umieszczać nazwy użytkownika / hasła w oknie dialogowym, które pojawia się po kliknięciu opcji Plik> Połącz z serwerem, zamiast tego chcę użyć klucza .ppk. Jak mogę to dodać w Nautilus lub Caja?
ShahMoeen,
1
Co jest nie tak z wersją w repozytorium 16.04?
RonJohn,
2
To Ubuntu, a nie deweloperzy Filezilla, którzy utrzymują gałąź Filezilla dla 16.04, więc to naturalne, że twórcy Filezilla po prostu powiedzą ci o aktualizacji, ponieważ nie są odpowiedzialni za zachowanie wersji Ubuntu 16.04. Spróbuj otworzyć Filezilla z okna terminala, więc jeśli się zawiesi, możesz otrzymać komunikat o błędzie lub ślad w konsoli, a następnie porównaj go z istniejącymi zgłoszonymi błędami w Filezilli, a jeśli jest nowy, zrób nowy raport.
thomasrutter,
2
dziwne, jak ubuntu wygodnie hamuje stare wersje, zmuszając ppl do aktualizacji; ale to, co dostajesz od krwawienia / niestabilności, dostajesz uderzenie głową kijem baseballowym co 6 miesięcy ..; spróbuj obniżyć wersję plikuzila
user688056

Odpowiedzi:

14

Korzystanie z Nautilus

Możesz użyć opcji Connect to Serverw Nautilus, jak pokazano na następnym obrazku.

wprowadź opis zdjęcia tutaj

  1. Pierwszy przykład - sftp://victoria-pass/home/tri- używa predefiniowanego hosta o nazwie victoria-passi montuje home/katalog zdalnego użytkownika o nazwie tri.

    Aby skorzystać z tego podejścia, należy utworzyć plik konfiguracyjny użytkownika dla lokalnego klienta ssh. Plik musi nazywać configi umieszczony w katalogu .ssh/w domu użytkownika: ~/.ssh/config. Zgodnie z przykładem zawartość pliku powinna być:

    Host victoria-pass             # this is as 'nickname' of the connection
        HostName victoria.org      # or use the IP address
        IdentityFile ~/.ssh/id_rsa # or provide the fill path to another key
        User tri                   # use the actual name of the remote user
        Port 1111                  # provide the actual port of the remote server
        # other parameters...
    
    # setup each another Host in the same way...        

    Zmień uprawnienia do pliku:

    chmod 600 ~/.ssh/config
    

    Ponadto teraz powinieneś być w stanie połączyć się z każdym z tych hostów za pomocą polecenia:

    ssh victoria-pass
    
  2. Drugi przykład - sftp://[email protected]:1111/home/tri- pokazuje, jak połączyć się ze zdalnym serwerem ssh (sftp) bez korzystania ze wstępnie zdefiniowanego ~/.ssh/configpliku z niestandardowym portem ssh.

    Główną wadą tego podejścia jest to, że jeśli plik uwierzytelniający nie jest ~/.ssh/id_rsa, powinieneś podać go z góry za pomocą polecenia ssh-add. Na przykład, jeśli plik uwierzytelnienia nazywa się file.pem:

    ssh-add /full/path/to/the/authentication/file.pem 
    

    Myślę, że powinieneś to robić za każdym razem, gdy ponownie uruchamiasz komputer lokalny, lub powinieneś dołączyć powyższe polecenie do ~/.profilepliku.


Usung gFTP

Oto kroki, jak skonfigurować gFTP do używania kluczy SSH.

wprowadź opis zdjęcia tutaj

  1. W menu FTP kliknij Preferencje ;

  2. Przejdź do zakładki SSH ;

  3. Wypełnij pole Dodatkowe parametry SSH następującą wartością:

    -o IdentityFile=/home/<your user>/.ssh/id_rsa
    

    Zmień za <user name>pomocą swojej prawdziwej nazwy użytkownika . Albo użyj:

    -o IdentityFile=~/.ssh/id_rsa
    
  4. W głównym oknie gFTP wybierz SSH2 jako typ połączenia;

  5. Wprowadź docelową nazwę hosta lub adres IP ;

  6. Skonfiguruj port SSH komputera docelowego (jeśli nie jest to domyślny - 22);

  7. Wprowadź użytkownika dla połączenia SSH;

  8. Wpisz swój klucz SSH na Przełęczy frazę (jeśli jest jakaś);

  9. Hit Enter.


Korzystanie z SSHFS

Możesz zamontować zdalny katalog (lub cały system plików) za pomocą narzędzia wiersza poleceń sshfs. Następnie możesz manipulować nim „lokalnie”, jak chcesz. To mój preferowany sposób. Załóżmy, że katalogiem instalacyjnym jest ~/mounti chcesz zamontować katalog domowy użytkownika zdalnego:

sshfs [email protected]:/home/<user> /home/<local-user>/mount/

Lub jeśli utworzyłeś ~/.ssh/configplik:

sshfs host-name:/home/<remote-user> /home/<local-user>/mount/

Dodatkowo możesz utworzyć także /etc/fstabwpis - referencje:


Konwertuj klucz PPK

Uwaga: jeśli wcześniej używałeś klucza PPK , co oznacza klucz prywatny PuTTY , powinieneś go przekonwertować, ponieważ w przeciwieństwie do CloneZilla, powyższe narzędzia nie mogą odczytać tego formatu. W tym celu należy użyć narzędzia, puttygenktóre jest częścią pakietu putty-tools:

sudo apt install putty-tools

Teraz możesz przekonwertować klucz w ten sposób:

puttygen input-key-filename.ppk -O private-openssh -o output-key-filename.pem

Dzięki @steeldriver za tę notatkę. Oto źródło i kilka dodatkowych odniesień:


Według bezpieczeństwa

Chociaż wszystkie podejścia wykorzystują tę samą metodę połączenia - SSH - zapewniane przez nie zabezpieczenia powinny być równoważne. Z Wikipedii :

Secure Shell (SSH) to kryptograficzny protokół sieciowy do bezpiecznego zarządzania usługami sieciowymi w niezabezpieczonej sieci ... SSH zapewnia bezpieczny kanał w niezabezpieczonej sieci w architekturze klient-serwer, łącząc aplikację kliencką SSH z serwerem SSH ...

Szyfrowanie używane przez SSH ma na celu zapewnienie poufności i integralności danych w niezabezpieczonej sieci, takiej jak Internet ... SSH wykorzystuje kryptografię klucza publicznego do uwierzytelnienia zdalnego komputera i umożliwienia uwierzytelnienia użytkownika, jeśli to konieczne ...

Jednym ze sposobów jest użycie automatycznie generowanych par kluczy publiczny-prywatny do zwykłego szyfrowania połączenia sieciowego, a następnie użycie uwierzytelnienia za pomocą hasła do zalogowania ...

Innym jest użycie ręcznie wygenerowanej pary kluczy publiczno-prywatnych do przeprowadzenia uwierzytelnienia, umożliwiając użytkownikom lub programom logowanie się bez konieczności podawania hasła. W tym scenariuszu każdy może wyprodukować pasującą parę różnych kluczy (publicznych i prywatnych) ...

pa4080
źródło
Dziękuję za odpowiedź. tak naprawdę nie chcę umieszczać nazwy użytkownika / hasła w oknie dialogowym, które pojawia się po kliknięciu Plik> Połącz z serwerem, zamiast tego chcę użyć klucza .ppk. Jak mogę to dodać w Nautilus lub Caja?
ShahMoeen,
@ShahMoeen, skończyłem.
pa4080,
2
@ShahMoeen zobacz Jak przekonwertować Filezilla PPK na klucz zgodny z openssh sftp . Ewentualnie, jeśli nadal masz dostęp do systemu Windows, jak przekonwertować plik .ppk PuTTY na klucz SSH
steeldriver
Dziękuję @ pa4080 za uprzejmą i szczegółową odpowiedź. Zrobiłem każdy krok z gFTP, ale niestety to nie zadziałało. Na głównym ekranie gFTP po wprowadzeniu danych hosta, portu i użytkownika po naciśnięciu klawisza enter, zaczął się łączyć, ale to się nigdy nie kończy, na dole widzę, że zatrzymuje się przy „Inicjalizacji protokołu”
ShahMoeen
@steeldriver bardzo dziękuję, w końcu zrobiłem to z gFTP. Dziękuję wszystkim za pomoc, BTW, czy ludzie dadzą mi znać, której metody używasz i dlaczego?
ShahMoeen,