linux ssh key配置方法

一、使用公钥认证

1、原理:首先由用户生成一对密钥,然后将公钥保存在SSH服务器用户的目录下.ssh子目录中的authorized_key文件里(/root/.ssh/authorized_key).私钥保存在本地计算机.当用户登陆时,服务器检查authorized_key文件的公钥是否与用户的私钥对应,如果相符则允许登入,否则拒绝.由于私钥只有保存在用户的本地计算机中,因此入侵者就算得到用户口令,也不能登陆到服务器.

2、启用公钥认证
修改配置文件/etc/ssh/sshd_config 
将"PasswordAuthentication yes"修改为"PasswordAuthentication no"
3、生成密钥
[root@rain ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4d:dd:48:af:76:c2:ba:a8:bc:20:f3:28:1d:6a:28:53 root@rain.fish.com
4、将公钥/root/.ssh/id_rsa.pub改名为/root/.ssh/authorized_keys
mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
5、将私钥id_rsa拷贝到客户机/root/.ssh/下 就可以直接使用了。

二、SSH服务的配置
1、配置SSH服务的运行参数,是通过修改配置文件/etc/ssh/sshd_config实现的。
2、因为SSH服务使用默认的配置已经能够很好的工作,如果仅仅提供SSH服务不需要修改。这里只介绍一 些常用的选项。
#Port 22
定义了SSH服务监听的断口号,SSH服务默认使用的端口号是22
#Proctocol 2,1
定义了SSH服务器使用SSH协议的顺序。默认识先使用SSH2协议,如果不成功则使用SSH1协议,为了安全起 见,可以设置只使用SSH2协议。
#ListenAddress 0.0.0.0
定义SSH服务器帮定的IP地址,默认绑定服务器所有可用的IP地址.
#PermitRootLogin yes
定义是否允许管理员登陆
#PermitEmptyPasswords no
定义是否允许空密码登陆.

#PasswordAuthentication no
定义是否使用口令认证方式,如果准备使用公钥认证可以设置为no

怎么在登录不同服务器使用不同的密钥呢?man ssh就看到有个 -i 参数可以指定不同的密钥文件
方法一:

ssh -i /root/.ssh/id_rsa root@192.168.11.117 ls /root
方法二:新增ssh的配置文件并修改权限

touch /root/.ssh/config

chmod 600 /root/.ssh/config

修改config文件
Host 192.168.11.109
        IdentityFile /root/.ssh/id_rsb
        User root(or xxx)
Host 192.168.11.117
        IdentityFile /root/.ssh/id_rsa
        User root(or yyy)

现在可执行:ssh 192.168.11.109 ls /root

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux 中通过 SSH 连接其他计算机需要进行一些配置。 1. 安装 SSH 服务端:在终端输入 "sudo apt-get install openssh-server" (假设你使用的是 Ubuntu)。 2. 配置 SSH 配置文件:通过编辑 "/etc/ssh/sshd_config" 文件来配置 SSH 服务。 3. 重启 SSH 服务:在终端输入 "sudo service ssh restart" 或 "sudo systemctl restart ssh" 重启 SSH 服务。 4. 连接远程机器:在终端输入 "ssh 用户名@远程机器IP地址" 连接远程机器。 需要注意的是,如果你是第一次连接远程机器,系统会提示你是否继续连接,并且会提示远程机器的 RSA key fingerprint,确认无误后输入 "yes" 继续连接。 ### 回答2: 在Linux操作系统上进行远程连接通常使用SSH(Secure Shell)协议。为了能够进行SSH连接,需要进行一些配置。 1. 安装SSH 首先,需要安装OpenSSH软件包。可以使用以下命令在Ubuntu中安装OpenSSH: sudo apt-get install openssh-server 在CentOS或者RHEL中,可以使用以下命令安装OpenSSH: sudo yum install openssh-server 2. 配置SSH服务 通常,在安装OpenSSH软件包后,SSH服务默认会启动。但是,为了安全起见,建议对SSH服务进行一些配置。可以使用以下命令编辑SSH服务的配置文件: sudo nano /etc/ssh/sshd_config 在该配置文件中可以进行一些配置,比如修改SSH端口、禁用密码登录等。 3. 启动SSH服务 在编辑SSH服务配置文件后,需要重新启动SSH服务。可以使用以下命令重启SSH服务: sudo systemctl restart sshd 4. 建立SSH连接 现在,可以建立SSH连接了。在本地机器上使用Linux终端或者PuTTY等SSH客户端工具连接远程Linux服务器。可以使用以下命令建立SSH连接: ssh username@remote_server_ip_address 在连接时,需要输入远程Linux服务器的IP地址,以及用户名和密码(或者密钥)。 总的来说,配置SSH并建立连接需要进行一些步骤,但是使用起来颇为方便,而且能够确保远程连接的安全性。 ### 回答3: Linux SSH(Secure Shell)是一种安全的远程登录协议。它提供了加密通信的方式,保证了对远程系统的访问和管理的安全性。在使用 SSH 时,需要对其进行配置,下面我们来介绍一下 Linux SSH配置方法。 第一步:安装 SSHLinux 系统中,默认情况下会安装 OpenSSH。但如果不知道系统是否安装了 SSH,可以在终端中输入以下命令: ``` which ssh ``` 如果出现了命令路径,则表示已经安装了 SSH,如果没有则需要先安装 SSH。可以使用以下命令来安装 OpenSSH: ``` sudo apt-get install openssh-server #ubuntu或Debian系统 sudo yum install openssh-server #CentOS、Fedora、RedHat ``` 安装完成后,SSH 服务就会启动。 第二步:SSH 配置 通过修改 SSH 配置文件可以实现对 SSH 的进一步配置,下面是配置文件的路径: ``` /etc/ssh/sshd_config ``` 可以使用以下命令修改 SSH 配置文件: ``` sudo nano /etc/ssh/sshd_config ``` 或者: ``` sudo vi /etc/ssh/sshd_config ``` 修改完成后,需要重启 SSH 服务,使用以下命令进行重启: ``` sudo service ssh restart ``` 之后就可以用 SSH 连接到远程服务器上了,具体方法如下: 在终端中输入以下命令: ``` ssh username@ip_address ``` 其中,username 是远程服务器上的用户名,ip_address 是远程服务器的 IP 地址或域名。 SSH 连接时可能需要输入密码或者 SSH 公钥验证,这取决于 SSH 配置的方式。 以上就是 Linux SSH 配置的详细介绍,通过对配置文件的修改,可以实现更多功能,例如端口的配置、用户权限的配置和登录方式的配置等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值