远程登陆ssh

远程登陆ssh

以下操作需要一个客户端和服务端两个虚拟机来完成。

打开两个虚拟机,可输入“nm-connectiong-editor”来修改ip
示例:
服务端设定:
在这里插入图片描述
在这里插入图片描述
ifconfig查看
在这里插入图片描述
客户端同理,ip设为172.25.254.100

1.openssh

当主机中开启openssh服务,那么就对外开放了远程连接的接口
sshd #openssh服务的服务端

ssh #openssh服务的客户端

rpm -q openssh-server ##查看版本信息
在这里插入图片描述
2.在客户端连接sshd的方式
ssh 服务端用户@服务端ip地址
ssh [email protected] ##在客户端用ssh命令连接172.25.254.101主机的root用户
在这里插入图片描述
##当当前主机第一次连接陌生主机时
##会自动建立.ssh/know_hosts
##这个文中记录的是连接过的主机信息

在这里插入图片描述
在这里插入图片描述
成功了,退出连接
在这里插入图片描述
注意:以上连接方式是不能打开远程主机的图形功能的如果需要打开远程主机图形功能需要输入 “-X”

     ssh -X [email protected]       输入cheese是系统检测摄像头
vim  /etc/hosts.deny  ##禁止某ip连接,即改即生效

修改如下:
在这里插入图片描述
试试看效果:
在这里插入图片描述

vim /etc/hosts.allow    ##允许某ip连接,优先级高于deny

修改文件
在这里插入图片描述
除了172.25.254.100都能连接
在这里插入图片描述

远程复制:

    scp  file  root@ip:dir   ##上传
    scp  root@ip:file  dir   ##下载

3.给ssh服务添加新的认证方式 KEY认证
(1)在服务端设置公钥

ssh-keygen -f /root/.ssh/id_rsa -N '' 
[root@localhost ~]# ssh-keygen -f /root/.ssh/id_rsa -N ''
Generating public/private rsa key pair.
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:
07:54:df:5b:65:4b:57:b8:64:2e:5f:c6:c2:01:74:7a root@localhost
The key's randomart image is:
+--[ RSA 2048]----+
|        ....o..o*|
|       .   . +*.+|
|        .   o=E=.|
|         .  ..=o+|
|        S .  o.+ |
|         .    .  |
|                 |
|                 |
|                 |
+-----------------+

(2)给服务端ip加密

扫描二维码关注公众号,回复: 5177054 查看本文章
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected] ##原始认证关闭前加密

在这里插入图片描述
出现authorized_keys 加密成功

(3)关闭原始认证(禁止客户端输入密码的权限)

vim  /etc/ssh/sshd_config

在这里插入图片描述
##78行原有的yes变成no

(4)重启服务

systemctl reload sshd.service
systemctl restart sshd.service

(5)分配钥匙给客户端
scp 文件 用户@主机ip:路径

scp /root/.ssh/id_rsa  [email protected]:/root/.ssh/           #将密钥传给客户端

在这里插入图片描述
(6)禁止客户端连接服务器

rm -fr /root/.ssh/authorized_keys

(7)恢复客户端连接服务器

cp /root/.ssh/id_rsa.pub   /root/.ssh/authorized_keys

4.sshd的安全设定

vim  /etc/ssh/sshd_config

1)48 #PermitRootLogin yes|no ##是否允许root用户通过sshd服务认证
2)78 PasswordAuthentication yes/no ##是否允许用户通过登陆系统的密码做sshd的认证
3)52 AllowUsers student ##设定用户白名单,白名单出现默认不在名单中的用户不能使用sshd
在这里插入图片描述
在这里插入图片描述##此时非root用户无法使用ssh,即便密码输入正确

4)53 DenyUser westos ##设定用户黑名单,黑名单出现默认不在名单中的用户可以使用sshd
在这里插入图片描述
在这里插入图片描述
4.添加sshd登陆信息

vim  /etc/motd  ##文件内容就是登陆后显示的信息

在这里插入图片描述
在这里插入图片描述
5.用户的登陆审计
(1)

    w       ##查看正在使用当前系统的用户
    w  -f   ##查看使用来源
    w  -i   ##显示IP 

在这里插入图片描述
信息都在/run/utmp里

(2)查看使用过并退出的用户信息:last
信息都在/var/log/wtmp里
在这里插入图片描述
(3)试图登陆但没成功的用户:lastb
信息都在 /var/log/btmp里
在这里插入图片描述

)加密ssh用户的认证
在服务端

ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
ssh-copy-id              ##加密命令
-i                       ##指定密钥
/root/.ssh/id_rsa.pub    ##密钥
root                     ##加密用户

172.25.254.55           ##主机ip

####################此时客户端是可以通过密码连接的

[root@localhost ~]#  ls -l /root/.ssh               ##查看是否生成密钥
total 16
-rw------- 1 root root 2047 Jan 16 10:48 authorized_keys
-rw------- 1 root root 1679 Jan 16 10:38 id_rsa
-rw-r--r-- 1 root root  396 Jan 16 10:30 id_rsa.pub
-rw-r--r-- 1 root root  878 Jan 16 10:47 known_hosts

3)验证
#解密文件传输到客户端

scp 文件 用户@主机ip:路径

scp /root/.ssh/id_rsa [email protected]:/root/.ssh/ #将密钥传给客户端
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44297303/article/details/86516898