温馨提示×

ubuntu如何使用sftp传输文件

小樊
49
2025-10-06 14:10:43
栏目: 智能运维

在Ubuntu系统中,使用SFTP(SSH File Transfer Protocol)传输文件是一种安全的方式。以下是使用SFTP传输文件的步骤:

1. 安装SFTP服务器

首先,确保你的Ubuntu系统上已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install openssh-server

2. 启动SFTP服务器

安装完成后,OpenSSH服务器会自动启动。你可以通过以下命令检查其状态:

sudo systemctl status ssh

如果服务未运行,可以使用以下命令启动它:

sudo systemctl start ssh

3. 使用SFTP客户端连接

你可以使用命令行SFTP客户端连接到远程服务器。打开终端并输入以下命令:

sftp username@hostname

其中:

  • username 是你在远程服务器上的用户名。
  • hostname 是远程服务器的IP地址或域名。

例如:

sftp user@example.com

系统会提示你输入密码。输入正确的密码后,你将进入SFTP命令行界面。

4. 在SFTP会话中传输文件

在SFTP会话中,你可以使用以下命令来传输文件:

上传文件到远程服务器

put localfile remotefile

例如,将本地文件 example.txt 上传到远程服务器的 /home/user/documents/ 目录下,并命名为 uploaded_example.txt

put example.txt /home/user/documents/uploaded_example.txt

从远程服务器下载文件

get remotefile localfile

例如,将远程服务器上的 /home/user/documents/example.txt 下载到本地当前目录,并命名为 downloaded_example.txt

get /home/user/documents/example.txt downloaded_example.txt

列出远程目录内容

ls

你可以使用 ls -l 来查看详细信息。

切换远程目录

cd directory

例如,切换到远程服务器上的 /home/user/documents 目录:

cd /home/user/documents

返回本地目录

lcd directory

例如,返回本地当前目录:

lcd ~

5. 退出SFTP会话

完成文件传输后,可以使用以下命令退出SFTP会话:

exit

或者按下 Ctrl + D

6. 配置SFTP访问权限(可选)

如果你希望限制某些用户只能使用SFTP而不能使用SSH shell,可以在 /etc/ssh/sshd_config 文件中进行配置。例如:

Match User sftpuser
    ChrootDirectory /home/sftpuser
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

然后重启SSH服务:

sudo systemctl restart ssh

这样,用户 sftpuser 将只能使用SFTP进行文件传输,而不能登录到shell。

通过以上步骤,你可以在Ubuntu系统中使用SFTP安全地传输文件。

0