如何通过ssh登录服务器执行linux指令

如何通过ssh登录服务器执行linux指令,第1张

介绍如何在windows主机上通过ssh远程登录ubuntu操作系统,这里以虚拟机的操作系统为例讲解。方法/步骤

准备工作:首先需要在windows系统中安装虚拟机,并在虚拟机中安装好linux操作系统,这里安装的是vmware player虚拟机和ubuntu版本的操作系统。关于该部分的安装在作者的其他经验中有详细介绍。

在windows主机中安装上ssh软件,ssh是Secure Shell 的缩写,主要提供远程登录协议。windows下的安装很简单,只要下载好安装程序,双击即可安装。安装完成后会生成两个软件图标。

在ubuntu系统中安装ssh,通常ubuntu中默认是安装的。可以通过命令进行查看:dpkg -l | grep ssh

如果ubuntu系统中没有安装ssh程序,也可以使用下列命令进行安装:

sudo apt-get install openssh-client

sudo apt-get install openssh-server

安装好后ssh服务的启动和停止命令如下:

启动ssh服务:

#sudo /etc/initd/ssh start

停止ssh服务:

#sudo /etc/initd/ssh stop

重启ssh服务:

#sudo /etc/initd/ssh restart

通过虚拟机启动ubuntu系统,打开shell终端,通过ifconfig命令,查看该系统的ip地址,ssh的端口号一般为22

打开windows系统中的ssh客户端软件,选择快速连接,输入ubuntu系统的ip地址和账户名,并根据提示输入密码,即可通过ssh登录到ubuntu系统中去,并执行各种命令操作。

实现此的技术原理:

在内网通过域名绑定服务器,外网SSH访问连接时,通过域名的访问,实现访问内网LINUX。

具体的实现过程如下:

明确LINUX服务器内网访问地址端口,确保LINUX服务器正常开启SSH服务,在内网SSH可以正常访问连接。如图所示:

被访问端的Linux主机上使用nat123动态域名解析Linux版本。

在被访问端的Linux服务器安装nat123客户端,并登录使用它。

登录网页,左侧用户中心,添加域名解析,选择动态域名解析并添加确认。

选择动态域名解析记录,使用二级域名,或自己的域名。鼠标放在输入框有向导提示。如不理解负载均衡,不要勾选多点登录。

新添加动态解析后,等待几分钟生效。解析生效后,动态解析域名与本地公网IP是保持对应的。可以通过ping下域名核实,返回结果IP地址为本地公网IP地址时,表示动态解析生效正常。

路由器端口映射,路由映射SSH访问22端口。

因为公网IP是在路由器上的,外网访问时,需要经过路由,需要在路由器上做端口映射,将内网LINUX服务器访问22端口打通。路由器端口映射位置:转发规则/虚拟服务器/添加允许外网访问端口和协议。我的LINUX服务器SSH服务端口是默认的22,我内网对应LINUX服务器主机的内网IP地址是192168129。

外网访问时,使用动态解析域名。

在外网使用SSH访问内网LINUX服务器时,使用动态解析域名进行连接访问。域名是不变的,可以上网即可访问,再也不担心动态公网IP变化的问题。

11 如果在你本机电脑主目录内 不存在 隐藏文件夹 ssh 的情况下输入命令: ssh-keygen -t rsa 不需要输入任何内容,连续三下回车确认。

12 进入 ssh 文件夹 , 输入 ls -l 可以看到 id_rsa 和 id_rsapub 两个文件

13 创建config文件,输入: touch config

14 配置公钥免登陆 , 先通过密码的方式登录到你的服务器主机上。然后将你本机文件 ~ssh/id_rsapub 里面的内容复制 并粘贴到 目标服务器主机的 ~ssh/authorized_keys 文件内 , 如果没有 authorized_keys 可以使用 touch authorized_keys 创建一个。至此准备阶段完毕~~

21 配置文件参数

Host : 可以看作是一个你要识别的名称,对识别的名称,进行配置对应的的主机名和ssh文件

HostName : 要登录主机的IP地址、或者域名

User : 登录名

port : 端口

IdentityFile : 指明上面User对应的identityFile路径 也就是 私钥的路径

ProxyCommand : 代理命令(不常用) , 通俗解释: 就是当你连接上目标服务器后,首先执行的命令

22 用例参考

# aliyun 独行浪子

Host rizhifuwuqi # 设置名称为 duxinglangzi

HostName 39104110110 配置目标主机IP 也可以是域名

User root

port 22

IdentityFile ~/ssh/id_rsa 私钥的路径

ProxyCommand tail -f /backend/logs/infolog 表示登录目标主机后,执行此命令查看日志

在终端(terminal) 输入 : ssh rizhifuwuqi

默认配置

Windows下有很多SSH工具。在这里我是用的是Putty。如果安装了Git并配置使用Putty的话,就不需要另外在安装Putty了。使用SSH连接服务器的命令如下:

ssh IP地址

一般来说为了安全性考虑,端口号等一些参数并不会使用默认值。这样的话命令就变成这样:

ssh 用户名@IP地址 -p 端口号

如果连接成功的话会提示你输入远程服务器的密码。全部成功之后SSH就会显示远程服务器的提示符,这时候就说明连接成功了。

密钥登录

每次登录SH都需要输入密码很麻烦,而且可能不太安全。SSH还能使用另外一种登录方式,也就是使用密钥登录。这种登录方式需要客户端生成一堆公钥私钥对,然后将公钥添加到服务器中,这样下次就可以直接登录了。

首先生成SSH密钥,依照提示输入信息即可。默认生成在用户主目录中的ssh文件夹中。带pub的是公钥,接下来需要添加到服务器中。

ssh-keygen

然后将本地公钥添加到服务器中,需要使用另一个命令:

scp -P 端口号 本地文件路径 用户名@远程服务器地址:远程路径

然后登陆服务器,找到复制进去的公钥,将公钥名字改为authorized_keys并添加到对应的ssh文件夹中。然后退出SSH重新登陆试试,成功的话不需要输入密码就会直接进入远程服务器。

1、首页登录腾讯云官网的“管理中心”,接着在左侧导航栏“SSH密钥”进入SSH密钥管理界面;点击“创建密钥”按钮,输入密钥名,创建一个新密钥,创建完密钥后,点击“下载”按钮,下载私钥。

2、然后右键点击刚创建的密钥,绑定需要登录的服务器;绑定完服务器后,左键点击密钥,界面右侧滑出密钥详细页。如下图所示:

3、在密钥详细页中,将“公钥内容”复制到一个空白文本文档中,保存用户名为密钥名(即刚刚新建的密钥的名称),并修改文档后缀名为“pub”(注:公钥名与私钥名必须相同,并且须放置在同一文件夹下)。如下图所示:

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何通过ssh登录服务器执行linux指令

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情