自2014年以来,我从SoYouStart和Centos 7获得了一台服务器。它运行良好,但是现在我不得不再次安装操作系统。 现在我正在configuration所有的服务再次工作。 我需要使用SSH隧道连接到服务器到Mysql(现在是MariaDB)并使用SFTP传输文件。 问题是,我可以成功地连接SSH到服务器(从任何主机),但当我尝试使用Cyberduck或Navicat连接到服务器使用SSH隧道时,我得到一个错误(“服务器意外closuresnetworking连接”或“有在连接到端口22上的服务器时出现问题。“)。 我尝试从iPhone与SSH壳,我可以成功连接与SSH和SFTP,但不是与SSH隧道的数据库。 我不明白问题在哪里。 我已经禁用了iptables,firewalld(我用iptablesreplace了它)和selinux直接连接到允许远程连接的数据库。 服务器有一个静态的IP地址,从提供商,我的作业netwkor在最后几个小时没有改变,所以我不认为这个问题在这里。
谁能帮我? 非常感谢你
安德里亚
编辑@TheCompWiz
sshd_config已经允许Tcp转发。 这些是未注释的行:
PermitRootLogin yes PasswordAuthentication yes ChallengeResponseAuthentication no AllowTcpForwarding yes X11Forwarding yes UsePrivilegeSeparation sandbox PermitTunnel yes Subsystem sftp /usr/libexec/openssh/sftp-server
而奇怪的是,我可以从一个移动应用程序SFTP,但我不能从电脑做.. MySQL的SSH隧道仍然无法正常工作
非常感谢你
ssh隧道由ssh-daemon自己configuration。 如果SSH守护进程不允许隧道,则需要重新configuration。 通常,它只是运行openssh服务器…并且可以编辑/ etc / ssh / sshd_config并添加AllowTcpForwarding yes (删除AllowTcpForwarding no )并重新加载sshdconfiguration。
就sftp而言,这是一个稍微不同的动物。 从本质上讲,当你想要SFTP时,连接开始作为一个ssh会话与一个标志,说你想启动SFTP子系统。 这会像您期望的那样启动ssh会话,但不是启动命令解释器,而是启动sftp服务器,并通过ssh会话将input/输出定向到/从sftp-server进程。 如果没有configurationsftp子系统,或者没有sftp-server存在,或者即使sftp服务器没有configuration为允许用户…整个事情都会失败。 或者,您可以尝试使用scp ,而不依赖于单独的sftp-server子系统。
我终于不得不改变操作系统我恢复centOS 6.6而不是7.1,现在的作品它可能是某种新的保护在7.1版本,我不知道…谢谢大家的支持!