svchost.exe

Posted fpcbk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了svchost.exe相关的知识,希望对你有一定的参考价值。

 

Win10开启FTP与配置(完整无错版)

文章目录

#1.控制面板>程序>启用或关闭Windows功能>…
(控制面板可在 桌面右键>个性化>主题>桌面图标设置>勾选控制面板>确定)

技术图片

 

 

#2.小娜搜索IIS打开IIS

技术图片

 

 

#3.右击网站添加FTP站点

技术图片

 

 

#4.输入站点名称和作为FTP的目录

技术图片

 

 


#5.IP地址填FTP本机IP,选择无SSL,根据需要选择身份验证,授权与权限

技术图片技术图片

 

 

 

#6.控制面板>系统和安全>防火墙>允许应用或功能通过Window防火墙

技术图片

 

 

#7.点击更改设置,勾选FTP服务器&专用&公用.点击允许其它应用,选择C:WindowsSystem32svchost.exe然后添加,最后确定。

技术图片

技术图片

 

 #8.资源处理器访问ftp:// IP 试试吧!








 我们可以通过不同的方式远程访问我们的重要文件。访问远程文件的最古老,最可靠的协议之一是FTP协议。通过FTP服务器,可以轻松地从计算机以及本地区域内的智能手机或其他设备访问远程文件,如果配置正确,也可以通过Internet访问远程文件。虽然从android设备在本地网络上托管FTP服务器以实现无缝文件传输是一块馅饼,但在Windows计算机上托管FTP服务器对于每个人来说可能并不那么容易。

 
如果配置正确,只要您有互联网连接,您就可以从办公室,咖啡店或其他任何地方访问Windows计算机上的文件。如果您对通过互联网访问计算机上的个人文件感到愤世嫉俗,您甚至可以限制FTP服务器只能在本地网络上访问计算机上的文件,也许只能在家庭Wi-Fi网络上访问。但您的第一个任务是在Windows计算机上设置FTP服务器。
 
让我们开始介绍如何在Win10计算机上设置FTP服务器。在Windows 7或其他Windows版本上,该过程也不会有太大差异。
 
Win10上本地设置FTP服务器
步骤1:在计算机上打开“控制面板”,然后单击“程序和功能”。

技术图片

步骤2:在“程序和功能”窗口中,单击“控制面板”窗口左侧的“打开或关闭Windows功能”。

技术图片

第3步:现在等待一段时间并向下滚动以找出“Internet信息服务”。 只需展开它,打开“FTP服务器”,“Web管理工具”和“万维网服务”下的所有内容,与下面的屏幕截图相同。 完成所有服务后,单击“确定”。

技术图片

第4步:应用更改需要一些时间,完成后,单击“立即重新启动”以重新启动计算机并应用所做的更改。

技术图片

步骤5:重新启动计算机后,再次打开“控制面板”,然后单击“管理工具”将其打开。

技术图片

步骤6:在“管理工具”窗口中,双击“Internet信息服务(IIS)管理器”将其打开。

技术图片

步骤7:在IIS管理器窗口的左侧,展开窗口左侧的计算机名称,除非您找到“站点”。 只需右键单击“站点”,然后单击“添加FTP站点...”。

技术图片

第8步:这里给FTP站点命名。 我将‘sampleftp‘赋予FTP站点名称。 现在单击“...”按钮以找到要通过FTP服务器访问的文件夹或驱动程序。 我为本教程选择了“C:FTP_Path”。 完成所有操作后,单击“下一步”。

技术图片

步骤9:在下一个窗口中,单击与“IP Address:”对应的下拉菜单,然后在本地网络上选择计算机的IP地址。
 
将端口号保留为“21”,默认情况下是这样。
 
步骤10:选择“No SSL”并启用“自动启动FTP站点”,然后单击“下一步”。

技术图片

*由于这是一个教程,我不允许使用SSL。 但是,如果您想通过FTP服务器访问敏感数据,我建议您使用SSL。
 
步骤11:现在选择“基本”的身份验证方法,并向“所有用户”提供“授权”。 用户必须输入您的Windows用户名和密码才能使用此身份验证方法访问FTP服务器上的文件。
 
