SSH远程管理/TCP Wrappers访问控制

文章目录

SSH远程管理/TCP Wrappers访问控制

SSH(Secure Shell)协议

  • 是一种安全通道协议
  • 对通信数据进行了加密处理,用于远程管理

OpenSSH

  • 服务名称:sshd
  • 服务端主程序:/usr/sbin/sshd
  • 服务端配置文件:/etc/ssh/sshd config

配置信息

/etc/ssh/ssh_config 针对客户端的配置文件

/etc/ssh/sshd_config 针对服务端的配置文件

服务监听选项

  • 端口号(22)、协议版本、监听IP地址

  • 禁用反向解析

    vi /etc/ssh/sshd config

    Port 22
    ListenAddress 172.16.16.22
    Protocol 2
    UseDNS no

用户登录控制

  • 禁用root用户、空密码用户

  • 限制登录验证时间、重试次数

  • AllowUsers、DenyUsers

    vi /etc/ssh/sshd

    configLoginGraceTime 2m
    PermitRootLogin no
    MaxAuthTries 6
    PermitEmptyPasswords no

    AllowUsers jerry admin@61.23.24.25

登录验证方式

  • 密码验证:核对用户名、密码是否匹配

  • 密钥对验证:核对客户的私钥、服务端公钥是否匹配

    vi /etc/ssh/sshd config

    PasswordAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys

常用目录

---ssh 远程安全登录

ssh user@host
端口选项:-p 22

---scp 远程安全复制

格式1:scp user@host:file1 file2
传给自己

格式2:scp file1 user@host:file2
传到对面

---sftp FTP上下载

sftp user@host
端口选项:-p

get 文件名		下载文件到家目录
put 文件名		上传文件到链接服务器的目录
quit			退出

配置密钥对验证

环境配置

centos 7 IP:20.0.0.51------服务端

centos 7 IP:20.0.0.52------客户端

ECDSA算法
1.在客户端创建密钥对
通过ssh-keygen工具为当前用户创建密钥对文件。可用的加密算法为RSA、ECDSA或DSA等(ssh-keygen命令的"-t"选项用于指定算法类型)。
useradd admin
echo "123123" | passwd --stdin admin
su - admin

ssh-keygen -t ecdsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/home/admin/.ssh/id_ecdsa): 	#指定私钥位置,直接回车使用默认位置
Created directory '/home/admin/.ssh'.			#生成的私钥、公钥文件默认存放在宿主目录中的隐藏目录.ssh/下
Enter passphrase (empty for no passphrase): 				#设置私钥的密码
Enter same passphrase again: 								#确认输入

ls -l .ssh/id_ecdsa*
#id_ecdsa是私钥文件,权限默认为600;id_ecdsa.pub是公钥文件,用来提供给 SSH 服务器

2.将公钥文件上传至服务器
scp ~/.ssh/id_ecdsa.pub root@20.0.0.51:/opt
或
#此方法可直接在服务器的/home/zhangsan/.ssh/目录中导入公钥文本
cd ~/.ssh/
ssh-copy-id -i id_ecdsa.pub zhangsan@20.0.0.51

3.在服务器中导入公钥文本
mkdir /home/zhangsan/.ssh/
cat /opt/id_ecdsa.pub >> /home/zhangsan/.ssh/authorized_keys

cat /home/zhangsan/.ssh/authorized_keys

4.在客户端使用密钥对验证
ssh zhangsan@20.0.0.51
lisi@20.0.0.51's password: 				#输入私钥的密码

5.在客户机设置ssh代理功能,实现免交互登录
ssh-agent bash
ssh-add
Enter passphrase for /home/admin/.ssh/id_ecdsa: 	#输入私钥的密码

ssh zhangsan@20.0.0.51
RSA算法
在centos7  IP:20.0.0.51操作------------单向
生成密钥
ssh-keygen -t rsa

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
三次回车

ssh-copy-id root@20.0.0.52
输入密码

测试
ssh 20.0.0.52

在centos7  IP:20.0.0.52操作------------再配置一次变成双向
生成密钥
ssh-keygen -t rsa

ssh-copy-id root@20.0.0.51
输入密码

测试
ssh 20.0.0.51
RSA算法实操
在centos7 IP:20.0.0.51操作
一、生成密钥

ssh-keygen -t rsa

二、将密钥给20.0.0.52

ssh-copy-id root@20.0.0.52

三、测试

ssh 20.0.0.52

在centos7 IP:20.0.0.52操作
四、生成密钥

ssh-keygen -t rsa

五、将密钥给20.0.0.51

ssh-copy-id root@20.0.0.51

六、测试

ssh 20.0.0.51

TCP Wrappers访问控制

保护机制的两种实现方式

1.直接使用 tcpd 程序对其他服务程序进行保护,需要运行 tcpd程序。

2.由其他网络服务程序调用 libwrap.so.链接库

不需要运行 tcpd 程序。此方式的应用更加广泛也更有效率。

TCP Wrappers 的访问策略

TCP Wrappers 机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行访问控制。

对应的两个策略文件为/etc/hosts.allow 和/etc/hosts.deny,分别用来设置允许和拒绝的策略。

其他服务程序进行保护,需要运行 tcpd程序。

2.由其他网络服务程序调用 libwrap.so.链接库

不需要运行 tcpd 程序。此方式的应用更加广泛也更有效率。

TCP Wrappers 的访问策略

TCP Wrappers 机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行访问控制。

对应的两个策略文件为/etc/hosts.allow 和/etc/hosts.deny,分别用来设置允许和拒绝的策略。

相关推荐
矛取矛求3 小时前
Linux如何更优质调节系统性能
linux
内核程序员kevin4 小时前
在Linux环境下使用Docker打包和发布.NET程序并配合MySQL部署
linux·mysql·docker·.net
kayotin4 小时前
Wordpress博客配置2024
linux·mysql·docker
Ztiddler5 小时前
【Linux Shell命令-不定期更新】
linux·运维·服务器·ssh
小小不董5 小时前
Oracle OCP认证考试考点详解082系列16
linux·运维·服务器·数据库·oracle·dba
a1denzzz6 小时前
Linux系统的网络设置
linux·服务器·网络
ac.char6 小时前
在CentOS下安装RabbitMQ
linux·centos·rabbitmq
m0_519523106 小时前
Linux——简单认识vim、gcc以及make/Makefile
linux·运维·vim
mit6.8247 小时前
[Docker#4] 镜像仓库 | 部分常用命令
linux·运维·docker·容器·架构
zyp2468107 小时前
Linux之DNS服务器
linux·运维·服务器