centos7之如何进行ip和端口限制

 更新时间:2023年06月03日 09:01:22   作者:kingandwang  
这篇文章主要介绍了centos7之如何进行ip和端口限制问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

centos7进行ip和端口限制

1、限制指定IP访问本机

编辑hosts.allow和hosts.deny两个文件,保存即生效。

1.1、编辑etc/hosts.allow文件,在末尾添加可访问的ip(多个时用逗号隔开)

  • 编辑 vim etc/hosts.allow
  • 只允许192.22.202.1访问 sshd:192.22.202.1:allow
  • 允许192.22.202.1和110.101.0全网段都可访问 sshd:110.101.0.,192.22.202.1:allow
  • 保存 :wq

1.2、设置拒绝全部连接(不会拒绝etc/hosts.allow中的ip)

  • 编辑 vim /etc/hosts.deny
  • 拒绝全部连接 sshd:ALL
  • 保存 :wq

2、设置22端口访问限制

在sshd_config文件设置指定账号身份远程访问,设置完毕要重启sshd。

  • 编辑 vim /etc/ssh/sshd_config
  • 任何IP只能用root身份登录 AllowUsers root
  • IP为192.168.1.9只能用admin身份登录 AllowUsers admin@192.168.1.9
  • IP为192.168.1.9只能用admin和root身份登录 AllowUsers admin root@192.168.1.9
  • IP为192.168.1全网段只能用admin身份登录 AllowUsers admin@192.168.1.0/24
  • IP为192.168.1.9和192.168.1.18只能用admin身份登录 AllowUsers admin@192.168.1.9 admin@192.168.1.18
  • IP为192.168.1.9可以用任何身份登录 AllowUsers *@192.168.1.9
  • 保存 :wq
  • 重启sshd systemctl restart sshd 或 service sshd restart

不同版本的Centos限制特定IP访问特定端口的命令

用于记录Centos6,7,8三个版本限制特定IP才允许访问ssh服务22端口的配置过程。

首先是查看Centos版本

cat /etc/redhat-release

后续命令根据以上命令的版本确定用哪个。

CentOS6

以下命令注意不要直接逐行复制运行,因为第一行命令就是限制所有IP对22端口的访问,必须写到脚本里面批量执行。

centos6的话使用iptables限制特定IP,新建一个.sh文件如ip.sh,输入以下内容

iptables -I INPUT -p tcp --dport 22 -j DROP
iptables -I INPUT -s 192.168.0.22 -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -s 192.168.0.23 -p tcp --dport 22 -j ACCEPT
service iptables save 

然后chmod +x  ip.sh 给文件执行权限,随后运行该脚本文件./ip.sh就可以了。

以上命令第一行是限制所有的IP对目标机器的22端口进行访问,第二行和第三行是允许192.168.0.22和23可以访问该机器的22端口。

如果不放心,可以service iptables restart重启一下iptables服务。

CentOS7,8

yum update dbus firewalld 
systemctl restart dbus
systemctl restart firewalld
sudo firewall-cmd  --permanent --add-source=192.168.0.22
sudo firewall-cmd  --permanent --add-source=192.168.0.23
#sudo firewall-cmd  --permanent --add-port=80/tcp  #可选的开放特定端口的服务
sudo firewall-cmd --permanent --remove-service=ssh #关闭对所有人开放的22端口服务
systemctl restart firewalld    

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • ubuntu系统修改时区和时间的方法

    ubuntu系统修改时区和时间的方法

    今天小编就为大家分享一篇关于ubuntu系统修改时区和时间的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 解决linux下大量TIME WAIT的方法详解

    解决linux下大量TIME WAIT的方法详解

    本篇文章是对linux下大量TIME WAIT的解决方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • CentOS查看压缩包文件列表实现方式

    CentOS查看压缩包文件列表实现方式

    这篇文章主要介绍了CentOS查看压缩包文件列表实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2026-03-03
  • CentOS7下实现终端输入中文设置详解

    CentOS7下实现终端输入中文设置详解

    这篇文章主要给大家介绍了关于CentOS7下实现终端输入中文设置的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用CentOS7系统具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Linux命令详解之less命令

    Linux命令详解之less命令

    Linux下还有一个与more命令非常类似的命令--less命令,相比于more命令,less命令更加灵活强大一些,今天就给大家介绍下Linux下的less命令。
    2016-10-10
  • Linux常见问题解决方案汇总

    Linux常见问题解决方案汇总

    今天小编就为大家分享一篇关于Linux常见问题解决方案汇总,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Linux查看系统版本最实用的三种方法

    Linux查看系统版本最实用的三种方法

    在Linux系统管理和日常运维中,准确获取操作系统的版本信息是执行软件安装、脚本兼容性判断、系统升级以及问题排查等任务的基石,本文将深入探讨并详细对比在Linux环境下查看系统版本的几种主流方法,需要的朋友可以参考下
    2025-10-10
  • Ubuntu中实现定时唤醒与自动休眠功能

    Ubuntu中实现定时唤醒与自动休眠功能

    在自动化脚本执行的时间段内唤醒系统使其正常运行,其余时间则让其进入休眠状态,以此来降低能耗,为达成这一目标,我编写了一个简易的脚本,并通过 crontab 配置了自动化任务,接下来,我会详尽地讲解整个配置过程,需要的朋友可以参考下
    2024-09-09
  • ubuntu开机后使用使用终端运行应用程序的设置方法

    ubuntu开机后使用使用终端运行应用程序的设置方法

    这篇文章主要给大家介绍了关于ubuntu开机后使用使用终端运行应用程序的设置方法,文中通过图文介绍的非常详细,对大家学习或者使用Mubuntu具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • apache启动报错:the requested operation has failed解决办法

    apache启动报错:the requested operation has failed解决办法

    apache启动报错:the requested operation has failed解决办法
    2009-11-11

最新评论