现在,根据您要如何设置FTP服务器,将权限设置为“读取”和“写入”或仅设置为“读取”。 之后,单击“完成”以完成站点设置并在Windows计算机上启动FTP服务器。

技术图片

配置防火墙
您的FTP服务器已准备就绪并且正在运行 但是,您需要配置Windows防火墙以允许与您的计算机进行FTP通信的事务处理。
 
步骤12:打开“控制面板”并在windows 10上单击“Windows Defender Firewall”或在Windows 7上单击“Windows防火墙”。
 
步骤13:单击窗口左侧的“允许通过Windows Defender防火墙的应用程序或功能”。

技术图片


步骤14:在新窗口中,单击“更改设置”并标记“FTP服务器”的“公共”和“私人”对应的复选框,然后单击“确定”。

技术图片

现在,您可以使用适当的应用程序轻松地从本地网络中的任何其他计算机或移动设备访问FTP服务器,或者只需从浏览器访问即可。
 
步骤15:只需输入‘ftp://‘,然后输入计算机的IP地址和端口号,即21。对于本教程,我的计算机的IP地址为192.168.1.108。
 
所以完整的地址将是‘ftp://192.168.1.108:21‘。
 
步骤16:如果输入的地址正确,将要求您输入Windows计算机的用户名和密码。 最后,点击“确定”或“登录”,以适用于您的方式为准。


技术图片

如果身份验证成功,您将能够看到通过FTP服务器共享的文件夹或驱动器中的内容。

技术图片

这样,您就可以在本地网络上访问Windows计算机上的文件。
 
通过Internet访问本地FTP服务器
通过Internet访问本地或家庭FTP服务器需要在路由器上配置一些设置。因此,该过程可能会根据您使用的路由器的公司和型号而有所不同。不过,我在此基本了解如何配置路由器以通过互联网访问您的FTP服务器。
 
在继续之前,请记下您的Internet服务提供商从以下链接提供给您的外部IP地址。
 
打开路由器配置页面,该页面应为192.168.1.1,192.168.0.1或左右。您可以在配置手册中找到路由器配置页面的地址。
 
对我来说,它是192.168.1.1。只需打开配置页面,然后使用用户名和密码登录即可。
 
然后转到“高级设置”,并在其下选择“NAT”。
 
步骤17:在“Virtual Circuit”中选择“PVC2”,然后单击“Virtual Server”。将“IP数量”设置为“单个”,这应该是默认值。

技术图片

步骤18:现在点击“应用程序”对应的下拉菜单,然后从菜单中选择“FTP”。 之后将自动应用其他配置。 您甚至会注意到FTP应用程序的端口号也被分配为“21”。
 
现在为我设置本地IP地址,即192.168.1.108。
 
第19步:完成后,单击“保存”。

技术图片

第20步:一切准备就绪。 现在输入‘ftp://‘,后跟前面提到的外部IP地址,以及冒号后的端口号,即21。
 
所以对我来说地址是‘ftp://117.194.16.221:21‘。 如果您的ISP为您分配动态IP地址,则每次重新启动路由器时外部IP地址都会更改。

技术图片

在您的路由器上切换端口21以使您的FTP服务器可通过互联网访问的过程可能与您的路由器完全不同。 您最好阅读用户手册以获得一些帮助,或者您甚至可以联系路由器制造商的客户服务人员。





 




 

svchost.exe本身只是作为服务宿主,并不实现任何服务功能,需要svchost.exe启动的服务以动态链接库形式实现,在安装这些服务时,把服务的可执行程序指向svchost.exe,启动这些服务时由svchost.exe调用相应服务的动态链接库来启动服务。

    双击服务列表的服务,可以看到服务详细信息。

 

技术图片

 

 

    其中,C:WindowsSystem32svchost.exe-k netsvcs这个路径当然就是启动服务的关键信息,其实,后边的这个-k netsvcs参数并不是在告诉svchost.exe启动哪个服务,netsvcs代表的是组,表示这个服务是属于哪个组的,组具体有啥用,大概就是节省资源什么乱七八糟的。正是由于采用了分组机制,系统中才会有多个svchost.exe进程,每个进程代表一个组。

    那svchost.exe是怎么区分不同的服务呢?原来是根据服务名字区分的。。。搞个什么参数,弄的这么复杂,原来还是根据服务名字区分的。。。。

    注意服务的名称,可不是服务列表里直接看到的名称,双击服务从属性里看以看到,如图:

