温馨提示×

centos怎么用sftp传文件

小樊
52
2026-09-09 00:37:40
栏目: 智能运维

在 CentOS 上用 SFTP(SSH File Transfer Protocol) 传文件,常见做法如下:


一、前提条件

  1. CentOS 已安装并运行 SSH 服务
    systemctl status sshd
    
    若未启动:
    systemctl start sshd
    systemctl enable sshd
    
  2. 你知道:
    • 服务器 IP
    • 用户名
    • 密码 或 私钥

二、从本地连到 CentOS(命令行方式)

1️⃣ 登录 SFTP

sftp user@centos_ip

示例:

sftp root@192.168.1.100

输入密码后即可进入 sftp> 提示符。


2️⃣ 常用 SFTP 命令

操作 命令
查看远程目录 ls
查看本地目录 lls
切换远程目录 cd /path
切换本地目录 lcd /path
上传文件 put file.txt
下载文件 get file.txt
上传目录 put -r dir/
下载目录 get -r dir/
退出 exit

✅ 示例:

put test.txt
get /var/log/messages

三、一条命令传文件(非交互)

上传

sftp user@ip:/remote/path <<< 'put localfile'

下载

sftp user@ip:/remote/path/file <<< 'get file'

四、使用密钥登录(推荐)

1️⃣ 生成密钥(本地)

ssh-keygen

2️⃣ 拷贝公钥

ssh-copy-id user@centos_ip

3️⃣ SFTP 免密登录

sftp user@centos_ip

五、Windows 用户怎么传?

方法 1:WinSCP

  • 类型:SFTP
  • 主机:CentOS IP
  • 用户名 / 密码

方法 2:FileZilla

  • 协议选 SFTP
  • 端口默认 22

六、常见问题

❌ 连接被拒绝

  • 检查 sshd 是否运行
  • 防火墙是否放行 22 端口
firewall-cmd --add-service=ssh --permanent
firewall-cmd --reload

❌ 权限不足

  • 确认用户对目录有写权限
chmod 755 /path

如果你告诉我:

  • CentOS 作为服务器还是客户端
  • 命令行还是图形工具

我可以给你更精确的示例。

0