ssh服务(Linux系统远程登录控制服务)

目录

一:ssh介绍

1.ssh本质和作用

2.ssh应用方面

二:ssh原理 

1.数据加密

2. 公私钥

3.ssh服务流程 

 三:ssh配置、排错、命令

1.ssh配置

2.ssh排错 

 3.ssh连接命令

4.ssh传输命令

四:ssh服务加固

五:免密通道 (密钥登录)


一:ssh介绍

1.ssh本质和作用

        SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

2.ssh应用方面

        可以使用openssh软件实现ssh服务,应用在HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他系统上。ssh服务默认端口是22

二:ssh原理 

1.数据加密

        用来传输数据的时候,对数据进行加密,使用的加密算法有RSA、Elganmal,背包算法,D-H、ECC(椭圆曲线算法)、ECDSA等。

2. 公私钥

        ssh服务依赖Linux系统的用户名和密码验证,当客户端连接过来时经过ssh服务,它会去/etc/passwd目录下查找账号密码,没有就登录不了。还有一种就是密钥认证,等会的免密通道就是靠公私钥实现。

3.ssh服务流程 

ssh服务(Linux系统远程登录控制服务)_第1张图片

 

 三:ssh配置、排错、命令

1.ssh配置

        ssh的配置文件在/etc/ssh,其中sshd_config是服务端的配置文件,ssh_config是客服端的配置文件,日志文件在/var/log/secure中。

2.ssh排错 

ssh常见错误,Connection to 192.168.149.151 closed,连接被拒绝。

       1. 那么可能的原因有很多,首先查看服务器ssh服务有没有启动如果没有启动,使用systemctl start ssh 启动服务。

ssh服务(Linux系统远程登录控制服务)_第2张图片

        2. 如果启动了就去/etc/ssh/sshd_config,查看ssh服务的端口号以及允许root用户远程登录的条件。

ssh服务(Linux系统远程登录控制服务)_第3张图片 

ssh服务(Linux系统远程登录控制服务)_第4张图片 

        3.如果没有问题,再去看看防火墙有没有问题,如果防火墙启动了,使用systemctl stop firewalld关闭它,使用systemctl status firewalld查看防火墙状态。 

ssh服务(Linux系统远程登录控制服务)_第5张图片

        4.客户端和服务端防火墙都关闭的话,如果还有问题,接着查看selinux,使用getenforce 查看selinux状是Disabled就去/etc/selinux/config文件里修改配置。

ssh服务(Linux系统远程登录控制服务)_第6张图片

 3.ssh连接命令

ssh [email protected] -p 22

        当输入这条命令时 ,会让你输入yes/no,客户机使用ssh第一次连接服务器时将服务器上sshd守护进程的公钥复制到本地,存放到本地~/.ssh/known_hosts文件中,每行存放一台服务器的公钥用来验证服务器的身份。下次登录就不用输入yes/no了

ssh服务(Linux系统远程登录控制服务)_第7张图片

4.ssh传输命令

scp远程拷贝,底层通过ssh协议远程到其他的机器上进行数据传输

ssh服务(Linux系统远程登录控制服务)_第8张图片

sftp就是xftp,put -r 上传文件夹,通过“?”获取选列列表。

ssh服务(Linux系统远程登录控制服务)_第9张图片 

四:ssh服务加固

        通过第三条内容报错我们知道了可以对ssh服务进行加固,是安全性更高,黑客就难以入侵,修改配置文件,有以下几条:

1.修改端口号,因为所有的ssh服务默认端口就是22

2.禁用root用户远程登录,root用户权限很大,登录上来同样可以修改服务机器的配置文件

3.升级openssh软件,不断的升级

4.密码认证,经常修改密码+设置复杂的密码

5.秘钥认证,通过公私钥的非对称加密实现非常高的安全性

ssh服务(Linux系统远程登录控制服务)_第10张图片 

 

五:免密通道 (密钥登录)

步骤:

1.通过指令ssh-keygen -t rsa生成秘钥:一对公私钥存放在/root/.ssh/目录下,名字叫做identity(私钥)和identity.pub(公钥)。

ssh服务(Linux系统远程登录控制服务)_第11张图片

2.通过指令ssh-copy-id -i id_rsa.pub [email protected]把公钥给远程登录的服务器。

ssh服务(Linux系统远程登录控制服务)_第12张图片

收到公钥的服务器在/root/.ssh/下会有authorized_keys文件就表示客户端对服务端可以实现免密登录,如果想实现两台机器都是免密通道,只需要在服务端用同样的方法。

3.登录效果如图

ssh服务(Linux系统远程登录控制服务)_第13张图片

 

你可能感兴趣的:(Linux,ssh,linux,服务器)