技术图片

 

 

    哪个服务对应哪个dll,都是保存在注册表里的,路径是HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservices。

    就拿上边的Browser服务来说,在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservices路径下有一个Browser项,名字和服务名字一样(也就是说,有多少个服务,这个路径下就有多少个项,和服务名称相对应),这个项里里边又有一个Parameters子项,Parameters子项里有一个名字叫ServiceDll的键,它的值就是dll的路径。如图:

 

技术图片

 

 

 

 

    这样一来,svchost.exe根据服务名称找到相应的键值,就找到要启动的dll了。

    当然,不是所有的服务都是通过svchost.exe启动的,以上的方法仅仅适用于利用svchost.exe启动的服务,如果服务本身就是exe,而不是dll,不需要借助于svchost.exe。

    如果服务不通过svchost.exe启动,那么就更简单,直接在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservices路径下找到和服务名称一样的项,项中有一个叫ImagePath的键,这个键的值就是服务exe文件的路径和启动参数。如图:

技术图片

 

我想细心的电脑用户应该会在电脑的Windows任务管理器中发现有svchost.exe进程在运行,而且通常情况下svchost.exe进程并非同绝大多数程序那样只显示一个,有时候我们能发现10多个svchost.exe正在运行。那么很多人就有了疑问了,svchost.exe是什么进程?为什么svchost.exe进程会有那么多?它会不会是病毒(因为太多了所以可疑)?既然这是个普遍的问题那么我想应该需要来解答一番了。

DLL文件的存在是为了实现软件程序代码的精简化模块化。当我们在系统中运行某一个软件时,这个软件的很多功能可能就是DLL文件提供的。例如,在 Windows 操作系统中,Comdlg32 DLL 执行与对话框有关的常见函数。因此,每个程序都可以使用该DLL中包含的功能来实现“打开”对话框。这有助于促进代码重用和内存的有效使用

svchost.exe是什么进程?

首先我们来了解下svchost.exe进程是从哪里来的。我们可以通过Windows任务管理器对svchost.exe进程的描述来了解到这一信息,如下图所示:

技术图片

从图中我们可以看到svchost.exe进程是Windows服务主进程,这意味着svchost.exe是Windows系统的一部分,它是安全的核心文件。当然,到目前为止没有理由证明我们可以完全相信Windows任务管理器所显示的信息。我再利用安全工具对系统的进程进行了扫描,安全工具显示svchost.exe进程是来自微软公司的Windows系统,请看下图:

技术图片

重复检测的目前就是为了说明一个很重要的问题,那就是svchost.exe进程是Windows系统的一部分。我们可以确定了它的来历,这一点很重要,因为这样我们或许可以从官方网站找到一些相关介绍svchost.exe进程的技术文档。不出所料,微软的网站中的中文知识库编号为314056的文件就对svchost.exe进程做了介绍:

svchost.exe是从动态连结程式库(DLL) 执行之服务的一般性主处理程序名称。 当电脑启动时,SVCHOST.EXE会检查登录中的服务部分,以建立一份它需要载入的服务清单。 多个svchost.exe可以同时执行,且每一个svchost.exe工作阶段都可以包含一组服务。

上面所使用的安全工具也在描述栏里面简要介绍了svchost.exe进程,只是图片截图是没截取,我再截取一个看的清楚一些的:

技术图片

为什么需要svchost.exe进程?

上面来自微软的314056文件对svchost.exe的解释里面提到了一个很核心的东西:DLL。关于DLL文件穆童在以前的那篇《DLL文件怎么打开?及DLL格式文件的作用》文章中也简要提到过。而svchost.exe程序与DLL文件之间的关系密切,为了让Windows的软件编程更为高效及提高运行效率,DLL文件就诞生了。但不能从Windows直接启动DLL文件,这个时候一个专门的svchost.exe进程就诞生了。现在我们能够明白微软314056文件所描述的“svchost.exe会检查登录中的服务部分,以建立一份它需要载入的服务清单”这句话了。我们可是使用第三方的任务管理器工具来查看到这一现象:

