如何关闭IPC?

如何关闭IPC?,第1张

删除ipc$空连接

在运行内输入regedit,在注册表中找到 HKEY-LOCAL_MACHINESYSTEMCurrentControSetControlLSA 项里数值名称RestrictAnonymous的数值数据由0改为1。

删除共享(每次输入一个)

net share admin$ /delete

net share c$ /delete

net share d$ /delete(如果有e,f,……可以继续删除)

下面说一下常见的漏洞的端口如何关闭:

1.关闭139端口:右击网上邻居--属性--右击本地连接--属性--internet协议/(TCP/IP)--属性--高级--WINS--禁用TCP/IP上的NETBIOS--确定。

2.右击-网上邻居-属性/本地连接-属性,在microsoft网络客户端前的小勾去掉。接着也把microsoft网络的文件和打印机共享的小勾也去掉。

3.关闭445端口:打开注册表编辑器,在[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]下增加一个dword键项,命名为"SmbDeviceEnabled"(不包含引号),将值设为0。

4。关闭3389端口:右击我的电脑,点属性--远程,把允许从这台计算机发送远程协助邀请前的勾去掉。

5。关闭135端口:

如何关闭135端口

Windows XP系统

运行dcomcnfg,展开“组件服务”→“计算机”,在“我的电脑”上点右键选“属性”,切换到“默认属性”,取消“启用分布式COM”;然后切换到“默认协议”,删除“面向连接的TCP/IP”。

以上选项有对应的注册表键值,因此也可通过注册表来修改:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\EnableDCOM的值改为“N”

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\DCOM Protocols 中删除“ncacn_ip_tcp”

此外,还需要停用“Distributed Transaction Coordinator”服务。

重启之后, 135端口就没有了。

关闭不必须用的服务:

在控制面板中,找到管理工具,在其下面打开服务。将下列的项目开闭:

Server(先禁用,然后再停止掉。)

Telnet(先禁用,然后再停止掉。)

为了您的系统安全,最好将以上两个危险服务给关闭掉。

把上面那二个服务关闭了,你的问题应该能够解决

进程间通信就是不同进程间进行数据交换的过程。因为进程间相互独立,每个进程拥有独立的地址空间、数据处理逻辑, *** 作系统保证了进程独立运行的地址安全;但在复杂系统,单进程往往不能胜任业务需求,需要多进程的加入,多进程协作完成工作,这就离不开进程间通信这个话题了。

进程间通信有很多种方式,列举如下:

而进程间通信按进程分布情况可以 单机内的进程间通信 多机间远程调用的进程间通信 ,后者无需多讲,在分布式等大型系统中是非常常见的,而进行通信的方式主要是上述方法中的网络IPC,有非常多的资料介绍相关内容,不在本文的讨论范围之内。

本文主要讨论在 单机内进程间通信 中,Unix域套接字和TCP网络套接字的对比,后者属于网络IPC。

套接字是一种应用程序接口,包括了一个用C语言写成的应用程序开发库,主要用于实现进程间通讯,在计算机网络通讯方面被广泛使用。下面要讨论的网络套接字和Unix套接字均属于套接字。

在定义套接字类型的时候,网络套接字通常使用 AF_INET 进行定义;Unix域套接字则使用 AF_UNIX 进行定义。

套接字类型有三种,分别是流式套接字、数据报套接字和原始套接字。

流式套接字(SOCK_STREAM):流式套接字用于提供面向连接、可靠的数据传输服务。该服务将保证数据能够实现无差错、无重复发送,并按顺序接收。流式套接字之所以能够实现可靠的数据服务,原因在于其使用了传输控制协议,即TCP(The Transmission Control Protocol)协议。

数据报套接字(SOCK_DGRAM):数据报套接字提供了一种无连接的服务。该服务并不能保证数据传输的可靠性,数据有可能在传输过程中丢失或出现数据重复,且无法保证顺序地接收到数据。数据报套接字使用UDP(User Datagram Protocol)协议进行数据的传输。由于数据报套接字不能保证数据传输的可靠性,对于有可能出现的数据丢失情况,需要在程序中做相应的处理。

原始套接字(SOCK_RAW):原始套接字(SOCKET_RAW)允许对较低层次的协议直接访问,比如IP、 ICMP协议,它常用于检验新的协议实现,或者访问现有服务中配置的新设备,因为RAW SOCKET可以自如地控制Windows下的多种协议,能够对网络底层的传输机制进行控制,所以可以应用原始套接字来 *** 纵网络层和传输层应用。比如,我们可以通过RAW SOCKET来接收发向本机的ICMP、IGMP协议包,或者接收TCP/IP栈不能够处理的IP包,也可以用来发送一些自定包头或自定协议的IP包。网络监听技术很大程度上依赖于SOCKET_RAW。

原始套接字与标准套接字(标准套接字指的是前面介绍的流式套接字和数据报套接字)的区别在于:原始套接字可以读写内核没有处理的IP数据包,而流式套接字只能读取TCP协议的数据,数据报套接字只能读取UDP协议的数据。因此,如果要访问其他协议发送数据必须使用原始套接字。

网络通信中通常都是使用网络套接字进行通信,可用于单机进程间通信和多机进程间通信,网络套接字由五元组来标识:(源地址、源端口、目标地址、目标端口、通信协议),因而网络套接字在网络协议栈中属于传输层之上的内容。所以,在使用网络套接字通信的时候,传递内容需要经过完整的网络协议栈四层模型中的(传输层-网络层-网络访问层(数据链路层-物理层))。

回想在协议栈当中,对于报文的处理有哪些 *** 作。

Unix域套接字只能用于在同一个计算机的进程间进行通信。虽然网络套接字也可以用于单机进程间的通信,但是使用Unix域套接字效率会更高,因为Unix域套接字仅仅进行数据复制,不会执行在网络协议栈中需要处理的添加、删除报文头、计算校验和、计算报文顺序等复杂 *** 作,因而在单机的进程间通信中,更加推荐使用Unix域套接字。

关于套接字的使用,资料很多,不再介绍。

这里拿网络套接字和Unix域套接字出来比较的原因是,很多人在进行单机多进程开发时没有注意到Unix域套接字的存在,而是使用了成本较高的网络套接字进行开发。Unix套接字在通信开销方面是很小的,因而在单机通信中更加推荐使用Unix域套接字。

原文链接


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8423111.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-16
下一篇 2023-04-16

发表评论

登录后才能评论

评论列表(0条)

保存