Tin tức và phân tích của tất cả các thiết bị di động

Cách sử dụng lệnh FTP trong Linux

Giao thức truyền tệp cũ hơn hầu hết các độc giả của chúng tôi, nhưng nó vẫn hoạt động. FTP không có tính bảo mật của một giao thức hiện đại, nhưng bạn vẫn có thể cần sử dụng nó. Đây là cách.

Cảnh báo: không sử dụng FTP qua Internet

Hãy làm rõ điều này ngay từ đầu: Giao thức truyền tệp (FTP) có từ đầu những năm 1970 và được viết mà không tính đến vấn đề bảo mật. Nó không sử dụng mã hóa cho bất cứ điều gì. Chi tiết đăng nhập như tên người dùng và mật khẩu của bạn, cũng như dữ liệu bạn tải xuống hoặc tải lên, được gửi dưới dạng văn bản thuần túy. Bất cứ ai trên đường đi có thể nhìn thấy bí mật của bạn. Tuy nhiên, FTP vẫn có công dụng của nó.

Nếu bạn đang truyền các tệp trên mạng của mình, thì bạn sẽ được an toàn – miễn là không có ai trên mạng chặn các gói hoặc nghe lén bất kỳ tài liệu nhạy cảm nào trong khi chúng đang được truyền. Trừ khi các tệp của bạn là bí mật hoặc nhạy cảm theo bất kỳ cách nào, việc di chuyển chúng trong mạng nội bộ bằng FTP là đủ. Linux có một chương trình dòng lệnh ftp tiêu chuẩn để xử lý tình huống này.

Nhưng chắc chắn không sử dụng lệnh ftp để truy cập các tài nguyên bên ngoài trên internet. Để thực hiện việc này, hãy sử dụng chương trình dòng lệnh sftp, sử dụng giao thức truyền tệp SSH an toàn. Trong hướng dẫn này, chúng tôi sẽ giới thiệu cả hai chương trình này.

Để giải thích tại sao bạn không bao giờ muốn sử dụng FTP qua Internet, hãy xem ảnh chụp màn hình bên dưới. Hiển thị mật khẩu FTP ở dạng văn bản thuần túy. Bất kỳ ai trong mạng của bạn hoặc giữa bạn và máy chủ FTP trên Internet đều có thể dễ dàng xác minh rằng mật khẩu là “MySecretPassword”.

Nếu không mã hóa, một tác nhân độc hại cũng có thể sửa đổi các tệp bạn tải xuống hoặc tải lên trong quá trình truyền.

lệnh ftp

Giả sử bạn có tài khoản trang FTP hợp lệ, bạn có thể kết nối với nó bằng lệnh sau. Trong bài viết này, hãy thay thế địa chỉ IP trong các lệnh bằng địa chỉ IP của máy chủ FTP mà bạn đang kết nối.

ftp  192.168.4.25

Cảnh báo: Chỉ nên sử dụng lệnh ftp để kết nối với các máy chủ trên mạng cục bộ đáng tin cậy. Sử dụng lệnh sftp được mô tả bên dưới để truyền tệp qua Internet.

lệnh kết nối ftp trong cửa sổ đầu cuối

Máy chủ FTP phản hồi bằng một thông báo chào mừng. Từ ngữ của lời chào khác nhau giữa các máy chủ. Sau đó, nó sẽ hỏi tên người dùng của tài khoản bạn đang đăng nhập.

Lưu ý rằng địa chỉ IP của trang web bạn đang kết nối được hiển thị, theo sau là tên người dùng Linux của bạn. Nếu tên tài khoản của bạn trên máy chủ FTP giống với tên người dùng Linux của bạn, chỉ cần nhấn Enter. Thao tác này sẽ sử dụng tên người dùng Linux của bạn làm tên tài khoản trên máy chủ FTP. Nếu tên người dùng Linux và tên tài khoản FTP của bạn khác nhau, hãy nhập tên người dùng tài khoản FTP của bạn, rồi nhấn Enter.

Đăng nhập vào máy chủ FTP

Bạn sẽ được yêu cầu nhập mật khẩu trang FTP. Nhập mật khẩu của bạn và nhấn Enter. Mật khẩu của bạn không được hiển thị trên màn hình. Nếu tổ hợp mật khẩu và tài khoản người dùng FTP được xác minh bởi máy chủ FTP, bạn sẽ đăng nhập vào máy chủ FTP.

Dấu nhắc ftp> sẽ được hiển thị.

