今天要介绍的是最常用的传输工具 Ftp和Sftp。
FTP(File Transfer Protocol)和SFTP(Secure File Transfer Protocol)是两种用于在网络上进行文件传输的协议。FTP是较早的协议,而SFTP是基于SSH(Secure Shell)的更安全的协议。下面将详细介绍FTP和SFTP的安装、配置和使用方法,以及常用命令和参数。
FTP工具:
FlashFXP下载
FileZilla下载
CrossFTP下载
8UFTP下载
FTP
安装
在大多数Linux发行版中,FTP服务器可以通过安装vsftpd(Very Secure FTP Daemon)来实现。
-
安装vsftpd:
sudo apt-get update sudo apt-get install vsftpd
-
配置vsftpd:
编辑配置文件
/etc/vsftpd.conf
:sudo nano /etc/vsftpd.conf
一些常见的配置项:
listen=YES
:使vsftpd监听IPv4地址。anonymous_enable=NO
:禁用匿名登录。local_enable=YES
:允许本地用户登录。write_enable=YES
:允许上传文件。chroot_local_user=YES
:将用户限制在其主目录中。
-
启动和启用vsftpd服务:
sudo systemctl start vsftpd sudo systemctl enable vsftpd
使用FTP客户端
-
命令行客户端:
使用
ftp
命令连接到FTP服务器:ftp ftp.example.com
输入用户名和密码后,可以使用以下命令:
ls
:列出远程目录内容。cd
:更改远程目录。get filename
:下载文件。put filename
:上传文件。bye
或quit
:退出FTP会话。
-
图形界面客户端:
常见的图形界面FTP客户端有FileZilla、WinSCP等。
SFTP
安装
SFTP通常通过SSH服务器(如OpenSSH)提供支持,因此不需要单独安装SFTP服务器。
-
安装OpenSSH服务器:
sudo apt-get update sudo apt-get install openssh-server
-
配置OpenSSH:
编辑配置文件
/etc/ssh/sshd_config
:sudo nano /etc/ssh/sshd_config
一些常见的配置项:
Port 22
:指定SSH端口。PermitRootLogin no
:禁止root用户登录。PasswordAuthentication yes
:允许密码认证。AllowUsers username
:允许特定用户登录。
-
启动和启用SSH服务:
sudo systemctl start ssh sudo systemctl enable ssh
使用SFTP客户端
-
命令行客户端:
使用
sftp
命令连接到SFTP服务器:sftp user@server.example.com
输入密码后,可以使用以下命令:
ls
:列出远程目录内容。cd
:更改远程目录。get filename
:下载文件。put filename
:上传文件。mkdir dirname
:创建远程目录。rm filename
:删除远程文件。bye
或exit
:退出SFTP会话。
-
图形界面客户端:
常见的图形界面SFTP客户端有FileZilla、WinSCP等。
常用命令和参数
FTP命令
open hostname
:连接到FTP服务器。user username password
:登录FTP服务器。ls
:列出远程目录内容。cd directory
:更改远程目录。lcd directory
:更改本地目录。get filename
:下载文件。put filename
:上传文件。mget filenames
:下载多个文件。mput filenames
:上传多个文件。binary
:切换到二进制传输模式。ascii
:切换到ASCII传输模式。pwd
:显示当前远程目录。bye
或quit
:退出FTP会话。
SFTP命令
sftp user@hostname
:连接到SFTP服务器。ls
:列出远程目录内容。cd directory
:更改远程目录。lcd directory
:更改本地目录。get filename
:下载文件。put filename
:上传文件。mget filenames
:下载多个文件。mput filenames
:上传多个文件。mkdir directory
:创建远程目录。rmdir directory
:删除远程目录。rm filename
:删除远程文件。rename oldname newname
:重命名远程文件。pwd
:显示当前远程目录。lpwd
:显示当前本地目录。bye
或exit
:退出SFTP会话。
示例
FTP示例
-
连接到FTP服务器:
ftp ftp.example.com
-
登录:
Name: user Password: password
-
列出远程目录内容:
ls
-
下载文件:
get filename.txt
-
退出FTP会话:
bye
SFTP示例
-
连接到SFTP服务器:
sftp user@server.example.com
-
登录:
Password: password
-
列出远程目录内容:
ls
-
下载文件:
get filename.txt
-
上传文件:
put localfile.txt
-
退出SFTP会话:
exit
总结
FTP和SFTP都是用于文件传输的协议,但SFTP更加安全,因为它基于SSH协议。通过安装和配置相应的服务,你可以轻松地使用这些协议进行文件传输。希望这些介绍和示例能帮助你更好地理解和使用FTP和SFTP。如果有更多问题或需要进一步的示例,请随时提问!