在Ubuntu上配置和使用SFTP(SSH File Transfer Protocol)主要涉及以下几个步骤:
首先,确保你的Ubuntu系统上已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install openssh-server
编辑SSH配置文件 /etc/ssh/sshd_config
来启用SFTP并可能对其进行一些自定义设置。
sudo nano /etc/ssh/sshd_config
在文件中找到以下行并进行相应的修改:
确保 Subsystem sftp
行没有被注释掉,并且设置为内部sftp:
Subsystem sftp internal-sftp
如果你想限制用户只能使用SFTP而不能通过SSH登录,可以添加或修改以下行:
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
这里假设你有一个名为 sftpusers
的用户组,并且你想将这个组的用户限制在其主目录中。
如果你打算创建一个专门用于SFTP的用户组,可以使用以下命令:
sudo groupadd sftpusers
将用户添加到你创建的SFTP用户组中:
sudo usermod -aG sftpusers username
替换 username
为你想要添加的用户名。
确保你的SFTP用户有一个密码:
sudo passwd username
为了使配置生效,需要重启SSH服务:
sudo systemctl restart sshd
现在你可以使用任何SFTP客户端连接到你的Ubuntu服务器。以下是一些常见的SFTP客户端:
FileZilla:一个跨平台的FTP客户端,支持SFTP。
WinSCP:一个Windows下的SFTP客户端。
命令行:你也可以直接在终端中使用 sftp
命令连接:
sftp username@hostname
替换 username
和 hostname
为你的用户名和服务器地址。
连接成功后,你应该会看到一个类似于以下的提示:
Connected to hostname.
sftp>
你现在可以使用SFTP命令来上传、下载和管理文件。
列出当前目录文件:
ls
切换目录:
cd directory_name
上传文件:
put local_file remote_file
下载文件:
get remote_file local_file
删除文件:
rm remote_file
通过以上步骤,你应该能够在Ubuntu上成功配置和使用SFTP。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:Ubuntu SFTP如何防止攻击