Protokół transferu plików jest starszy niż większość naszych czytelników, ale nadal jest skuteczny. FTP nie ma bezpieczeństwa współczesnego protokołu, ale i tak może być konieczne jego użycie. Oto jak to zrobić.
Ostrzeżenie: nie używaj FTP przez Internet
Wyjaśnijmy to od samego początku: protokół przesyłania plików (FTP) sięga wczesnych lat siedemdziesiątych XX wieku i został napisany bez uwzględnienia bezpieczeństwa. Do niczego nie używa szyfrowania. Dane logowania, takie jak nazwa użytkownika i hasło, a także dane, które pobierasz lub przesyłasz, są przesyłane w postaci zwykłego tekstu. Każdy po drodze może zobaczyć Twoje sekrety. Jednak FTP nadal ma swoje zastosowania.
Jeśli przesyłasz pliki w sieci, powinieneś być bezpieczny - pod warunkiem, że nikt w sieci nie przechwytuje pakietów ani nie podsłuchuje poufnych dokumentów podczas ich przesyłania. Jeśli Twoje pliki nie są w żaden sposób poufne lub wrażliwe, przenoszenie ich w sieci wewnętrznej za pomocą protokołu FTP powinno być w porządku. Linux ma standard
ftp
program wiersza poleceń
poradzić sobie właśnie z tym scenariuszem.
Ale
Zdecydowanie
nie używaj
ftp
polecenie dostępu do zasobów zewnętrznych w Internecie. W tym celu użyj
sftp
program wiersza poleceń
, który używa bezpiecznego protokołu transferu plików SSH. W tym samouczku przedstawimy oba te programy.
Aby wyjaśnić, dlaczego nigdy nie chcesz używać protokołu FTP przez Internet, spójrz na poniższy zrzut ekranu. Pokazuje hasło FTP w postaci zwykłego tekstu. Każdy w Twojej sieci lub między Tobą a serwerem FTP w Internecie może łatwo sprawdzić, czy hasło to „MySecretPassword”.
Bez szyfrowania złośliwy aktor może również modyfikować pliki, które pobierasz lub przesyłasz podczas przesyłania.
Polecenie ftp
Zakładając, że masz ważne konto w witrynie FTP, możesz się z nim połączyć za pomocą następującego polecenia. W tym artykule zastępuj adres IP w poleceniach adresem IP serwera FTP, z którym się łączysz.
ftp 192.168.4.25
Ostrzeżenie
: Należy używać tylko rozszerzenia
ftp
polecenie, aby połączyć się z serwerami w zaufanej sieci lokalnej. Użyj
sftp
polecenie, opisane poniżej, do przesyłania plików przez Internet.
Serwer FTP odpowiada wiadomością powitalną. Sformułowanie powitania będzie się różnić w zależności od serwera. Następnie prosi o nazwę użytkownika konta, na które się logujesz.
Zwróć uwagę, że wyświetlany jest adres IP witryny, z którą się łączysz, a po nim nazwa użytkownika systemu Linux. Jeśli nazwa twojego konta na serwerze FTP jest taka sama jak nazwa użytkownika Linuksa, po prostu naciśnij klawisz Enter. Spowoduje to użycie nazwy użytkownika Linuksa jako nazwy konta na serwerze FTP. Jeśli nazwa użytkownika systemu Linux i nazwa konta FTP są różne, wpisz nazwę użytkownika konta FTP, a następnie naciśnij klawisz Enter.
Logowanie do serwera FTP
Zostaniesz poproszony o podanie hasła do witryny FTP. Wpisz swoje hasło i naciśnij Enter. Twoje hasło nie jest wyświetlane na ekranie. Jeśli kombinacja nazwy konta użytkownika FTP i hasła zostanie zweryfikowana przez serwer FTP, nastąpi zalogowanie na serwerze FTP.
Zostanie wyświetlony plik
ftp>
skłonić.
Rozglądanie się i odzyskiwanie plików
Po pierwsze, prawdopodobnie będziesz chciał uzyskać listę plików na serwerze FTP. Plik
ls
polecenie robi właśnie to. Nasz użytkownik widzi plik
gc.c
znajduje się na serwerze FTP i chce go pobrać na swój komputer. Jego komputer jest „komputerem lokalnym” w żargonie FTP.
Polecenie pobierania (lub „pobierania”) pliku to
otrzymać
. Dlatego nasz użytkownik wydaje polecenie
pobierz gc.c
. Piszą
otrzymać
, spacja, a następnie nazwa pliku, który chcą pobrać.
Serwer FTP odpowiada, przesyłając plik na komputer lokalny i potwierdzając, że transfer miał miejsce. Wyświetlany jest również rozmiar pliku i czas potrzebny na przesłanie.
ls
pobierz gc.c
Aby pobrać wiele plików jednocześnie, użyj rozszerzenia
mget
(wielokrotne pobieranie). Plik
mget
polecenie poprosi Cię o potwierdzenie, czy chcesz pobrać każdy plik po kolei. Odpowiedz, naciskając „y” na tak i „n” na nie.
Byłoby to uciążliwe w przypadku dużej liczby plików. Z tego powodu kolekcje powiązanych plików są zwykle przechowywane na stronach ftp jako pojedyncze pliki tar.gz lub tar.bz2 .
ZWIĄZANE Z: Jak wyodrębnić pliki z pliku .tar.gz lub .tar.bz2 w systemie Linux
mget * .c
Przesyłanie plików na serwer FTP
W zależności od uprawnień, które zostały przyznane Twojemu kontu FTP, możesz przesyłać (lub „umieszczać”) pliki na serwerze. Aby przesłać plik, użyj rozszerzenia
położyć
Komenda. W naszym przykładzie użytkownik przesyła plik o nazwie
Sans.tar.gaj
na serwer FTP.
put Songs.tar.gz
Jak zapewne się spodziewasz, istnieje polecenie umieszczenia wielu plików na serwerze FTP jednocześnie. To się nazywa
mput
(wkład wielokrotny). Podobnie jak
mget
polecenie zrobiło,
mput
zapyta o potwierdzenie „y” lub „n” w celu przesłania każdego pliku, jeden po drugim.
Ten sam argument dotyczący umieszczania zestawów plików w archiwach tar dotyczy wysyłania plików, tak jak w przypadku pobierania plików. Nasz użytkownik przesyła wiele plików „.odt” za pomocą następującego polecenia:
mput * .odt
Tworzenie i zmiana katalogów
Jeśli twoje konto użytkownika na serwerze ftp na to pozwala, możesz być w stanie tworzyć katalogi. Polecenie, aby to zrobić, to
mkdir
. Aby było jasne, każdy katalog utworzony za pomocą
mkdir
polecenie zostanie utworzone na serwerze ftp, a nie na komputerze lokalnym.
Aby zmienić katalogi na serwerze ftp, użyj rozszerzenia
Płyta CD
Komenda. Kiedy używasz
Płyta CD
polecenie
ftp>
znak zachęty nie zmieni się, aby odzwierciedlić nowy bieżący katalog. Plik
pwd
Polecenie (drukuj katalog roboczy) pokaże twój bieżący katalog.
Nasz użytkownik ftp tworzy katalog o nazwie music, przechodzi do tego nowego katalogu, potwierdza, gdzie się znajduje, używając rozszerzenia
pwd
polecenie przesyła plik do tego katalogu.
muzyka mkdir
robak cd c
pwd
put songs.tar.gz
Aby szybko przenieść się do katalogu nadrzędnego bieżącego katalogu, użyj rozszerzenia
cdup
Komenda.
cdup
Dostęp do komputera lokalnego
Aby zmienić katalog na komputerze lokalnym, możesz użyć rozszerzenia
LCD
polecenie w
ftp>
skłonić. Łatwo jest jednak stracić orientację, gdzie się znajdujesz w lokalnym systemie plików. Bardziej wygodną metodą uzyskiwania dostępu do lokalnego systemu plików jest użycie rozszerzenia
!
Komenda.
Plik
!
polecenie otwiera okno powłoki na komputerze lokalnym. W tej powłoce możesz zrobić wszystko, co możesz w standardowym oknie terminala. Kiedy piszesz
wyjście
wrócisz do
ftp>
skłonić.
Nasz użytkownik korzystał z
!
polecenie i wszedł do okna powłoki na komputerze lokalnym. Wydali
ls
polecenie, aby zobaczyć, jakie pliki znajdują się w tym katalogu, a następnie wpisane
wyjście
aby wrócić do
ftp>
skłonić.
!
ls
wyjście
Zmiana nazwy plików
Aby zmienić nazwy plików na serwerze FTP, użyj rozszerzenia
Przemianować
Komenda. Tutaj nasz użytkownik FTP zmienia nazwę pliku z
Przemianować
a następnie używa
ls
polecenie, aby wyświetlić pliki w katalogu.
zmień nazwę songs.tar.gz rock_songs.tar.gz
ls
Usuwanie plików
Aby usunąć pliki na serwerze FTP, użyj rozszerzenia
kasować
Komenda. Aby usunąć kilka plików jednocześnie, użyj rozszerzenia
patrzeć na
Komenda. Zostaniesz poproszony o podanie potwierdzenia „y” lub „n” w celu usunięcia każdego pliku.
Tutaj nasz użytkownik FTP wyświetlił pliki, aby zobaczyć ich nazwy, a następnie wybrał jeden do usunięcia. Następnie decydują się usunąć je wszystkie.
ls
γκ.ο.
mdelete *.o
Korzystanie z polecenia sftp
Czytelnicy zaznajomieni z systemem adresowania IP zauważyli, że adres 192.168 serwera FTP użyty w powyższych przykładach jest wewnętrznym adresem IP, zwanym także prywatnym adresem IP. Jak ostrzegaliśmy na początku tego artykułu, rozszerzenie
ftp
Polecenie powinno być używane tylko w sieciach wewnętrznych.
Jeśli chcesz połączyć się ze zdalnym lub publicznym serwerem FTP, użyj rozszerzenia
sftp
Komenda. Nasz użytkownik będzie łączył się z kontem SFTP o nazwie
próbny
na publicznie dostępnym serwerze FTP znajdującym się pod adresem
test.trebex.net
.
Kiedy się łączą, są informowani, że połączenie zostało nawiązane. Są również informowani, że nie można zweryfikować autentyczności hosta. Jest to normalne w przypadku pierwszego połączenia z nowym hostem. Naciskają „y”, aby zaakceptować połączenie.
Ponieważ nazwa konta użytkownika (
próbny
) zostało przekazane w wierszu poleceń, nie są wyświetlane monity o nazwę konta użytkownika. Są proszeni tylko o podanie hasła. To jest wprowadzane, weryfikowane i akceptowane, i są przedstawiane z
sftp>
skłonić.
sftp [email protected]
Polecenia FTP, które opisaliśmy powyżej, będą działać tak samo w sesji SFTP, z następującymi wyjątkami.
-
Aby usunąć plik użyj
rm(FTP używakasować) -
Aby usunąć wiele plików, użyj
rm(FTP używapatrzeć na) -
Aby przejść do katalogu nadrzędnego, użyj
Płyta CD ..(FTP używacdup)
Nasz użytkownik użył kilku poleceń w swojej sesji SFTP. Mają pożytek
ls
aby wyświetlić listę plików i
Płyta CD
aby przejść do katalogu publikacji. Użyli
pwd
wydrukować katalog roboczy.
Istnieją w szczególności inne opcje przesyłania plików w świecie Linuksa
scp
(
bezpieczna kopia
), ale tutaj skupiliśmy się na protokołach FTP i SFTP. Używane w odpowiednich scenariuszach te dwa polecenia będą dobrze służyć Tobie i Twoim potrzebom w zakresie przechowywania i pobierania plików.