đăng nhập vào tài khoản ftp trong cửa sổ terminal

Duyệt và khôi phục tập tin

Trước tiên, có thể bạn sẽ muốn lấy danh sách các tệp trên máy chủ FTP. Đó là những gì lệnh ls làm. Người dùng của chúng tôi nhìn thấy tệp gc.c trên máy chủ FTP và muốn tải tệp đó xuống máy tính của mình. Máy tính của anh ấy là “máy tính cục bộ” theo cách nói của FTP.

Lệnh tải xuống (hoặc “tải xuống”) một tệp là get. Vì vậy, các vấn đề người dùng của chúng tôi nhận được gc.c. Họ nhập get, dấu cách, sau đó nhập tên của tệp họ muốn tải xuống.

Máy chủ FTP phản hồi bằng cách chuyển tệp sang máy tính cục bộ và xác nhận rằng quá trình chuyển đã diễn ra. Kích thước tệp và thời gian tải lên cũng được hiển thị.

ls
get gc.c

chuyển tập tin ftp trong cửa sổ đầu cuối

Để tải xuống nhiều tệp cùng một lúc, hãy sử dụng mget (nhiều tệp). Lệnh mget sẽ yêu cầu bạn xác nhận có muốn tải xuống lần lượt từng tệp hay không. Trả lời bằng cách nhấn ‘y’ nếu có và ‘n’ nếu không.

Điều này sẽ cồng kềnh với một số lượng lớn các tập tin. Vì lý do này, các tập hợp các tệp liên quan thường được lưu trữ trên các trang ftp dưới dạng các tệp tar.gz hoặc tar.bz2 riêng lẻ.

mget *.c

mget trong một cửa sổ đầu cuối

Tải tệp lên máy chủ FTP

Tùy thuộc vào các quyền đã được cấp cho tài khoản FTP của bạn, bạn có thể tải (hoặc “đặt”) các tệp lên máy chủ. Để tải lên một tập tin, hãy sử dụng lệnh put. Trong ví dụ của chúng tôi, người dùng tải tệp có tên Songs.tar.gz lên máy chủ FTP.

put Songs.tar.gz

đặt lệnh trong cửa sổ đầu cuối

Như bạn có thể mong đợi, có một lệnh đặt nhiều tệp cùng một lúc trên máy chủ FTP. Điều này được gọi là mput (nhiều vị trí). Giống như lệnh mget, mput sẽ yêu cầu xác nhận “y” hoặc “n” để tải từng tệp một.

Lập luận tương tự về việc đặt các tập hợp tệp trong tarball áp dụng cho việc tải tệp lên cũng như bạn thực hiện để tải tệp xuống. Người dùng của chúng tôi tải lên nhiều tệp “.odt” bằng lệnh sau:

mput *.odt

lệnh mput trong cửa sổ đầu cuối

Tạo và thay đổi thư mục

Nếu tài khoản người dùng của bạn trên máy chủ ftp cho phép, bạn có thể tạo các thư mục. Lệnh cho việc này là mkdir. Để rõ ràng, bất kỳ thư mục nào được tạo bằng lệnh mkdir sẽ được tạo trên máy chủ ftp chứ không phải trên máy cục bộ.

Để thay đổi thư mục trên máy chủ ftp, hãy sử dụng lệnh cd. Khi sử dụng lệnh cd, dấu nhắc ftp> sẽ không thay đổi để phản ánh thư mục hiện tại mới. Lệnh pwd (in thư mục làm việc) sẽ hiển thị thư mục hiện tại của bạn.

Người dùng ftp của chúng tôi tạo một thư mục có tên là nhạc, điều hướng đến thư mục mới này, xác nhận vị trí của nó bằng lệnh pwd, sau đó tải tệp lên thư mục đó.

mkdir music
cd music
pwd
put songs.tar.gz

lệnh cd pwd và mkdir trong cửa sổ đầu cuối

Để nhanh chóng di chuyển đến thư mục mẹ của thư mục hiện tại, hãy sử dụng lệnh cdup.

cdup

lệnh cdup trong cửa sổ đầu cuối

Truy cập máy tính cục bộ

Để thay đổi thư mục trên máy cục bộ của bạn, bạn có thể sử dụng lệnh lcd trong dấu nhắc ftp>. Tuy nhiên, thật dễ dàng để mất dấu bạn đang ở đâu trên hệ thống tệp cục bộ của mình. Một phương pháp thuận tiện hơn để truy cập hệ thống tệp cục bộ là sử dụng! Yêu cầu.

