SSH连接Ubuntu Server服务器的两种方式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSH连接Ubuntu Server服务器的两种方式相关的知识,希望对你有一定的参考价值。

参考技术A

SSH(secure shell)用于远程和服务器交互

Ubuntu Server默认安装了OpenSSH Server,可通过端口22连接

SSH客户端可以用用户名密码的方式连接服务器,也可以用密钥对的方式连接服务器。

可以使用SSH客户端工具PuTTY,windows10自带的SSH工具,或者VMWare的SSH工具连接服务器

1.在命令行用 用户名和密码连接

ssh username@serveraddress

2.SSH客户端还可以用 密码对 (公钥和私钥)连接

这里使用Win10自带的工具

生成密钥对

运行命令:ssh-keygen

添加公钥

打开生成的公钥文件id_rsa.pub,复制全部内容

使用SSH密码登录的方式登录Ubuntu服务器,在当前用户目录创建文件夹.ssh,进入.ssh文件夹并创建文件authorized_keys,粘贴从公钥复制的内容并保存文件

修改SSH配置

修改Ubuntu Server的文件:

/etc/ssh/sshd_config

将PubkeyAuthentication yes前面的注释去掉

运行命令重启sshd服务

sudo systemctl restart sshd

退出SSH连接,重新用私钥登录登录

ssh <username>@<serveraddress> -i <私钥路径>

实现机器远程跳转的两种自动化方式

参考技术A 现在实验室大部分的服务器是不允许直接ssh连接的,需要先连到一个跳转机,之后再通过这个跳转机去ssh连接服务器。如果是自动化连接,如下图所示:

手工操作的话无非就是两次输入ssh连接命令,如果是脚本自动连接的话该怎么做呢,本节针对shell脚本与python脚本两种自动化方式实现ssh远程跳转。

ssh -i id_rsa -F bastion_ssh_config fsp@172.28.55.64
其中id_rsa为ssh连接的私钥文件(需要提前在目标主机与跳转机上置入公钥)。bastion_ssh_config为跳转配置文件,内容样例如下:

python ssh_jumphost_connect.py
其中ssh_jumphost_connect.py文件的内容样例如下:

参考链接:
https://selivan.github.io/2018/01/29/ansible-ssh-bastion-host.html
https://pypi.org/project/sshtunnel/

以上是关于SSH连接Ubuntu Server服务器的两种方式的主要内容,如果未能解决你的问题,请参考以下文章

实现机器远程跳转的两种自动化方式

SecureCRT通过SSH2连接Ubuntu

ubuntu下开放ssh连接服务的方法

ubuntu无法ssh远程连接

linux把文件从A服务器备份到B服务器的两种办法

Ubuntu14.04开启ssh服务