Linux hosts.allow与hosts.deny文件设置

2023-05-16

 

redhat as4常用应用之hosts.allow和hosts.deny

一、概述

这两个文件是tcpd服务器的配置文件,tcpd服务器可以控制外部IP对本机服务的访问。这两个配置文件的格式如下:

#服务进程名:主机列表:当规则匹配时可选的命令操作
server_name:hosts-list[:command]
/etc/hosts.allow控制可以访问本机的IP地址,/etc/hosts.deny控制禁止访问本机的IP。如果两个文件的配置有冲突,以/etc/hosts.deny为准。

/etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。
比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放管理员可能使用到的IP段。

二、配置

1、修改/etc/hosts.allow文件
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the ‘/usr/sbin/tcpd’ server.
#
sshd:210.13.218.*:allow
sshd:222.77.15.*:allow

all:218.24.129.110 #表示接受110这个ip的所有请求!

in.telnetd:140.116.44.0/255.255.255.0
in.telnetd:140.116.79.0/255.255.255.0
in.telnetd:140.116.141.99
in.telnetd:LOCAL
smbd:192.168.0.0/255.255.255.0 #允许192.168.0.网段的IP访问smbd服务

#sendmail:192.168.1.0/255.255.255.0
#pop3d:192.168.1.0/255.255.255.0
#swat:192.168.1.0/255.255.255.0
pptpd:all EXCEPT 192.168.0.0/255.255.255.0
httpd:all
vsftpd:all

以上写法表示允许210和222两个ip段连接sshd服务(这必然需要hosts.deny这个文件配合使用),当然:allow完全可以省略的。

ALL要害字匹配所有情况,EXCEPT匹配除了某些项之外的情况,PARANOID匹配你想控制的IP地址和它的域名不匹配时(域名伪装)的情况。

2、修改/etc/hosts.deny文件

#
# hosts.deny This file describes the names of the hosts which are
# *not* allowed to use the local INET services, as decided
# by the ‘/usr/sbin/tcpd’ server.
#
# The portmap line is redundant, but it is left to remind you that
# the new secure portmap uses hosts.deny and hosts.allow. In particular
# you should know that NFS uses portmap!
sshd:all:deny

in.telnet:ALL

ALL:ALL EXCEPT 192.168.0.1/255.255.255.0,192.168.1.21,\
202.10.5.0/255.255.255.0

注意看:sshd:all:deny表示拒绝了所有sshd远程连接。:deny可以省略。

3、启动服务
注意修改完后:
#service xinetd restart
才能让刚才的更改生效。

=======================================================

hosts.allow与hosts.deny
两个文件均在/etc/目录下
优先级为先检查hosts.deny,再检查hosts.allow,
后者设定可越过前者限制,

例如:
1.限制所有的ssh,
除非从218.64.87.0——127上来。
hosts.deny:
in.sshd:ALL
hosts.allow:
in.sshd:218.64.87.0/255.255.255.128

2.封掉218.64.87.0——127的telnet
hosts.deny
in.sshd:218.64.87.0/255.255.255.128

3.限制所有人的TCP连接,除非从218.64.87.0——127访问
hosts.deny
ALL:ALL
hosts.allow
ALL:218.64.87.0/255.255.255.128

4.限制218.64.87.0——127对所有服务的访问
hosts.deny
ALL:218.64.87.0/255.255.255.128

其中冒号前面是TCP daemon的服务进程名称,通常系统
进程在/etc/inetd.conf中指定,比如in.ftpd,in.telnetd,in.sshd

