SSH

简介:

什么是SSH(Secure Shell)

一种专为远程登录会话和其他网络服务提供安全性的协议。

通俗的说法就是:一台机器(client)需要访问另一台机器(server),如何实现免密码访问呢?那么就可以使用SSH协议啦。

使用方法

服务器(server,被访问方)和客户端(client,访问方)均可作为产生公、私钥的机器,但客户端须存放私钥。一般情况下,在客户端产生一对公、私钥。

(例子中使用的是从一台机器的root用户访问francis用户,模拟的是client访问server,原理相同)

例:从client访问server,client端用户是root,server端用户是francis,那么可以先在client端/root/.ssh目录下使用密钥生成命令

ssh_keygen

,然后将公钥拷贝到server端对应用户名

/home/francis/.ssh/authorized_keys

下,(使用服务器端哪个用户名登录就将公钥拷贝到该用户名下的/.ssh/authorized_keys内)。

这样操作完成之后,就可以在client端使用ssh username@ip命令登录到server端。

ssh francis@192.168.222.128

完整命令

以在client端生成公、私钥为例

# 在当前用户目录下产生一对公、私钥
ssh_keygen 
# 将公钥拷贝至server端
cp id_rsa.pub /home/francis/.ssh/authorized_keys 
# 以server端用户francis身份通过SSH免密登录server
ssh francis@192.168.222.128 

注意

1、当authorized_keys 中存有多个公钥时,后续的公钥将以追加至其末尾方式添加,命令为:cat id_rsa.pub >> authorized_keys。

2、不可随意更改公私钥的权限,默认是600,更改之后将会报错,如下方所示。

# 修改权限
chmod 644 id_rsa
# 访问出错
ssh francis@192.168.222.128
# 改回权限
chmod 600 id_rsa

3、退出远程访问时使用exit命令

4、client和server并非是固定不变的,随着访问和被访问的关系转变,它们的角色也将发生变化,这时就需要在server端(francis)生成公私钥,然后将公钥拷贝到root端authorized_keys。

cp /home/francis/.ssh/id_rsa.pub /root/.ssh/authorized_keys
目录
相关文章
|
5月前
|
监控 Ubuntu 网络安全
SSH服务
【7月更文挑战第16天】
47 6
|
5月前
|
安全 Unix Linux
|
5月前
|
安全 Linux Shell
SSH服务详解(2)
SSH服务详解(2)
|
安全 Shell 网络安全
|
算法 Linux 网络安全
ssh的使用
因为个人更推荐通过服务器->本地->服务器来传输。
87 0
ssh的使用
ssh 详细
ssh 首次登陆服务器时会弹出服务器公钥确认提示如果要禁用该提示功能,可以在ssh的配置文件中进行配置,默认是ask,默认情况下可能没有这个属性,也可以自己添加进去。StrictHostKeyChecking ask添加之后我们先从ssh信任服务器列表中删除上面的服务器的ip,再做测试。
1342 0
|
Shell 网络安全
SSH 技巧
SSH 是 Linux 下进行远程连接的基本工具。 一般情况下我们可以通过 ssh username@xxx.xxx.xxx.xxx 登录远程服务器,如果要管理多台服务器,这样太长了。
1146 0
|
网络安全 数据安全/隐私保护 Perl
ssh服务使用介绍二
老司机开车了 快上车   上文提到当我们使用ssh远程链接主机的时候,会出现询问的提示,如果我们链接的机器多了,一遍一遍的输入是不是很麻烦?怎么解决如下 vim /etc/ssh/ssh_config 如图 小案列 1、远程链接图形化命令 有两台主机,192.168.43.6与192.168.43.7我当前用的是6,去链接远方主机7,而7这台主机是运行在命令行界面的系统。
1384 0
|
安全 Shell 网络安全
ssh服务
telnet 远程登录 协议,23/tcp C/S S:telnet服务器 C:Telnet客户端 明文传送 ssh Secure Shell,应用层协议 22/tcp 通信过程和认证过程都是加密的。
1299 0
|
网络协议 安全 网络安全