温馨提示×

ubuntu sftp怎样开启服务

小樊
37
2026-09-14 10:39:20
栏目: 智能运维

在 Ubuntu 上开启 SFTP 服务,通常是通过 OpenSSH Server 来提供的(SFTP 基于 SSH)。下面是常见、标准的开启方式:


一、确认并安装 OpenSSH Server

Ubuntu 默认可能没装 SSH 服务。

sudo apt update
sudo apt install openssh-server

安装完成后,SSH 服务一般会自动启动。


二、启动并设置开机自启 SSH 服务

sudo systemctl start ssh
sudo systemctl enable ssh

查看状态:

sudo systemctl status ssh

看到 active (running) 就说明 SSH / SFTP 已可用。


三、SFTP 默认已可用(无需额外配置)

只要 SSH 正常,SFTP 默认就能用。

测试 SFTP 连接(本地或远程):

sftp 用户名@服务器IP

例如:

sftp user@192.168.1.100

四、防火墙放行(如有)

如果启用了 UFW:

sudo ufw allow ssh
# 或
sudo ufw allow 22/tcp

五、仅允许 SFTP(禁止 SSH 登录,可选)

如果你只想给用户 SFTP 权限,不允许登录系统:

1. 创建用户

sudo adduser sftpuser

2. 修改 SSH 配置

sudo nano /etc/ssh/sshd_config

在文件末尾添加:

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

3. 修改目录权限

sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftpuser /home/sftpuser/upload

4. 重启 SSH

sudo systemctl restart ssh

六、常见问题

  • 连不上:检查 IP、防火墙、SSH 是否运行
  • 权限拒绝:确认用户名和密码正确
  • 端口不是 22:在 sshd_config 里看 Port

如果你是想:

  • ✅ 用 vsftpd(FTP,不是 SFTP)
  • ✅ 配 密钥登录
  • ✅ 配 Docker / 云服务器

可以告诉我具体场景,我给你对应方案。

0