SSH远程控制及访问
admin
2023-03-09 05:41:31
0次

SSH远程控制及访问详解

SSH是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。与早期的 Telent、RSH、RCP等应用相比,SSH 协议提供了更好的安全性。

一、sshd基本配置

现在我们是使用的XShell与服务器连接的,那么sshd服务就应该是处于运行的,下面我们用“netstat -ntap | grep 22”命令进行查看。

下面我们进入sshd的配置文件多其中的一些配置行进行了解。
Port 22: 监听端口号
ListenAddress 0.0.0.0: 监听地址
LoginGraceTime 2m: 登录验证时间为 2 分钟
PermitRootLogin yes: 允许root用户登录
MaxAuthTries 6: 验证登录时最大重试次数为 6
MaxSessions 10:访问最大连接数
PubkeyAuthentication yes:开启秘钥验证
开启22端口(去掉行首的“#”号)
输入命令“systemctl restart sshd”重启sshd服务
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问

下面我们使用另一台服务器test02对服务器test01进行远程控制。
cd /opt/(在test02远程连接的情况下进入test01的opt目录下)
touch aaa.txt(并创建文件aaa.txt成功)
ls(查看文件是否创建成功)
cd /opt/(返回test01并进入opt目录下)
ls(查看远程创建结果)
但是root的权限毕竟太高,随便谁都可以远程连接,难免安全风险过高。所以下面我们设置root用户禁止登录。
首先进入sshd配置文件,修改配置行PermitRootLogin no(禁止root用户登录)
systemctl restart sshd(重启sshd服务)
创建一个新用户tom
useradd tom(创建用户tom)
passwd tom(设置密码)
此时我们再在另一台服务器上输入“ssh root@192.168.131.133”,root已经不能登录了。
但方法总比困哪多。我们可以先试用tom用户登录在切换到root
ssh tom@192.168.131.133
su - root
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
所以光禁止root用户登录并不能完全解决我们的安全隐患。
我们可以进入pam.d模块进行相关安全的修改。(vim /etc/pam.d/su)
启动wheel组,删除行首的“#”号即可
从上面我们可以得知用户tom并不属于wheel组,所以此时wheel组已经不能再随意切换到root助理,只有属于wheel组的用户可以切换到root用户,无疑是增加了我们的服务器安全系数。
SSH远程控制及访问
SSH远程控制及访问
为了防止破解,我们还可以对我们的验证登录的最大重试次数进行设置,我们首先进入sshd配置文件开启最大验证次数的配置行(去除行首的“#”即可)。
修改完配置文件记得重启服务。“systemctl restart sshd”
但是我们实际验证时发现,因为服务器默认的最大验证次数是3次,所以我们的设置并未起到作用。
若是想配置起到作用我们需要执行命令“ssh -o NumberOfPasswordPrompts=8 fan@192.168.131.133”。

SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问

为了进一步加强我们的服务器安全,我们还可以设置黑白名单。
AllowUsers 用户1 用户2(允许登陆的用户)
或者 DenyUsers 用户1 用户2(禁止登录的用户)
两条命令不可以同时使用,还可以同时限制用户的登录地址
下面我们以白名单AllowUsers进行举例。
在sshd的配置文件中添加配置行“AllowUsers fan@192.168.131.129 jerry”(允许用户fan登录固定ip的服务器,允许用户jerry登录所有服务器)。
ssh fan@192.168.131.133(fan用户可以登录)
ssh jerry@192.168.131.133(jerry用户可以登录)
ssh tom@192.168.131.133(tom用户无法登陆)
只有在白名单的用户才可以登录。
SSH远程控制及访问
SSH远程控制及访问

二、sshd密钥对登录

开启秘钥验证配置行“PubkeyAuthentication yes”。
此时我们的服务器用户目录中并没有秘钥的配置文件。
进入到客户单创建新用户kefu。
在客户端创建秘钥“ssh-keyqen -t ecdsa”
输入秘钥验证的密码:自己定义
ls(查看秘钥文件是否创建成功)
ssh-copy-id -i id-ecdsa.pub fan@192.168.131.133(把秘钥文件推送给服务端)
yes(确认推送)
输入用户fan的登录密码
这时我们在用户fan的家目录就可以找到.ssh秘钥文件了。
下面我们就可以尝试使用密钥登陆了,这时登录的验证方式的密码就是我们刚才设置的密钥对密码。
对于常用到的用户我们还可以对其设置免密码登录:ssh-agent bash
ssh-add
输入密钥对密码
以后我们的kefu用户就可以免密码登录远程服务器了。
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问

三、scp、sftp命令程序

在客户端分别创建文档“ssh_client”和文件夹“test”
之后我们把文档tssh_client和文件夹test远程复制到服务器端。
进入服务端的及目录查看复制结果
使用命令“sftp root@192.168.131.133”在客户端远程交互服务器的文档管理
get ssh_client :可以从远程服务器下载文档ssh_client。
up ssh_server:可以远程上传文档ssh_server到服务器。

SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问

四、TCP Wrappers的访问策略

TCP Wrappers 机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行
访问控制。对应的两个策略文件为/etc/hosts.allow 和/etc/hosts.deny,分别用来设置允
许和拒绝的策略。

关于 TCP Wrappers 机制的访问策略,应用时遵循以下顺序和原则:首先检查/etc/hosts.allow 文 件 , 如 果 找 到 相 匹 配 的 策 略 ,则 允 许 访 问 ; 否 则 继 续 检 查/etc/hosts.deny 文件,如果找到相匹配的策略,则拒绝访问;如果检查上述两个文件都找不到相匹配的策略,则允许访问。

只希望从 IP 地址为192.168.131.129主机 访问 sshd 服务,其他地址被拒绝,可以执行以下操作
vim /etc/hosts.allow (进入白名单策略文件)
sshd:192.168.131.129(输入允许登录的主机IP)
:wq(保存并退出)
vim /etc/hosts.deny(进入黑名单策略文件)
sshd:ALL(禁止所有)
:wq(保存并退出)

SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问
SSH远程控制及访问

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...