赞
踩
ssh:一种安全通道协议
功能:1.实现字符界面远程登录
2.远程复制
3.ssh协议是对通信对方的数据传输进行加密出来,包括用户口令(安全性)
4.客户端22端口,服务器端口22
ssh配置文件在/etc/ssh
客户端配置文件/etc/ssh_config
服务器配置文件/etc/sshd_config
1.传输层协议(ssh-trans)
(1)服务器认证,保密性以及完整性,压缩功能
(2)一般运行在tcp/ip连接上,也可以用在其他可靠流
(3)ssh-trans提供加密技术,密码主机认证,数据完整性保护,数据压缩
(4)密码主机认证,基于主机,不能进行用户认证
2.用户认证协议(ssh_userauth)
(1)向服务器提供客户端用户鉴别功能
(2)运行在ssh_trans之上
(3)开始执行用户认证,从底层协议接受会话标识,认证私钥所有权
(boot --认证用户是否存在--输入密码--认证密码是否相符--登录成功)
3.连接协议(ssh_connect)
(1)多个加密隧道分为逻辑通道
(2)运行在用户认证上,提供交互式登录会话,远程命令执行,转发tcp/ip连接
ssh [远程主机用户名]@[远程服务器主机名或IP地址] -p port
命令 端口号
[root@localhost ~]#ssh root@192.168.190.254
#默认使用22端口 root(登录对方的用户)加IP 地址,首次登录会询问,并要求输入密码
ssh -l [远程主机用户名] [远程服务器主机名或IP 地址] -p port
-l :-l 选项,指定登录名称。
-p: -p 选项,指定登录端口(当服务端的端口非默认时,需要使用-p 指定端口进行登录)
跳板连接用于在不直接暴露目标主机的情况下进行安全访问。
通过跳板连接,用户可以首先连接到中间设备,然后再通过中间设备连接到目标主机。
中间设备不一定是跳板机,只需要安装ssh服务就可以。
远程服务器管理:跳板连接常用于管理和控制远程服务器。通过跳板机,可以安全地登录和执行命令,而无需直接暴露目标服务器的访问端口。
内部网络隔离:跳板连接可用于将外部网络和内部网络隔离,提供一个安全的访问通道,外部用户必须通过身份验证和授权才能访问内部网络资源。
多层级安全访问:通过跳板机,可以从一个层级跳转到另一个层级,确保访问的安全性和可管理性。
SSH端口转发:跳板连接还可以用于SSH端口转发,提供访问内部受限资源的能力。
#本机地址为192.168.192.254
iptables -A INPUT -s 192.168.190.100 -j REJECT #拒绝来自此IP的所有访问
ssh -t 192.168.190.200 ssh -t 192.168.190.254 //把192.168.190.200作为跳板机
ssh -J IP1,IP2... 目标IP
#IP1 IP2为中间设备的IP地址
#举例
ssh -J 192.168.190.200 192.168.190.254
[root@localhost ~]# vim /etc/ssh/sshd_config //服务端配置
#生产建议修改自己默认的端口
#修改后 远程连接需要加 -p选项
ssh 192.168.190.100 -p 9527 //不加P会莫认使用原端口
LoginGraceTime 2m
#用来设定如果用户登录失败,在切断连接前服务器需要等待的时间,单位为秒
PermitRootLogin yes
#默认 ubuntu不允许root远程ssh登录
StrictModes yes
#检查.ssh/文件的所有者,权限等
MaxAuthTries
#用来设置最大失败尝试登陆次数为6
MaxSessions 10
#同一个连接最大会话
PubkeyAuthentication yes
#基于key验证
PermitEmptyPasswords no
#密码验证当然是需要的!所以这里写 yes,也可以设置为 no,在真实的生产服务器上,根据不同安全级别要求,有的是设置不需要密码登陆的,通过认证的秘钥来登陆。
正常情况下访问别的主机需要输入密码才能连接
在客户端生成密钥文件 ssh-keygen
最后会生成两个文件
cd /root/.ssh
ls
.pub为密钥文件
ssh-copy-id -i id_rsa.pub 192.168.190.200
#复制公钥文件
root@192.168.190.200's password: //输入密码确认执行命令
Number of key(s) added: 1 //拷贝成功
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。