技术图片

我们可以从上图看到,一个svchost.exe进程会加载很多的DLL文件。

为什么会有那么多svchost.exe进程?

我们通过上面推荐的那篇文章会知道,DLL文件的作用就是让特定的某个功能使用一个dll文件以便重用。例如,在Windows操作系统中,Comdlg32 DLL 执行与对话框有关的常见函数,因此每个程序都可以使用该DLL中包含的功能(服务)来实现“打开”对话框,这有助于促进代码重用和内存的有效使用。而如果我们的电脑安装的软件很多,需要开启很多的功能,那么理所当然的我们就需要更多的DLL文件(因为功能就在这里面),而我们也知道DLL文件是无法直接使用的,它需要svchost.exe进程来帮助。所以,功能多的时候svchost.exe进程就会越多。

上面的这一解释也能解答大家关于,为什么Windows XP会比Windows 7系统少很多svchost.exe进程的原因,因为毫无疑问Windows 7系统的功能要比Windows XP强大,所以就会出现这种情况。

svchost全名Host Process for Windows Services,它是一个系统进程,用于托管各种windows服务。微软官方对它的解释是:svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。当windows想要运行一个服务时,就通过svchost来托管,所以细心的用户可以在进程管理器中看到一堆的svchost,这仅仅是因为windows同时运行不同的服务,千万不要把它当作是一种问题。

在老版本的windows中是没有svchost的,随着windows系统的更新,后台服务不断增加,为了节约系统资源,微软把很多服务做成共享方式,交由svchost.exe进程来启动。svchost进程只作为服务宿主,并不能实现任何服务功能,即它只能提供条件让其他服务在这里被启动,而它自己却不能给用户提供任何服务。

那为什么不把他们所有的功能都捆绑在一个服务进程上,这样看起来不是很清爽?这一决定背后的原因是为了防止单个服务进程崩溃导致所有服务都瘫痪。举个栗子:如果你经营一家工厂,一条生产线需要10个工人负责不同的环节,另一种选择是让一台机器人负责所有的环节,但是在出现问题的时候,机器人坏掉了会导致整条生产线都停工,而一个工人受伤或生病,生产线上的其他环节仍然可以正常工作。

如何在windows10中查看svchost托管的服务详情

如果你想自己查看在svchost下运行什么进程,你可以通过按住Ctrl + Shift + ESC来实现。单击底部的“详细信息”,确保您正在查看高级视图(如果有的话)。此时默认应该是“进程”选项卡。然后,按名称对进程进行排序,并向下滚动找到“Windows进程”然后,您将看到很多“服务主机”开头的进程,冒号后面的名字就是它对应的服务名称。

技术图片

展开相应的名字,也可以看到更详细的信息。

技术图片

点击“服务”选项卡,这里会显示所有的服务和它的描述,包括通过svchost托管的服务。

技术图片

当svchost被感染时如何处理?

不幸的是,svchost也可能会被恶意软件和病毒利用,有些病毒会把自己的服务起一个跟svchost(服务主机)相似的名字,甚至有些恶意软件会伪装成系统服务,如果你发现svchost工作异常比如占用大量的cpu内存和网络资源,那么需要留意一下,最好用杀毒软件或者清理恶意软件的程序扫描一下,千万不要尝试手动删除,这样可能会导致更多的问题。

综上所述,svchost是一个非常重要的进程,同时也是比较容易被病毒理用的进程,为了让它更好的为我们服务,安装杀毒软件并定期扫描系统是很有必要的,千万不要让电脑裸奔。

 

以上是关于svchost.exe的主要内容,如果未能解决你的问题,请参考以下文章

svchost.exe 大量占用的问题

每次刚启动完电脑,我就发现在进程中有很多的svchost.exe,这是否病毒啊?

svchost.exe是什么?为什么一直在运行

xp里面svchost.exe是啥进程?我里面怎么有好几个一样的这东西?

不断弹出svchost.exe错误框

win10 svchost.exe (LocalSystemNetworkRestricted)大量读写数据