升级CentOS的OpenSSH 搭建SFTP Server
2023-06-13 09:16:10 时间
SFTP是 Secure File Transfer Protocol 的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。
OpenSSH 4.8p1以上的版本才支持SFTP所需的chroot等指令,我的CentOS 5.X服务器的OpenSSH版本过低,需要先对OpenSSH升级。
提示:在升级OpenSSH前,为防止意外出现,我临时开启了telnet,通过telnet连接到服务器后再进行操作(升级完记得关闭telnet)。
service sshd stop #关闭sshd
mv /etc/ssh/sshd_config /etc/ssh/sshd_config_bak #将原有的设置文件改名
wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-4.9p1.tar.gz
tar zxvf openssh-4.9p1.tar.gz
cd openssh-4.9p1
./configure --prefix=/usr --sysconfdir=/etc/ssh
make
make install
如果上面的过程很顺利的话,下面这行命令应该可以正常启动sshd
service sshd start
接下来配置sshd_config,设置SFTP的用户和目录
#Subsystem sftp /usr/libexec/sftp-server
Subsystem sftp internal-sftp
Match User xxxxxx
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
ChrootDirectory /var/htdocs
上面设置中“xxxxxx”替换为你系统中专门用于SFTP的用户名即可,这里我用的是User,也可以用Group来指定一个用户组。
设置好后重启sshd即可。
相关文章
- 查看linux系统版本centos,CentOS下查看系统版本的4种方法
- centos设置多个ip地址
- 在Centos中安装Python3_Python自学第一节
- centos国内源总结
- ORA-26859: Server “string” is not an XStream outbound server ORACLE 报错 故障修复 远程处理
- 数据库安装:CentOS 8 系统安装MariaDB的详细教程
- CentOS 7下安装PostgreSQL 9.6的教程分享
- 安装CentOS 6 系统安装指南(linuxel6)
- 查看CentOS系统下mysql版本:从运维的角度(centos查看mysql版本)
- sql server比较Oracle 与 SQL Server的优缺点(oracleltgt)
- 如何在CentOS 8上安装AirSonic Media Server
- 不满 CentOS 转向,联合创始人创建 Rocky Linux 新项目
- CentOS服务器最最基本安全设置
- CentOS系统下轻松安装MongoDB指南(centos安装mongodb)
- CentOS上MySQL环境搭建指南(mysql centos)
- 如何通过CentOS快速启动MySQL(centos启动mysql)
- MySQL 中 Server 的重要性(mysql中server)
- CentOS进驻MySQL轻松让您拥有数据库管理权(centos进mysql)
- CentOS下搭建MySQL环境小贴士(centos下mysql)
- 比较详细的基于CentOS的WWW服务器架设指南