通过SSH连接到Linux服务器

目录

前提:

一、通过账号密码方式进行ssh连接

二、通过免密方式进行ssh连接(公、私钥校验)

三、通过第三方工具(XShell)免密方式进行ssh连接


前提:

传统的网络服务程序,如ftp,pop和telnet在本质上是不安全的,因为它们使用明文传送口令和数据,很容易被冒充真正服务器的中间人修改通信数据(“中间人”攻击)。

SSH(Secure Shell)可以对你的传输数据进行加密,进而防止"中间人"攻击,DNS和IP欺骗,还一个好处是它对传输数据进行了压缩,可以加快传输的速度。

一、通过账号密码方式进行ssh连接

(以windows连接linux服务器为例)

1、启动windows的cmd控制台输入指令进行ssh连接。

ssh -p 端口号 linux服务器用户名@linux服务器ip地址

示例:

通过SSH连接到Linux服务器_第1张图片

 2、输入密码后回车。(控制台中默认不显示你的输入内容)

示例:

二、通过免密方式进行ssh连接(公、私钥校验)

1、在windows的cmd控制台上生成公私钥文件(想要免密就一直回车)。

ssh-keygen -t rsa

示例:

通过SSH连接到Linux服务器_第2张图片

2、打开公私钥存放路径找到公钥文件 id_rsa.pub, 并复制到linux操作系统中。

可使用WinSCP、Xftp等工具进行文件复制。

3、在linux操作系统中将复制进来的公钥文件内容追加到 authorized_keys 文件中。

这一步是为了存放公钥凭证,以便ssh登录时做校验。

cat ./id_rsa.pub >> /root/.ssh/authorized_keys 

操作完检查下是否复制内容成功。

4、再次登录请求,已经直接连接上了。
(备注:如果你在第一步中生成公私钥的过程中输入了密码,那此时你还是需要输入那时候填的密码的。)

 

三、通过第三方工具(XShell)免密方式进行ssh连接

1、打开Xshell工具的工具栏,点击“新建用户密钥生成向导”。
通过SSH连接到Linux服务器_第3张图片

 2、下一步。通过SSH连接到Linux服务器_第4张图片

3、下一步。
通过SSH连接到Linux服务器_第5张图片 

4、不填写密码,下一步。 (填了的话,下次登录不需要之前的ssh连接的密码了,但需要此时填写的密钥验证密码)
通过SSH连接到Linux服务器_第6张图片

 5、保存公钥文件后,点击完成。
通过SSH连接到Linux服务器_第7张图片

 6、将公钥文件复制到linux服务的 ~/.ssh/authorized_keys文件中。

①、通过Xftp上传刚才保存的公钥文件到linux。

②、通过cat >> 命令将公钥文件的内容追加到 ~/.ssh/authorized_keys文件中。

7、再次打开Xshell,新建会话。

①、用户身份验证选择“public key”

通过SSH连接到Linux服务器_第8张图片

②、选择 公钥对应的私钥文件后,确定。

通过SSH连接到Linux服务器_第9张图片

 ③、根据提示操作,最终便可以免密连接成功。

通过SSH连接到Linux服务器_第10张图片

 

题外话:

这里我介绍一下~/.ssh 文件夹下四个文件的意思:

 

1、id_rsa:本机(服务端)的私钥文件。

2、id_rsa.pub:本机(服务端)的公钥文件。

3、authorized_key:存放想要通过公私钥校验方式连接本机(服务端)的客户端公钥。

4、known_hosts:本地的客户端存放成功连接本机(服务端)的服务端信息,服务端信息变更的话会再次询问,是否连接。(即存放曾经连接成功过的远程服务器信息)

你可能感兴趣的:(linux)