其中IP地址范围的写法有若干中,主要的三种是:
1.网络地址——子网掩码方式:
218.64.87.0/255.255.255.0
2.网络地址方式(我自己这样叫,呵呵)
218.64.(即以218.64打头的IP地址)
3.缩略子网掩码方式,既数一数二进制子网掩码前面有多少个“1”比如:
218.64.87.0/255.255.255.0《====》218.64.87.0/24

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux hosts.allow与hosts.deny文件设置 的相关文章

  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 如何使用 JSch 将多行命令输出存储到变量中

    所以 我有一段很好的代码 我很难理解 它允许我向我的服务器发送命令 并获得一行响应 该代码有效 但我想从服务器返回多行 主要类是 JSch jSch new JSch MyUserInfo ui new MyUserInfo String
  • 在 C 中使用单个消息队列是否可以实现双向通信

    我希望服务器向客户端发送一些消息 并让客户端确认它 我被分配了这个任务 我可以在 C linux 中使用单个消息队列来完成它还是我需要创建两个 谢谢 是的 可以使用 sysV 消息队列来做到这一点 从您之前的问题来看 您正在使用该队列 您可
  • Google BQ:运行参数化查询,其中参数变量是 BQ 表目标

    我正在尝试从 Linux 命令行为 BQ 表目标运行 SQL 此 SQL 脚本将用于多个日期 客户端和 BQ 表目标 因此这需要在我的 BQ API 命令行调用中使用参数 标志 parameter 现在 我已经点击此链接来了解参数化查询 h
  • 如何为 Linux 桌面条目文件指定带有相对路径的图标?

    对于我的一个 Linux 应用程序 我有应用程序二进制文件 一个 launcher sh 脚本 针对 LD LIBRARY PATH 和一个 desktop 文件 所有这些都位于同一文件夹中 我想使用图标的相对路径而不是绝对路径 我试过了
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • tcpdump 是否受 iptables 过滤影响?

    如果我的开发机器有iptables规则到FORWARD一些数据包 这些数据包是否被 tcpdump 捕获 我有这个问题 因为我知道存在其他链称为INPUT如果数据包路由到 它会过滤发往应用程序的数据包FORWARD链 它会到达吗tcpdum
  • 执行“minikube start”命令时出现问题

    malik malik minikube start minikube v1 12 0 on Ubuntu 18 04 Using the docker driver based on existing profile Starting c
  • GMail 421 4.7.0 稍后重试,关闭连接

    我试图找出为什么它无法使用 GMail 从我的服务器发送邮件 为此 我使用 SwiftMailer 但我可以将问题包含在以下独立代码中
  • 使用非规范地址检索内存数据会导致 SIGSEGV 而不是 SIGBUS

    我无法使用以下汇编代码产生 总线错误 这里我使用的内存地址不是合法的 规范地址 那么 我怎样才能触发该错误呢 我在带有 NASM 2 14 02 的 Ubuntu 20 04 LTS 下运行这段代码 但它会导致负载出现 SIGSEGV 分段
  • 如何获取 (Linux) 机器的 IP 地址?

    这个问题和之前问的几乎一样如何获取本地计算机的IP地址 https stackoverflow com questions 122208 get the ip address of local computer 问题 但是我需要找到一个的I
  • 使用 shell 脚本将行附加到 /etc/hosts 文件

    我有一个新的 Ubuntu 12 04 VPS 我正在尝试编写一个安装脚本来完成整个 LAMP 安装 我遇到问题的地方是在 etc hosts文件 我当前的主机文件如下所示 127 0 0 1 localhost Venus The fol
  • 与 pthread 的进程间互斥

    我想使用一个互斥体 它将用于同步对两个不同进程共享的内存中驻留的某些变量的访问 我怎样才能做到这一点 执行该操作的代码示例将非常感激 以下示例演示了 Pthread 进程间互斥体的创建 使用和销毁 将示例推广到多个进程作为读者的练习 inc
  • 静态方法的 Java 内存模型

    我来自操作系统和 C 语言背景 在代码编译时 世界很简单 需要处理和理解堆栈 堆文本部分等 当我开始学习 Java 时 我确实了解 JVM 和垃圾收集器 我对静态方法感到很有趣 根据我的理解 类的所有实例都会在堆中创建 然后被清理 但是 对
  • 配置tomat的server.xml文件并自动生成mod_jk.conf

    我在用apache 2 2 15 and tomcat6 6 0 24 on CentOS 6 4并希望使用 tomcat 服务器的功能 通过添加以下内容自动生成 mod jk conf 文件
  • Intel 上的 gcc 中的 _mm_pause 用法

    我参考过这个网页 https software intel com en us articles benefitting power and performance sleep loops https software intel com
  • linux下如何从文本文件中获取值

    我有一些文本格式的文件 xxx conf 我在这个文件中有一些文本 disablelog 1 当我使用 grep r disablelog oscam conf 输出是 disablelog 1 但我只需要值1 请问你有什么想法吗 一种方法
  • Linux/POSIX:为什么 fork() 不分叉*所有*线程

    众所周知 POSIX下创建新进程的默认方式是使用fork 在 Linux 下 这在内部映射到clone 我想知道的是 众所周知 当一个人打电话时fork 子进程是用单个线程创建的 调用的线程fork cf https linux die n
  • 这种文件锁定方法可以接受吗?

    我们有 10 个 Linux 机器 每周必须运行 100 个不同的任务 这些计算机主要在我们晚上在家时执行这些任务 我的一位同事正在开发一个项目 通过使用 Python 自动启动任务来优化运行时间 他的程序将读取任务列表 抓取一个打开的任务
  • 使用os.execlp时,为什么`python`需要`python`作为argv[0]

    代码是这样的 os execlp python python child py other args this works os execlp python child py other args this doesn t work 我读过

