一、ssh简介
1、SSH介绍
- SSH是一个应用层协议
- 实现字符串界面的远程登录和复制
- 数据在传输过程中是加密并压缩的
- tcp协议 端口号是22
- 连接协议----用户认证----传输层协议
2、管理Linux服务器的方式
- 本地管理
- 安装系统、故障修复
- 远程管理(使用频率较高)
3、确保Linux服务器正常启动SSH服务
- 确保SSH服务正常运行
- SSH服务端口22/tcp
[root@localhost ~]# ps aux | grep ssh
root 937 0.0 0.4 112900 4324 ? Ss 17:56 0:00 /usr/sbin/sshd -D
root 1196 0.0 0.6 161512 6084 ? Ss 17:57 0:00sshd: root@pts/0
root 1237 0.0 0.0 112812 964 pts/0 S+ 18:20 0:00 grep --color=auto ssh
[root@localhost ~]# ps -elf |grep ssh
4 S root 937 1 0 80 0 - 28225 poll_s 17:56 ? 00:00:00 /usr/sbin/sshd -D
4 S root 1196 937 0 80 0 - 40378 poll_s 17:57 ? 00:00:00 sshd: root@pts/0
0 S root 1240 1198 0 80 0 - 28202 pipe_w 18:20 pts/0 00:00:00 grep --color=auto ssh
对应服务端软件[root@localhost ~]# rpm -qf /usr/sbin/sshd
openssh-server-7.4p1-21.el7.x86_64
4、客户端软件
- Windows
- XShell
- SecureCRT
- Putty
- Linux
- ssh命令
[root@localhost ~]# which ssh
/usr/bin/ssh
[root@localhost ~]# rpm -qf /usr/bin/ssh
openssh-clients-7.4p1-21.el7.x86_64
二、ssh主要命令
1.ssh远程登录命令
- ssh root@需要登录的主机ip地址
2. scp远程复制命令
- scp root@需要复制的主机地址:需要复制的文件路径 /粘贴的文件路径
- scp -rP 10022@主机ip地址:/需要粘贴的地址
指定端口号(-P)并且远程复制整个目录(-r)到指定的本机目录下
3.sftp:加密远程复制命令
- sftp是基于ssh服务,并对ssh服务的过程加密,虽然传输效率低于ssh,但是安全性要更高,下载的文件只能保存到当前目录,不可以指定目录,但是上传文件可以指定目录
- sftp -P 指定端口号
4.openssh服务
- 客户端配置文件位置:/etc/ssh_conf
- 服务端配置文件位置:/etc/sshd_conf(一般修改此配置文件为主 )
- 不论是ssh、scp还是sftp 都是基于openssh服务下 默认端口号都是22
三、构建秘钥对验证的ssh体系(免密登录)
1.实现过程
2.密钥原理
在ssh中,就是一个参数,该文件转换为密文或者把密文转换为明文的算法输入中的参数
算法共有三种,rsa、ECDSA、DSA代表三种加密方式
2.1 对称密钥
2.2 非对称密钥
sshc:1.用户账户登录密码
2.密钥登录
配置文件所在位置: /etc/ssh/sshd_config
![](https://img-blog.csdnimg.cn/2bc80b808cbb4124af801d2c97d4e92f.png)
3.创建密钥对
由于上述密钥对功能都是默认开启的,所以直接操作即可
- ssh-keygen -t ## 创建密钥对 ,并指定加密方法(算法类型)
- 进入家目录并查看
- ssh-copy-id -i id_ecdsa.pub root@192.168.181.100
- ##客户机创建完成后把指定密钥文件(-i)公钥文件传给服务端
- ssh-agent bash ##免交互登录
- ssh-add ##刷新环境 生成秘钥对
- ** 免密登录适用于密码较长,多用户之间需要频繁切换的生产环境,快捷登录**
四、TCP Wrappers保护原理
1.保护原理
- 相当于防火墙,但是只针对于tcp一类的传输协议的服务程序的端口
2.保护机制
方式1:通过tcpd程序对其他服务程序进行包装
*方式2:由其他服务程序调用libwrap.so.链接库
3.调用命令
ldd $(which tcp协议下的传输服务名)
4.访问控制策略的配置文件
- /etc/hosts.allow/ 白名单 (指定用户可以登录)
- /etc/hosts.deny/ 黑名单 (指定用户不允许登录)
版权归原作者 Tizzy33 所有, 如有侵权,请联系我们删除。