1、ssh服务挂了,怎么远程连接服务器
如果能够ping通,只能表示路径可以达到,
你或许可以采用telnet {hostname} 22端口,看看是否可以出现一些字符,显示正常连接,
1. 如果这个不可以,
需要查询一下服务器是否允许访问22端口,
服务端打开和允许访问.
防火墙段(如果有的话)
网络正常映射或者开放到可以允许访问的地址上(对于远程访问)
2. 如果可以的话,
ssh软件问题
更换软件
系统问题检查 ,更换另外一台计算机登陆
可以
你的系统有问题
不可以,
问题很严重,无法解决了.不过你可以让机房重装试试看
2、ssh怎么连接服务器
先确认copy被远程的主机的IP,如图输入ifconfig 或ip addr查看
启动ssh服务,需要启动sshd服务。同时需要对外开放此端口
到需要ssh的电脑上测试能否联通 远程linux服务,确认IP和测试网络情况。
安装ssh组件,如果要ssh远程到那台服务器。需要安装ssh-client组件。
如果没有此组件,可以通过yum install 命令来安装。
远程linux接着使用 ssh root@目标服务器IP 来远程,会提示是否需要远程。
接着输入远程服务器linux的root密码,查看IP确认。已经连上了
退出ssh如果要退出远程,直接输入exit命令可以退出远程。
3、请教如何用ssh连接远程服务器
目前,远程连接服务器的类型有以下几种:
① 文字接口的明文传输:Telnet、RSH为主,很少用到。
② 文字接口的加密传输:以SSH为主,已经取代了上面的明文传输方式。
③ 图形接口:XDMCP、VNC、XRDP等较为常见。
这篇文章只为实战,不为普及概念性知识。所以我只讲解在工作中最常用到的技术SSH。关于SFTP技术和VNC技术,请查阅我的其他博客。
好,先来看一下SSH的相关技术:
SSH,英文全程是Secure Shell Protocol(安全的壳程序协议)。SSH是现在公司基本上都在使用的一种文字接口的加密传输技术,采用的是非对称秘钥系统。
对于SSH的原理,你们可以参考我的另外一篇博客,我把链接贴在这里:
SSH原理
⑴来吧,我们先来查看一下sshd这个服务(这就是SSH的远程连接必须开启的服务,属于系统自带),注意,一般这个sshd服务是默认自动开启的。
如果想要重启怎么办呢?
好吧,请看:
上面两种重启动的方法都是可以滴!
⑵直接远程登录主机的命令:
ssh 【-f】 【-o 参数】 【-p 非标准端口】 【账号@】IP 【命令】
其中:
-f : 需要配合后面的【命令】,不登录远程主机直接发送一个命令过去
-o 参数 : 主要的参数有:
ConnectTimeout=秒数 : 连接等待的秒数,减少等待的时间。
StrictHostKeyChecking=【yes|no|ask】:默认是ask,若要让public key主动加入到known_hosts, 则可以设置为no即可。
-p : 如果sshd服务启动在非标准端口下,需使用此参数。
举例说明吧:
① 直接登录到对方主机:
如果是以root用户登录到对方主机,有如下两种登录方式:
注意:如果是普通用户登录,必须使用第二种加@的方式。
② 实现登录对方主机,执行命令后就离开的方式。例如:从远程主机上执行cat /etc/passwd命令把文件显示在本地主机上。
③ 不登录对方主机,让对方主机自己运行该命令,你立刻回到本地机器继续工作:
④ 删除known_hosts后,重新使用root连接到本机,会自动加上公钥记录
你一定会说,大骗子玩漏了吧?怎么没有自动加上公钥记录呢?怎么记录信息提示手机选择yes/no了呢?别着急,我们的“-o”参数要横空出世了!有了【-o】,再也不用选择yes|no了,而是自动被选择了yes而加入到~/.ssh/known_hosts中。
看到了,这次没有提示让选择yes|no吧!
⑤ SSHD服务器详细配置
Centos默认的SSHD服务其实已经算是很安全了,这里注意Centos 5.X之后默认SSH协议版本都是V2也就是上图的【Protocol 2】,默认端口是 22,注意这些还不够,如果是真正工作中的服务器,建议取消root的登录权限:
把红框中的yes改为no就可以取消root用户的登录权限了。
下面来介绍一个很有用的技术,制作不用密码可立即登录的SSH用户。有人会说制作这个是用来干嘛的?你想一想,如果想要利用crontab来定时执行备份或者拷贝的任务,因为每次SSH连接都要输入对方主机密码,这是在crontab中无法执行的,那么怎么办?只有不需要输入密码才可以操作。
方法如下:
① 客户端建立两把钥匙
我们在客户端创建一个用户user1操作,利用user1来远程服务器端的user2用户。下面我们以192.168.1.118为客户端,以192.168.1.121为服务端。
首先在客户端建立两把秘钥
命令如下:
需要注意:
⑴ ~/.ssh目录的权限必须是700
⑵ id_rsa(私钥文件)的权限必须是-rw——-,且属主必须是当前登录用户,否则在未来秘钥比对的过程中,可能会被判断为危险而无法成功的以公私钥成对的机制来实现连接。
以上两点一般情况下默认都是正确的。
② 将公钥文件数据上传至服务器端
③ 将公钥文件放置到服务器端的正确目录中,并保证文件名正确
一定要把公钥文件内容附加到authorized_keys这个文件内,操作用户为服务器端用户
注意:切记authorized_keys这个文件的权限必须是644
4、怎样用ssh远程登录其他的linux服务器?
不知道你有多少台Linux,数量多的话,可以考虑用Opentext ETX远程接入的解决方案。打开XDMCP服务,就可以接入到所有的Linux服务器
5、如何从外网SSH连接内网服务器
如果内网IP连接SSH是正常的,表明你的centos服务器设置完毕。如果我没猜错的话,你内网SSH连接应该是没有更改端口仍是22.
那么问题就出在你没有正确设置路由端口。
假如你单位的路由器NAT的线路是默认线路或者绑定到wan口。那么你NAT这边的端口号可以设置为1111或者其他任意的不冲突的端口号,但你内部IP的端口号还是必须得与你的centos服务器的SSH端口号一致。否则是连接不上的。
另外,你的centos的SSH连接限制中也要开放互联网连接,不能限定为只允许本地连接。
你重点检查后二步。一般问题都可以解决。
6、怎样通过SSH端口转发达到访问另一个公网服务器的目的?
不用将问题想的那么复杂
只要 客户端 到 A 是通的,A 到 B 是通的, 那么版 客户端 -> A -> B 就是通的,
不管是公权网还是内网,没区别的。
只需要连上A服务器后, 在A服务器 SSH访问 B服务器就行了
7、如何实现SHELL:用SSH批量登陆到其他服务器,每台服务器登陆密码不同
需要采用ssh远程无密码登录:
原理是:
客户机
上,先生成
私钥
和公钥,然后内把公钥传递到每台要登录容的服务器的指定用户目录里即可。
客户机命令:
ssh-keygen
-t
rsa
(回车两次)
ssh-copy-id
-i
~/.ssh/id_rsa.pub
用户名@服务器1
ssh-copy-id
-i
~/.ssh/id_rsa.pub
用户名@服务器2
...
认证成功后,
运行命令
:
ssh
服务器名
“命令名”
不再需要密码