随机推荐

  • windows11终端设置字体

    在进行NeoVim编辑器配置时 xff0c 使用lualine和nvim tree的图标无法显示 xff0c 发现原因是因为没有使用Nerd Font字体 xff0c 安装完成后 xff0c 却一直没办法应用在powershell中 找到一
  • ideal 左侧project不显示external libraries

    今天想调试代码时 突然发现 ideal 左侧project不显示external libraries 花了点时间才重新搞定记录一下解决 电脑系统 xff1a MacOS 找到 Library Preferences IntelliJIdea
  • 轻量级线程组件-Quasar

    官网 xff1a http www paralleluniverse co 占用JVM内存小
  • java 对象内存大小统计工具

    1 用于统计Java对象内存大小的jar包 xff1a jol lt Java内测布局查看包 gt lt dependency gt lt groupId gt org openjdk jol lt groupId gt lt artifa
  • python编码处理:unicode字节串转成中文 各种字符串举例说明

    编码问题一直是很头痛的问题 xff1a 当字符串是 xff1a 39 u4e2d u56fd 39 gt gt gt s 61 39 u4e2d u56fd 39 39 u6e05 u534e u5927 u5b66 39 gt gt gt
  • Sql 中 不等于'<>'与 NULL

    在写SQL 条件语句是经常用到 不等于 lt gt 的筛选条件 xff0c 此时要注意此条件会将字段为null的数据也当做满足不等于的条件而将数据筛选掉 例 xff1a 表A A1 B110213NULL 用 select from A w
  • FilterConfig.RegisterGlobalFilters 全局过滤器的用法

    以前不是很清楚 xff0c 记录学习下 xff1a Asp Net MVC4中的全局过滤器 xff0c 可以对整个项目进行全局监控 新建一个MVC4项目 xff0c 可以在global asax文件中看到如下代码 xff1a FilterC
  • js 及jq 点击别的标签触发 a 标签点击事件

    今天写代码时 xff0c 遇到要通过点击别的按钮触发 a 标签的点击事件问题 xff0c 花了点时间才解决 xff0c 记录一下 用js 实现 xff1a 只需在触发事件中直接加入下列代码即可 xff0c 其中ID即为a 标签的ID doc
  • maven编译报错 -source 1.5 中不支持 lambda 表达式

    在用maven编译项目是由于项目中用了jdk 1 8 编译是报错 source 1 5 中不支持 lambda 表达式 xff0c Google找到这篇解决方案 xff0c 记录一下 xff1a 编译时报如下错误 xff1a span cl
  • java jetty 启动设置根路径

    在java学习过程中 xff0c 使用jetty来启动web应用来测试程序 xff0c 默认启动时的访问路径为 xff1a http localhost 8080 项目名 文件路径 xff0c 现需要将访问路径设置为 xff1a http
  • maven reimport 失效

    在用maven构建项目时发现 xff0c 添加新的 dependency 时maven reimport 总是不能将包引入 xff0c 编译时发现报 xff1a cannot access in offline mode 的错 xff0c
  • 业界难题-“跨库分页”的四种方案

    转载来源 xff1a 业界难题 跨库分页 的四种方案 一 需求缘起 分页需求 互联网很多业务都有分页拉取数据 的需求 xff0c 例如 xff1a xff08 1 xff09 微信消息过多时 xff0c 拉取第 N页消息 xff08 2 x
  • repeater合并单元格

    repeater中合并单元格 xff1a 在repeater bind 后直接加入以下代码 xff1a for int i 61 repeater1 Items Count 1 i gt 0 i HtmlTableCell rep prev
  • 在centOS6.8下更新安装gcc4.7.4

    因为科研需要 xff0c 在centOS6 8系统下配置matlab与C混合编程的环境 xff08 用C来调用MATLAB引擎 xff09 MATLAB安装的是R2015b的版本 xff08 之前安装R2014a版本 xff0c 没办法启动
  • C++很难吗?到底有多难?

    C 43 43 他爹Bjarne Stroustrup都曾开玩笑说自己已经搞不懂C 43 43 了 xff0c 他也曾多次表达过C 43 43 似乎已经有点太庞大了 其实也不是说C 43 43 语法多么复杂 xff0c 而是C 43 43
  • 十、Notepad++正则表达式使用

    推荐个正则表达式在线测试的工具http ccmpp com Regex Notepad 43 43 正则表达式使用 2011 01 06 10 01 35 分类 xff1a 文档 标签 xff1a 正则表达式 替换 notepad 43 4
  • ffmpeg分析 之 如何解析mpegts流

    转 xff1a http blog chinaunix net uid 20364597 id 3530284 html ffmpeg分析 之 如何解析mpegts流 2013 03 19 11 02 40 分类 xff1a LINUX 数
  • Spring简介

    一 Spring简介 1 Spring介绍 61 61 简化开发 61 61 xff0c 降低企业级开发的复杂性 61 61 框架整合 61 61 xff0c 高效整合其他技术 xff0c 提高企业级应用开发与运行效率 1 2 spring
  • SVN服务器彻底删除错误提交的版本

    尝试通过以下操作可以删除SVN服务器上错误提交的版本 xff0c 即本次提交 1 首先找到本次提交后生成的版本号 xff0c 例如为 xff1a 16 2 登录到SVN服务器上 xff0c 进入到项目的SVN目录 xff0c 或者找到本地的
  • Linux hosts.allow与hosts.deny文件设置

    redhat as4常用应用之hosts allow和hosts deny 一 概述 这两个文件是tcpd服务器的配置文件 xff0c tcpd服务器可以控制外部IP对本机服务的访问 这两个配置文件的格式如下 xff1a 服务进程名 主机列