首页 > 系统教程 > LINUX > 正文

linux安全文件传输是什么-sftp 命令使用与实例

P粉390130307
发布: 2025-07-19 08:24:37
转载
563人浏览过

linux安全文件传输是什么-sftp 命令使用与实例

Linux sftp 命令


什么是 sftp?

SFTP(SSH File Transfer Protocol)是一种安全的文件传输协议,它通过 SSH(Secure Shell)加密通道传输文件。与传统的 FTP 不同,SFTP 提供了更高的安全性,所有传输的数据都会被加密。

SFTP 与 FTP 的区别

特性 SFTP FTP
安全性 加密传输 明文传输
端口 22(SSH 端口) 21(控制端口)+20(数据端口)
协议 基于 SSH 独立协议
防火墙友好性 只需开放一个端口 需要开放多个端口

sftp 命令基本语法

sftp [选项] [用户名@]主机名[:路径]
登录后复制

常用选项参数

选项 说明
-P 端口号 指定连接端口(默认22)
-b 批处理文件 执行批处理文件中的命令
-r 递归复制整个目录
-v 显示详细的调试信息
-i 私钥文件 使用指定的私钥文件认证

连接 SFTP 服务器

基本连接方式

实例

sftp username@hostname

示例:

实例

sftp user@example.com

指定端口连接

如果服务器使用非标准端口(不是22):

实例

sftp -P 2222 user@example.com

使用密钥认证

实例

sftp -i ~/.ssh/id_rsa user@example.com

SFTP 常用操作命令

1. 本地文件操作

命令 说明
lls 列出本地目录内容
lcd 更改本地工作目录
lmkdir 在本地创建目录
lrm 删除本地文件

2. 远程文件操作

命令 说明
ls 列出远程目录内容
cd 更改远程工作目录
mkdir 在远程创建目录
rm 删除远程文件
rename 重命名远程文件

3. 文件传输

命令 说明
put 本地文件 [远程路径] 上传文件到远程服务器
get 远程文件 [本地路径] 从远程服务器下载文件
mput 本地文件* 上传多个文件
mget 远程文件* 下载多个文件

实用示例

示例1:上传文件到服务器

实例

sftp user@example.com
sftp> cd /var/www/html
sftp> put index.html
sftp> exit

示例2:下载整个目录(递归)

实例

sftp -r user@example.com:/backups /local/backups

示例3:使用批处理文件

创建 sftp_commands.txt

超能文献
超能文献

超能文献是一款革命性的AI驱动医学文献搜索引擎。

超能文献14
查看详情 超能文献
put file1.txt
put file2.txt
get report.pdf
exit
登录后复制

执行批处理:

实例

sftp -b sftp_commands.txt user@example.com

高级技巧

1. 使用通配符传输多个文件

实例

sftp> mput *.jpg      # 上传所有jpg文件
sftp> mget log_*.txt  # 下载所有log_开头的txt文件

2. 更改文件权限

实例

sftp> chmod 644 index.html

3. 查看文件信息

实例

sftp> ls -l

4. 使用符号链接

实例

sftp> symlink /path/to/original /path/to/link

常见问题解决

1. 连接被拒绝

  • 检查服务器是否运行 SSH 服务
  • 确认端口是否正确
  • 检查防火墙设置

2. 认证失败

  • 确认用户名和密码正确
  • 检查密钥文件权限(应为600)
  • 确保服务器上有你的公钥

3. 文件传输中断

  • 检查网络连接
  • 尝试使用 regetreput 命令恢复传输

4. 权限不足

  • 检查远程目录的写权限
  • 可能需要使用 sudo(但 sftp 通常不支持直接 sudo)

安全最佳实践

  1. 使用密钥认证而非密码认证
  2. 限制用户权限,使用 chroot 环境
  3. 定期更新 SSH 服务器软件
  4. 禁用 root 登录,使用普通用户+sudo
  5. 监控日志文件(/var/log/auth.log)

总结

SFTP 是 Linux 系统中安全传输文件的重要工具,通过本指南,你应该已经掌握了:

  • SFTP 的基本概念和连接方式
  • 常用的文件操作和传输命令
  • 实用的批处理和高级技巧
  • 常见问题的解决方法
  • 安全使用的最佳实践

现在你可以安全高效地在本地和远程服务器之间传输文件了!

以上就是linux安全文件传输是什么-sftp 命令使用与实例的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:https://www.runoob.com/linux/linux-comm-sftp.html网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号