在 Ubuntu 上开启 SFTP 服务,通常是通过 OpenSSH Server 来提供的(SFTP 基于 SSH)。下面是常见、标准的开启方式:
Ubuntu 默认可能没装 SSH 服务。
sudo apt update
sudo apt install openssh-server
安装完成后,SSH 服务一般会自动启动。
sudo systemctl start ssh
sudo systemctl enable ssh
查看状态:
sudo systemctl status ssh
看到 active (running) 就说明 SSH / SFTP 已可用。
只要 SSH 正常,SFTP 默认就能用。
测试 SFTP 连接(本地或远程):
sftp 用户名@服务器IP
例如:
sftp user@192.168.1.100
如果启用了 UFW:
sudo ufw allow ssh
# 或
sudo ufw allow 22/tcp
如果你只想给用户 SFTP 权限,不允许登录系统:
sudo adduser sftpuser
sudo nano /etc/ssh/sshd_config
在文件末尾添加:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftpuser /home/sftpuser/upload
sudo systemctl restart ssh
sshd_config 里看 Port如果你是想:
可以告诉我具体场景,我给你对应方案。