Rocky Linux是一个开源、社区拥有和管理、免费的企业Linux发行版。可作为CentOS停止维护(改为滚动更新的Stream版)后,RHEL的下游Linux操作系统替代方案,官方宣称与RHEL系统1:1复刻,包括BUG级兼容。
sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部份,是一种传输档案至 Blogger 伺服器的安全方式。本身没有守护进程,是包含在ssh中,端口也是22。
sftp采用的是ssh加密隧道,安装性方面较ftp强,但传输效率比FTP要低很多,sftp依赖的是系统自带的ssh服务,不像ftp还需要额外的进行安装。
1、创建用户组
groupadd sftpgroup
创建完成之后使用cat /etc/group命令组的信息
cat /etc/group
2、创建用户
创建用户并且加入到这个用户组,并修改sftptest用户的密码
useradd -g sftpgroup -M -s /sbin/nologin sftptest
passwd sftptest
3、创建用户根目录
创建/opt/Sftp_Dir目录,并将它指定为sftptest组用户的home目录
mkdir -p /opt/Sftp_Dir
4、设置Chroot目录权限
chown root:sftpgroup /opt/Sftp_Dir
chmod 755 /opt/Sftp_Dir
5、创建数据目录
新建一个目录files供sftptest用户上传文件。权限,files上传文件目录为777
mkdir -p /opt/Sftp_Dir/sftptest/files
chmod 777 /opt/Sftp_Dir/sftptest/files
6、修改配置文件
vi /etc/ssh/sshd_config
将Subsystem sftp /usr/libexec/openssh/sftp-server 注释掉
在文件末尾添添加 加以下几行
Subsystem sftp internal-sftp
Match Group sftpgroup #匹配sftp组的用户,如果要匹配多个组,多个组之间用逗号分割
X11Forwarding no #是否允许进行 X11 转发。默认值是"no",设为"yes"表示允许。
AllowTcpForwarding no #不允许转发TCP协议,默认是yes,如果用户可以shell访问则建议为yes
ChrootDirectory /opt/Sftp_Dir/%u #用Chroot将用户的根目录指定到/home/sftp/%u,%u代表用户名
ForceCommand internal-sftp \#强制执行内部sftp,并忽略任何~/.ssh/rc文件中的命令
7、测试sftp
重启sshd服务,然后测试 sftp 用户名@ip地址
systemctl restart sshd.service
sftp本地登录
sftp sftptest@127.0.0.1
测试上传
put abc.txt
测试下载
get abc.txt /opt
退出命令
quit/exit/bye
8、扩展命令
help:检查sftp可使用的命令和用途
pwd:打印当前服务器所在位置
lpwd:打印当前本地位置如/opt
cd /opt:切换服务器上的opt目录
ls:检查当前目录下文件列表
get-r:下载目录
put:上传文件
声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。