ubuntu关闭ssh密码登录使用密钥登录

一、ubuntu安装远程连接环境openssh
1. 安装openssh软件,可以让我们实现通过ssh客户端远程连接服务器:

如果是新装的系统,最好先执行一下apt-get update

apt-get update
apt-get install openssh-server

apt-get这个命令与red hat系列的yum工具很相似,是一种用来在线管理软件的工具,常见用法如下:

(1)更新apt-get软件资源

apt-get update

(2)在线安装软件:
apt-get install 软件名称

apt-get install httpd

(3)在线更新已经安装的软件包:

apt-get upgrade

(4)卸载(删除)安装的软件:
apt-get remove 软件名称

apt-get remove httpd

2. 启动ssh服务:(启动ssh需要root权限)

可以通过sudo su命令来临时切换到root权限(不是所有的账号都可以切换到root权限,只有在/etc/sudoers文件中符合规则的用户能切换root身份)

sudo su
/etc/init.d/ssh start

二、使用密钥登录的实现
使用一个密码生成的工具生成密钥对,很多人使用puttygen来生成密钥,个人感觉这个工具生成的密钥对,有时候不会被服务端的openssh所接受,因为,还是使用服务器的密钥生成工具ssh-keygen来生成比较方便。

1、服务器端生成密钥对:

cd 
mkdir .ssh
cd .ssh
ssh-keygen -b 2048 -t rsa

ssh-keygen的基本用法:

-b后面是指定加密后的字符串长度

-t后面是指定加密算法,常用的加密算法有rsa,dsa等

默认生成的文件如下:

id_rsa.pub 公钥文件

id_rsa 私钥文件

2、修改公钥的文件名为authorized_keys

mv id_rsa.pub authorized_keys

3、把服务器端的id_rsa文件下载到客户机,如客户端是windows系统,我们通过PUTTYGEN这个工具,载入这个文件,另存为一个扩展名为.ppk的密钥文件
先载入id_rsa文件:
46a04e73c213cbd34d516c49457ed308.png
载入成功后保存为私钥文件:id_rsa.ppk(这个文件名可以自定义)
7f52a79e9861aaf67bab4b3add821a91.png
三、登录时使用私钥登录:
1、使用xshell登录:
填写好IP和端口信息后,点击用户身份验证:
8611047e97b7f214e7575bac453e52f3.png
2、使用putty登录:
填写好IP和端口信息后,点击ssh->auth:
2e64826ad26e355ce093921bca93529c.png
点击open即可登录,输入账号登录即可,如果登录不成功 ,则密钥有问题。

四、确认可以通过私钥进行登录后,关闭ssh密码登录
1、修改ssh的配置文件 sshd_config的:(只有root权限才能修改)
将Port端口号改成其他的,最好不要使用默认的22,这样更安全,当然这个端口号要记住

将PasswordAuthentication yes
修改成PasswordAuthentication no(如果前面有#注释,要将#去掉,大约在52行的位置)

sudo su
vim /etc/ssh/sshd_config

修改为以下内容:

PasswordAuthentication no

2、重启系统:(只有确保重启成功才能实现ssh登录密码关闭)

sudo su
reboot

3、验证是否关闭了密码登录,通过密码登录,如果被拒绝则说明成功,类似如下面的提示:
aefc236c6e09d9ccd59f57e798a8496a.png
4、通过加载密钥文件的方式登录:
49f0557a41a56d6f32968af162ca69c5.png

生成密钥的方法对centos与debian同样有效


参考:
诗心博客

最后修改:2019 年 11 月 23 日 05 : 05 PM
如果觉得我的文章对你有用,请随意赞赏

1 条评论

  1. 群友

    给个赞

发表评论