linux网络服务学习(3):tftp与sftp

1.TFTP

TFTP是基于UDP协议 实现的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务,不具备通常的FTP的许多功能。端口号为69

1.1 centos7安装TFTP

复制代码
yum -y install tftp tftp-server
#安装tftp客户端与服务器端

同时,tftp功能也需要安装并开启xinted功能

复制代码
yum install xinted -y
systemctl start xinted
systemctl enable xinted

1.2修改配置文件,开启TFTP服务

linux下的tftp服务是由xinetd所设定的,默认情况下tftp处于关闭状态,所以要修改tftp的配置文件来开启tftp服务。

tftp的配置文件是**/etc/xinetd.d/tftp**

(1)建立tftp的工作目录

复制代码
mkdir /var/tftp
#工作目录的位置没有要求,找一个空间足够的目录就可以

(2)修改配置文件**/etc/xinetd.d/tftp**

下图为配置文件原内容,

需要进行2处改动:

*disable= no

#添加这一项

*server_args= -s /var/tftp -c

#修改这一项,-s后接自己创建的tftp服务器工作目录。-c指能创建文件

(3)重新启动xinted服务,使配置文件的改动生效

复制代码
systemctl restart xinetd 

1.3登录方式与命令

(1)客户端登录服务器端

复制代码
tftp 服务器端ip

(2)命令

可以在tftp模式下输入?查看命令

常用的有:

上传:put

下载:get

退出:quit

ls、cd、rm等都不可用

2.SSH中的一部分:SFTP

2.1与FTP的区别

SSH软件包中已经包含了一个叫作SFTP的安全文件信息传输子系统,SFTP使用sshd守护进程来完成相应的连接和答复操作。所以它同样使用22端口,与FTP有很大区别

|------|------------|-------------------|
| | FTP | SFTP |
| 应用协议 | FTP协议 | ssh协议 |
| 安全性 | 明文传输,安全性很差 | 基于SSH来加密传输文件,安全性高 |
| 默认端口 | 21 | 22 |
| 效率 | 高 | 比FTP低 |

2.2登录流程

2.2.1创建专用于sftp连接的用户

(1)先创建一个sftp用户的工作目录

复制代码
mkdir /var/sftp

要保证这个文件夹的权限是755,当然如果是用root用户创建的,那么直接就是755

(2)创建sftp用户

复制代码
groupadd sftpgroup 
#创建sftp组

useradd -g sftpgroup -d /var/sftp/test -s /sbin/nologin sftpuser
#-d指定家目录,这个家目录要在工作目录之下

passwd sftpuser 

(3)修改sftp用户家目录的权限

复制代码
chmod 755 /var/sftp/tset

2.2.2修改配置文件/etc/ssh/sshd_config

复制代码
将配置文件中原有的下面这行注释掉
#Subsystem sftp /usr/libexec/openssh/sftp-server

#在文件末尾添加如下几行
Subsystem sftp internal-sftp

Match Group sftpgroup
#对sftpgroup组进行设置

X11Forwarding no

AllowTcpForwarding no

ChrootDirectory /var/sftp/
#限定向上只可访问至/var/sftp

ForceCommand internal-sftp
#限定只用于SFTP服务

配置文件修改完成后,重启ssh服务

复制代码
systemctl restart sshd

2.2.3客户端登录

sftp的登录格式与ssh相同:sftp 账户名@IP地址

除了上述过程中创建的sftp用户外,也可以使用ssh服务器本地用户包括root用户进行登录

2.3 SFTP模式的命令

sftp的命令与ftp基本相同,可以通过?查询。下面是一些常用命令:

cd、ls、pwd、mkdir

put:上传(可以用put+Tab键查看客户端当前目录下的文件)

mput:同时上传多个

get:下载

mget:同时下载多个

delete:删除文件

mdelete:同时删除多个文件

rmdir:删除目录

rename:重新命名

quit:退出

相关推荐
꧁坚持很酷꧂15 分钟前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
小诸葛的博客2 小时前
详解Linux中的定时任务管理工具crond
linux·运维·chrome
一默19912 小时前
CentOS 7.9升级OpenSSH到9.9p2
linux·运维·centos
keep intensify2 小时前
Linux常用指令
linux·服务器·php
BranH3 小时前
Linux系统中命令设定临时IP
linux·运维·服务器
极小狐3 小时前
极狐GitLab 项目功能和权限解读
运维·git·安全·gitlab·极狐gitlab
宁酱醇3 小时前
GitLab_密钥生成(SSH-key)
运维·ssh·gitlab
秋风起,再归来~3 小时前
【Linux庖丁解牛】—进程优先级!
linux·运维·服务器
Lalolander4 小时前
设备制造行业如何避免项目管理混乱?
运维·制造·工程项目管理·四算一控·epc·环保设备工程·设备制造
LucianaiB4 小时前
【金仓数据库征文】_AI 赋能数据库运维:金仓KES的智能化未来
运维·数据库·人工智能·金仓数据库 2025 征文·数据库平替用金仓