Các! lệnh sẽ mở một cửa sổ trình bao trên máy tính cục bộ. Trong trình bao này, bạn có thể làm mọi thứ có thể trong một cửa sổ đầu cuối tiêu chuẩn. Khi bạn gõ exit, bạn sẽ được đưa trở lại dấu nhắc ftp>.

Người dùng của chúng tôi đã tận dụng lợi thế của! lệnh và nhập một cửa sổ trình bao trên máy cục bộ. Họ đã đưa ra lệnh ls để xem những tệp nào trong thư mục đó, sau đó gõ lệnh thoát để quay lại dấu nhắc ftp>.

!
ls
exit

!  lệnh shell trong cửa sổ đầu cuối

Đổi tên tập tin

Để đổi tên tệp trên máy chủ FTP, hãy sử dụng lệnh đổi tên. Ở đây, người dùng FTP của chúng tôi đổi tên tệp bằng rename và sau đó sử dụng lệnh ls để liệt kê các tệp trong thư mục.

rename songs.tar.gz rock_songs.tar.gz
ls

Đổi tên lệnh trong cửa sổ terminal

xóa tập tin

Để xóa các tệp trên máy chủ FTP, hãy sử dụng lệnh xóa. Để xóa nhiều tệp cùng một lúc, hãy sử dụng lệnh mdelete. Bạn sẽ được yêu cầu xác nhận “y” hoặc “n” để xóa từng tệp.

Tại đây, người dùng FTP của chúng tôi đã xem các tệp để xem tên của chúng và sau đó chọn một tệp để xóa. Sau đó, họ quyết định xóa tất cả.

ls
delete gc.o
mdelete *.o

ls xóa và mdelete trong cửa sổ đầu cuối

Sử dụng lệnh sftp

Độc giả quen thuộc với hệ thống địa chỉ IP sẽ nhận thấy rằng địa chỉ máy chủ FTP 192.168 được sử dụng trong các ví dụ trên là địa chỉ IP nội bộ, còn được gọi là địa chỉ IP riêng. Như chúng tôi đã cảnh báo ở đầu bài viết này, lệnh ftp chỉ nên được sử dụng trên các mạng nội bộ.

Nếu bạn muốn kết nối với máy chủ FTP từ xa hoặc công cộng, hãy sử dụng lệnh sftp. Người dùng của chúng tôi sẽ kết nối với tài khoản SFTP có tên demo trên máy chủ FTP có sẵn công khai tại test.trebex.net.

Khi họ kết nối, họ được thông báo rằng kết nối đã được thiết lập. Họ cũng được thông báo rằng không thể xác minh tính xác thực của máy chủ lưu trữ. Điều này là bình thường khi kết nối với một máy chủ mới lần đầu tiên. Họ nhấn “y” để chấp nhận kết nối.

Vì tên tài khoản người dùng (demo) đã được chuyển vào dòng lệnh nên không có lời nhắc nào về tên tài khoản người dùng. Họ chỉ được yêu cầu nhập mật khẩu. Điều này được nhập, xác minh và chấp nhận, sau đó chúng được hiển thị với lời nhắc sftp>.

sftp [email protected]

kết nối với một trang web sftp trong cửa sổ đầu cuối

Các lệnh FTP mà chúng tôi đã mô tả ở trên sẽ hoạt động giống nhau trong phiên SFTP với các ngoại lệ sau.

Để xóa một tập tin, sử dụng rm (FTP sử dụng chức năng xóa)
Để xóa nhiều tệp, hãy sử dụng rm (FTP sử dụng mdelete)
Để vào thư mục mẹ dùng lệnh cd.. (FTP dùng lệnh cdup)

Người dùng của chúng tôi đã sử dụng một số lệnh trong phiên SFTP của anh ấy. Họ đã sử dụng ls để liệt kê các tệp và cd để chuyển đến thư mục pub. Họ đã sử dụng pwd để in thư mục làm việc.

sftp trong một cửa sổ đầu cuối

Có các tùy chọn truyền tệp khác trong thế giới Linux, đáng chú ý nhất là scp (bản sao an toàn), nhưng chúng tôi tập trung vào các giao thức FTP và SFTP ở đây. Được sử dụng trong các tình huống phù hợp, hai lệnh này sẽ phục vụ tốt cho bạn cũng như nhu cầu lưu trữ và truy xuất tệp của bạn.