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    

总结

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

相关文章

  • 在linux下升级软件包版本等方法详解

    在linux下升级软件包版本等方法详解

    今天小编就为大家分享一篇在linux下升级软件包版本等方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Linux中利用sudo进行赋权的方法详解

    Linux中利用sudo进行赋权的方法详解

    sudo的目的:为非根用户授予根用户的权限,下面这篇文章主要给大家介绍了关于Linux中利用sudo进行赋权的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-01-01
  • Apache配置多个站点的方法

    Apache配置多个站点的方法

    Apache配置多个站点的方法,需要的朋友可以参考下。
    2010-04-04
  • shell 命令行中操作HBase数据库实例详解

    shell 命令行中操作HBase数据库实例详解

    这篇文章主要介绍了 shell 命令行中操作HBase数据库实例详解的相关资料,需要的朋友可以参考下
    2016-11-11
  • Apache No space left on device的解决办法

    Apache No space left on device的解决办法

    [Fri Aug 15 10:54:31 2008] [emerg] (28)No space left on device: Couldn't create accept lockdf一下发现不是磁盘空间的问题。Google了一下就找到了解决方案,原来是系统的信号量(?)不够用了。
    2008-08-08
  • 开发环境Ubuntu16安装以后的初始化设置

    开发环境Ubuntu16安装以后的初始化设置

    今天小编就为大家分享一篇关于开发环境ubuntu16安装以后的初始化设置,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Linux系统下使用U盘的方法

    Linux系统下使用U盘的方法

    在linux系统之中, 一切设备皆文件, 所以我们的U盘也是一个文件.磁盘设备被抽象成sda文件, U盘设备被抽象成sdb文件。这篇文章主要介绍了Linux系统下使用U盘的方法,需要的朋友可以参考下
    2016-10-10
  • Linux版本选择攻略:一步到位

    Linux版本选择攻略:一步到位

    Linux版本选择困扰你吗?不知道哪个版本最适合你的需求?别担心,我们的《Linux版本选择攻略:一步到位》将为你解答所有疑惑,
    2024-01-01
  • Apache中伪静态Rewrite的使用方法和URL重写规则表达式讲解

    Apache中伪静态Rewrite的使用方法和URL重写规则表达式讲解

    apache中的mod_rewrite模块提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求,主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式,允许通过它来改变Apache Web服务器的配置。
    2022-11-11
  • Linux下安装IPython配置python开发环境教程

    Linux下安装IPython配置python开发环境教程

    这篇文章主要为大家详细介绍了Linux下安装IPython配置python开发环境教程,需要的朋友可以参考下
    2016-05-05

最新评论