Linux的sshd服务

一、sshd简介

SSH 为 Secure Shell 的缩写,为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

SSH是标准的网络协议,可用于大多数UNIX操作系统,能够实现字符界面的远程登录管理,它默认使用22号端口,采用密文的形式在网络中传输数据,相对于通过明文传输的Telnet,具有更高的安全性。

1. 连接方式:
    ssh    username@ip    ##文本模式连接

在文本模式下无法打开图形界面


    ssh -X  username@ip    ##图形方式连接

注:第一次连接陌生主机是需要建立认证文件,输入yes,再次连接时,因为已经生成了~/.ssh/know_hosts文件所有不需要再次输入

第一次连接后会生成 know_hosts文件(在主动连接的一方电脑上生成)


2. 远程复制:
    scp    file    username@ip:dir        ##上传(dir为绝对路径)

将桌面上的法ile文件上传到另一台虚拟机root用户下的桌面,且地址要写成绝对路径,才能上传成功

在另一台电脑上的相应位置就能找到法ile文件


    scp    username@ip:/file    dir    ##下载

二、sshd的key认证

通过sshd的key认证后,下次ssh连接时,就无需再输入密码
在/root/.ssh目录下
1.生成认证key

ssh-keygen

在/root/.ssh 目录下 生成了 id_rsa.pub文件

2.加密服务

ssh-copy-id  -i  id_rsa.pub  [email protected]

3.分发钥匙

scp  id_rsa  [email protected]:/root/.ssh

将id_rsa文件发送至另一台虚拟机

4.测试

在客户主机中(172.25.254.200)
ssh  [email protected]
连接时发现不需要密码

三、sshd的安全设定

对/etc/ssh/sshd_config文件进行编辑:vim /etc/ssh/sshd_config

1. 其中,78行中 PasswordAuthentication yes  代表允许用户通过登陆系统的密码作sshd认证,若为no表示不允许其他用户通过密码登陆,即无法登陆

2. 48行,PermitRootLogin no 代表不允许root用户通过sshd服务的认证,即无法连接到root用户,若为yes表示可以连接到root用户

3. 设定用户白名单,白名单中没有的用户默认不能使用sshd

设置格式为:

4. 设定用户黑名单,黑名单中没用的用户默认可以使用sshd

设置格式为:

四、添加sshd登录信息

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

在该文件下编辑相应的内容,登陆后就会显示

五、用户的登录审计

1.w
    -f    ##查看使用来源


    -i    ##显示ip

2.last        ##查看使用过并退出的用户信息

3.lastb        ##试图登录但没有成功的用户


 

猜你喜欢

转载自blog.csdn.net/weixin_43369306/article/details/83658564