OpenSSH 是利用 SSH 协议进行远程登录的紧张连接工具。
它加密所有流量以肃清窃听、连接挟制和其他攻击。
此外,OpenSSH 供应了大量的安全隧道功能、多种身份验证方法和繁芜的配置选项。
(来自:https://www.openssh.com/官网)

为达到无需密码远程自动登录做事器的目的,紧张须要以下两个步骤进行:

先容ssh-keygen干系内容及天生、创建密钥对的操作;在Linux做事器上增加系统用户,及用户干系的配置;配置ssh做事。
ssh-keygen

官方网址:https://man.openbsd.org/ssh-keygen.1

1024免登录最新phpLinux免暗码登入 SQL

ssh-keygen 是一个认证密钥的天生、管理和转换的工具。
采取密钥对的形式,天生一个私钥和一个公钥,可以用来做用于远程做事器的连接。

1.找个Linux天生密钥

[test@localhost ~]$ ssh-keygen -t rsa -f test -b 2048 #输入密钥加密密码,其他都点击回车即可 Generating public/private rsa key pair.Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in test.Your public key has been saved in test.pub.The key fingerprint is:SHA256:lvq828n6pLceKxztuJecfG5IEe04uo8V3E4VFHSw47Q test@testThe key's randomart image is:

-t dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | rsa 我们这边选择rsa加密

-f output_keyfile #填写密钥输出文件名称

-b bits #指定要创建的密钥中的位数。
对付 RSA 密钥,最小大小为 1024 位,默认为 3072 位。

运行上述命令后会得到两个文件:test(私钥,把稳保密保管)、test.pub(公钥)

增加系统用户及用户ssh干系配置

1.新增一个用户:test

[root@localhost ~]$useradd test

2.进入test用户目录,并创建目录.ssh

[root@localhost ~]$ cd /home/test[root@localhost test]$ mkdir .ssh

3.将test.pub文件拷贝到.ssh目录,并创建authorized_keys文件

[root@localhost test]$ cd .ssh[root@localhost .ssh]$ cp /home/test/test.pub .[root@localhost .ssh]$ cat test.pub >> authorized_keys

4.修正.ssh、authorized_keys目录、文件的权限:要担保.ssh和authorized_keys都只有自己账号的读写权限,否则会很随意马虎涌现无法通过ssh key登入

[root@localhost test]$ chmod 700 -R .ssh[root@localhost test]$ chown -R test.test .ssh[root@localhost test]$ cd .ssh[root@localhost .ssh]$ chmod 600 authorized_keys配置ssh做事

须要修正ssh的配置,设置为通过key登入

[root@localhost ~]$ vi /etc/ssh/sshd_config #找到下列配置选项,把前面的#去掉, AuthorizedKeysFile .ssh/authorized_keys #找到密码验证设置,改为no PasswordAuthentication no #改完后,保存配置文件,并进行sshd做事重启 [root@localhost ~]$ systemctl restart sshd利用ssh远程工具进行登入测试

新建ssh连接,这边有两个地方须要把稳:

1.认证方法:公钥

2.私钥:导入刚做事器上天生的私钥文件

3.点击确定即可,实现免密码登录。

测试免密码登入:

Last failed login: Fri Apr 22 17:29:44 CST 2022 on pts/0

There was 1 failed login attempt since the last successful login.

Last login: Fri Apr 22 10:46:34 2022

[test@test ~]#