在centos 7中
ssh版本为
在此些版本基础上,我配置sftp,因为sftp是ssh下的一个子服务,sftp使用的是ssh的端口,所以我进行了配置、端口分离,依照以下文章链接
https://blog.csdn.net/hahawangzi520/article/details/128204467?app_version=6.3.4&code=app_1562916241&csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22128204467%22%2C%22source%22%3A%22Feeling2037%22%7D&uLinkId=usr1mkqgl919blen&utm_source=app
服务成功分离了,端口ssh为22,sftp为53521,sftp也可以正常连接,但是ssh竟然可以使用sftp的端口53521的端口去进行ssh的连接登录,这就违背了我端口分离的初衷,那怎么禁止ssh可以使用sftp的端口进行连接登录呢?
解决方法:
通过查询资料,配置分离后,在分离出的/etc/ssh/sftpd_config下,也就是sftp端口的配置文件中添加 ForceCommand internal-sftp,注意这个配置不是添加在Match下,而是和Subsystem sftp internal-sftp平级。
这个配置的作用是:指令将限制通过此端口的所有连接只能使用 SFTP,而不能执行 SSH 命令。
请注意,ForceCommand 指令在较新的 OpenSSH 版本中用于限制命令,但是在较旧的版本中可能不支持或行为不同。如果 ForceCommand 不起作用,您可能需要升级到较新的 OpenSSH 版本,或者使用其他方法来限制 SSH 连接。