超级服务netd和xinetd

2024-05-15 17:08
文章标签 服务 超级 xinetd netd

本文主要是介绍超级服务netd和xinetd,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

      netd(因特网守护进程)及其替代品xinetd(扩展的因特网守护进程,xinetd.org)被称为超级服务器或服务分配器,这是因为它们在必要的时候会启动其他的守护进程,比如smbd(Samba)和vsftpd(FTP)。这些超级服务器监听网络连接。在建立连接时,它们根据该连接接入的端口找到某个服务器守护进程,将该守护进程的标准输入和标准输出文件描述符设置为套接字,然后启动该守护进程。
       跟同时运行多个守护进程监听端口的服务器相比,使用这些超级服务器可以带来以下两个好处。首先,超级服务器不需要守护进程在不用的时候还在运行。其次,它们允许开发者编写从标准输入读取数据、向标准输出写入数据的服务器软件,而所有的套接字通信交由超级服务器来处理。
      inetd超级服务器最初随4.3BSD发行,它并不是非常不安全。但是它通常会打开众多端口,运行很多服务器软件,从而增加了可利用软件暴露到因特网的可能性。它的继任者xinetd引入了访问控制机制和日志功能。这个守护进程可以让管理员来限制访问服务的时间以及入站连接的来源地和数量。如果带上libwrap编译的话,xinetd就能够利用TCP封装器(参见下一节的讨论)的功能。
       跟现在相比,以前CPU性能较差,RAM价格较高,这些超级服务器能够高效地利用内存和CPU。过去几年中,一些系统慢慢地不再使用这些超级服务器。现在一个系统能够非常轻易地空出几兆的内存和少量的CUP时间来运行一个监听某端口的守护进程:与不断地重启相比,让进程一直呆在内存中占用的资源更少。此外,开发者现在使用各种工具包能够更加轻易地处理套接字通信
守护程序分为2种处理模式:
      第一个是stand alone状态的,表示该程序始终监听,一直处于运行状态,例如httpd
      第二个是super daemon,它始终处于sleep状态,直到有人唤醒它,xinetd就是一个super daemon,但它的使命是将一个请求转给其他服务,也就是服务的管理者
     Apache可以使用两种方法来运行服务器:standalone(独立的)和inetd(由inetd运行的)。standalone参数表示WEB服务进程以一个单独的守候进程的方式在后台侦听是否有客户端的请求,如果有就生成一个子进程来为其服务。inetd参数表示WEB服务不是以一个单独的守候进程的形式支持。而是由Inetd这个超级服务器守候进程进行代劳,当它收到一个客户端的WEB服务请求的时候,再启动一个WEB服务进程为其服务。从功能的角度看,这两种方法几乎是相同的。但它们之间实际有很大区别,区别在于服务器的性能。一个由inted运行的服务器进程在它结束对请求服务的同时立刻退出。而在standalone模式下,子WWW服务器进程在退出之前要挂起一段时间,这就给它们提供了机会,可以重新用来服务新的请求。
      在standalone模式下,不存在对每个请求启动新进程的开销,所以它的效率更高;而inetd模式被认为比standalone模式更具安全性。
standalone模式:
      此种模式下,WWW服务器侦听特定端口的连接请求。当客户机发出到特定端口地址的连接请求时,主服务器进程启动子WWW服务进程来服务该请求。另外还需要告诉主服务器进程侦听的特定端口地址,使用命令:
        Port [number] (缺省值为80)
inetd模式
     inetd是侦听有小于1024的端口连接请求的Internet守护进程(一个服务器进程)。与前面的方法不同,当客户系统发出到WWW服务器的连接请求时,inetd启动一个WWW服务器进程,由此进程服务此请求,完成服务后即退出。如果选择通过inetd服务器来运行Apache,需要编辑/etc/inetd.conf文件为Apache添加一条新的记录:
     修改了/etc/inetd.conf文件后,就需要修改/etc/services中添加一行:
       httpd 80/tcp httpd
    做完以上修改后,需要重新启动inetd进程。首先,使用以下命令取得inetd的进程ID:
       ps auxw |grep inetd 
   然后执行命令:kill -HUP <inetd的进程ID>
   在RedHat Linux中,默认是采用inetd服务器来运行Apache,所以只要你在安装时选择了httpd,以上工作在安装时就已经代你完成了
 


 


 

这篇关于超级服务netd和xinetd的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/992418

相关文章

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

SpringCloud整合MQ实现消息总线服务方式

《SpringCloud整合MQ实现消息总线服务方式》:本文主要介绍SpringCloud整合MQ实现消息总线服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、背景介绍二、方案实践三、升级版总结一、背景介绍每当修改配置文件内容,如果需要客户端也同步更新,

linux服务之NIS账户管理服务方式

《linux服务之NIS账户管理服务方式》:本文主要介绍linux服务之NIS账户管理服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、所需要的软件二、服务器配置1、安装 NIS 服务2、设定 NIS 的域名 (NIS domain name)3、修改主

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

springboot项目如何开启https服务

《springboot项目如何开启https服务》:本文主要介绍springboot项目如何开启https服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录springboot项目开启https服务1. 生成SSL证书密钥库使用keytool生成自签名证书将

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务