Linux的远程访问及控制
Posted 他和晚风一样温柔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux的远程访问及控制相关的知识,希望对你有一定的参考价值。
文章目录
OpenSSH服务器
SSH (Secure Shell)协议
- 是一种安全通道协议
- 对通信数据进行了加密处理,用于远程管理
OpenSSH
- 服务名称: sshd
- 服务端主程序:/usr/sbin/sshd
- 服务端配置文件:letc/ssh/sshd_config
SSH远程管理
1.SSH (Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。
2.SsH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。因此sSH协议具有很好的安全性。
如图:
注:
OpenSSH是实现 sSH 协议的开源软件项目,适用于各种 UNIX、Linux操作系统。
Centos 7系统默认已安装openssh相关软件包,并已将 sshd 服务添加为开机自启动
执行"systemctl start sshd"命令即可启动sshd服务
sshd服务默认使用的是TcP的22端口
sshd服务的默认配置文件是/etc/ssh/ sshd config
如图:查看
注:sSsh config和sshd config都是ssh服务器的配置文件,二者区别在于前者是针对客户端的配置文件,后者则是针对服务端的配置文件。
如图
配置opensSH服务端
sshd_config配置文件的常用选项设置
vim /etc/ssh/sshd_config
Port 22 #监听端口为22
ListenAddress o.0.o.o #监听地址为任意网段,也可以指定OpensSH服务器的具体IP
LoginGraceTime 2m #登录验证时间为2分钟
PermitRootLogin no #禁止 root用户登录
MaxAuthTries 6 #最大重试次数为6
PermitEmptyPasswords no #禁止空密码用户登录
UseDNS no #禁用DNS 反向解析,以提高服务器的响应速度
注:这些都可以修改的
做个实验:
注:密码错误6次不能登录了
设置黑白名单
只允许zhangsan、lisi、wangwu用户登录,且其中wangwu用户仅能够从IP地址为61.23.24.25的主机远程登录AllowUsers zhangsan lisi wangwu@61.23.24.25 #禁止某些用户登录
用法于AllowUsers类似(注意不要同时使用)
DenyUsers zhangsan
如图
注:这个用户已经被拒绝了,我们在换个用户试试
注:这就设置黑名单方法
如何设置白名单
如图
注:这是我们从新打开一个虚拟机这台虚拟机ip地址是192.168.26.26
注:这样就可以登录了,这就是白名单,只能指定用户和指定的ip地址才能登录
SSHD服务支持两种验证方式
1.密码验证
- 对服务器中本地系统用户的登录名称、密码进行验证。简便,但可能会被暴力破解
2.密钥对验证
- 要求提供相匹配的密钥信息才能通过验证。通常先在客户端中创建一对密钥文件(公钥、私钥),然后将公钥文件放到服务器中的指定位置。远程登录时,系统将使用公钥、私钥进行加密/解密关联验证。能增强安全性,且可以免交互登录。
3.公钥和私钥的关系:
- 公钥和私钥是成对生成的,这两个密钥互不相同,可以互相加密和解密。
- 不能根据一个密钥来推算出另一个密钥。
- 公钥对外公开,私钥只有私钥的持有人才知道。
当密码验证、密钥对验证都启用时,服务器将优先使用密钥对验证。可根据实际情况设置验证方式。
vim letcl ssh/ sshd_config
PasswordAuthentication yes #启用密码验证
PubkeyAuthentication yes #启用密钥对验证
AuthorizedKeysFile .ssh/ authorized_keys #指定公钥库文件
使用ssH客户端程序
1.SSH远程登录
命令:SSH [选项] zhangsan@192.168.80.10
注:当用户第一次登录ssH服务器时,必须接受服务器发来的ECDS.A密钥(根据提示输入"yes")后才能继续验证。接收的密钥信息将保存到~/. ssh/known hosts文件中。密码验证成功以后,即可登录目标服务器的命令行环境中了。
常用选项
-p:指定非默认的端口号,缺省时默认使用22端口
ssh -p 2345 zhangsan@192.168.80.10
2.scp远程复制
下行复制
scp root@192.168.80.11:/etc/passwd /root/passwd10.txt #将远程主机中的/etc/passwd文件复制到本机
上行复制
scp -r letc/ ssh/ root@192.168.80.10: / opt #将本机的/etc/ ssh目录复制到远程主机
3.sftp安全FTP
由于使用了加密/解密技术,所以传输效率比普通的FTP要低,但安全性更高。操作语法sftp与ftp几乎一样。
sftp zhangsan@192.168.80.10
Connecting to 192.168.80.10...
tsengyia@172.16.16.22's password : #输入密码
sftp> ls
sftp>get 文件名 #下载文件到ftp目录
sftp>put 文件名 #上传文件到ftp目录
sftp> quit #退出
TCP Wrappers 访问控制
- TCP Wrappers 像一张防护网、一个过滤器,保护着TCP服务程序,它会监听TCP服务程序的端口,并执行一次安全检测过程;外来的连接请求必须先通过这层安全检测,获得许可后才能访问真正的服务程序
- 在 众多 Linux 发行版本中,TCP Wrappers 是默认提供的功能
- 如果没有安装,使用 rpm -q tcp_wrappers 安装
TCP Wrapper 保护机制的实现方式
以上是关于Linux的远程访问及控制的主要内容,如果未能解决你的问题,请参考以下文章