我们在处理连接问题之前,应先确保服务器基础环境配置正常,正确的服务器配置是服务器稳定高效运行和客户端正常连接的前提,服务器的基础环境配置主要针对操作系统的配置,下面就操作系统基础环境在安装部署之前应该需要做好的配置做简单的概述。
1 服务器操作系统基础环境配置
1.1 服务器管理器安装必要服务角色和功能
1、以具有本机系统管理员的身份登录,关闭其它应用程序,特别是防病毒软件。
2、打开开始菜单–选择服务期管理器–添加角色功能,按照向导,勾选“应用程序服务器”以及“WEB服务器(IIS)”:
3、功能中.NET3.5以及.NET4.5的功能都需要勾选,还需要勾选IIS可承载web核心 :
4、下一步后,选择应用程序服务器的角色服务,应用程序服务器的角色服务必须选择COM+网络访问,最好全选:
5、下一步,选择Web服务器角色的角色服务,建议全选Web服务器和管理工具
6、下一步确认等待安装完成即可,如提示需要重启,请按提示重启再进行后续操作。
※ 如果操作系统为Windows Server 2016及以上版本,系统不提供独立的“应用程序服务器角色”安装,需要调整注册表,启用COM+网络访问:
通过修改注册表实现安装“COM+网络访问”;
1、在该服务器上依次打开【开始】→【运行】,输入“regedit”,打开注册表编辑器;
2、找到“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\COM3\”,将“RemoteAccessEnabled”的值修改为“1”后【确定】即可。
1.2 配置组件服务
1、打开运行,输入“Dcomcnfg”打开组件服务;
2、依次展开“组件服务”-“计算机”-“我的电脑”,鼠标右键“我的电脑”选择“属性”,切换到“COM安全”,分别在访问权限和启动和激活权限下的“编辑限制…”中选择Everyone和ANONYMOUS LOGON用户,勾选所有本地和远程的允许复选框:
3、展开“Distributed Transaction Coordinator”,鼠标右键“本地DTC”,选择“属性”,如图所示,勾选“网络DTC访问”,及勾选允许远程客户端、允许远程管理、允许入站、允许出站、不要求进行验证、启用XA事务:
4、点击“确定”,根据提示自动重启MSDTC服务后,即配置完成组件服务。
5、部分服务器Distributed Transaction Coordinator服务默认为手动启动,运行中输入“services.msc”打开“服务”,找到“Distributed Transaction Coordinator”服务,设置启动类型为“自动”或“自动(延迟启动)”。
1.3 配置IIS
(如中间层不需要提供web访问、不需要合并报表和HR,该配置可忽略)
1、开始运行,输入“inetmgr”打开IIS管理器。
2、选中起始页下的WEB服务器名称,在右边窗体中,双击“ISAPI和CGI限制”,确认.net2.0和.net 4.0设置限制为“允许”
3、展开服务器-网站-默认网站(Default Web Site),如图:
4、双击“ASP”,在“启用父路径”中选择“true”,设置正确后,点击右上角的“应用”保存设置
5、选择“应用程序池”,在右边窗体分别选择KingdeeK3Net和KingdeeK3Net4,选择其“高级设置”,设置“启用32位应用程序”为“True”,点击“确定”,保存设置
1.4 配置防火墙
防火墙的配置需要开启对应的默认策略和自定义端口和例外程序,保障K3客户端和服务器的通讯不受限制,具体可参考如下设置
1.4.1 服务器上需要开启的防火墙策略
打开管理工具-“高级安全 Windows 防火墙”,在入站规则中,启用“COM+ 网络访问(DCOM-In)”一个规则和“分布式事务处理协调器 (***)”三个规则;在出站规则中,启用“分布式事务处理协调器”(TCP-Out),
1.4.2 中间层服务器上开放的端口
1、TCP端口135,RPC服务的固定端口,不能改。
2、TCP端口5159,加密服务固定端口,不能改。
3、TCP端口8189,HR客户端端口,不能改。
4、DCOM动态端口,DTC默认的动态端口为TCP 1025–65534,可以更改,可将端口设置到较小范围,一般设置500个连续端口即可,如5000-5500。
附:动态端口设置方式:
打开运行,输入“Dcomcnfg”打开组件服务;依次展开“组件服务”-“计算机”-“我的电脑”,鼠标右键“我的电脑”选择“属性”,切换到“默认协议”,选中“面向连接的TCP/IP”,点击“属性”,“添加”设置需要的连续端口范围,如5000-5500,确定完成保存设置即可
此外如果有下列服务(如不使用相关功能,可不开放),需要开通如下端口:
1、TCP端口 5150,门店系统使用的数据同步端口。可以在门店系统中更改。
2、TCP端口5678,IMTS远程传输系统端口。可以在IMTS系统中更改。
3、HTTP端口80,合并报表系统需要调用的http端口,可以在IIS设置更改。
4、TCP端口8185,HR客户端使用。
1.4.3 数据库服务器上开放的端口
1、TCP端口135端口,RPC服务的固定端口,不能改。
2、TCP端口1433,SQL服务的默认实例的默认端口,可以在SQL Server中更改。
3、DCOM动态端口。DTC默认的动态端口为TCP 1025–65534,可以更改,可通过设置将动态端口改到较小范围,一般设置500个连续端口即可,如5000-5500
1.4.4 WEB服务器上开放的端口
1、TCP端口135端口,RPC服务的固定端口,不能改。
2、TCP端口80端口,K3WEB网页端访问和HR网页端访问端口,可在IIS中更改。
2、TCP端口5159,加密服务固定端口,不能改。
3、TCP端口8189,HR客户端端口,不能改。
4、DCOM动态端口,DTC默认的动态端口为TCP 1025–65534,可以更改,可将端口设置到较小范围,一般设置500个连续端口即可,如5000-5500。
2 客户端基础配置
2.1 配置组件服务、重置MSDTC
1、打开运行,输入“Dcomcnfg”打开组件服务;(或者控制面板-管理工具-组件服务打开)
2、展开“组件服务”-“计算机”-“我的电脑”-“Distributed Transaction Coordinator”-“本地DTC”,右键选择“属性”
3、切换到“安全”选项卡,勾选“网络DTC访问”、“允许远程客户端”、“允许远程管理”、“允许入站”、“允许出站”、“不要求进行验证”,确定保存即可。如图:
4、 如组件服务器异常,我的电脑上有向下的红色箭头,参考如下重置MSDTC:
① 删除注册表中的键:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC
HKEY_CLASSES_ROOT\CID
② 开始菜单搜索cmd,匹配出“命令提示符”,右键以管理员身份运行;(或者找到c:\windows\system32\cmd.exe,鼠标右键选择“以管理员身份运行”)
③ 停止MSDTC服务:net stop msdtc
④ 卸载MSDTC服务:msdtc -uninstall (卸载后重新启动电脑)
⑤ 重新安装MSDTC服务:msdtc –install
⑥ 启动MSDTC服务:net start msdtc
2.2 添加配置hosts解析
※(非必要配置,局域网NetBIOS解析异常的环境需要配置)※
1、依次打开到C:\WINDOWS\system32\drivers\etc\目录下;
2、用记事本打开hosts文件(如果不存在新建hosts文件,不要任何扩展名);
3、找到“127.0.0.1 localhost”,或直接在文件最后一行回车到下一行按照“IP地址 服务器计算机名”的格式输入hosts解析记录,如“192.168.1.2 K3Server”,然后【保存】
4、如果保存提示需要“另存为”,取消暂不保存,因权限不足导致,需要设置hosts权限后再进行保存:
① 鼠标右键hosts文件,选择属性,切换到安全,点击编辑-添加,在“输入对象名称来选择”中输入everyone(或当前登录操作系统的用户名如administrator),点击“检查名称”,名称正常后,点击“确定”:
② 选择Everyone,勾选“完全控制”的允许权限,点击“确定”保存,会有一个安全警告提醒,选择“是”即可
③ 确认Everyone有完全控制权限允许权限后,点击“确定”完成权限设置
5、再重新保存hosts文件即可。
2.3 添加服务器Windows凭据
※(非必要配置,客户端访问服务器身份验证异常时配置)※
1、打开“控制面板”-查看方式设置“大图标”,找到“凭据管理器”(或者运行中输入:control keymgr.dll 回车,如是xp系统只能使用该方法打开)
2、打开凭据管理器,切换到“windows凭据”,点击“添加windows凭据”
3、在添加windows凭据界面,分别输入正确的服务器IP地址或计算机名、服务器管理员用户名和密码,点击“确定”完成
4、部分系统添加凭据后需要重启才能生效,建议添加后,重启电脑,如图:
5、Windows XP操作系统中打开“运行”,输入“ control keymgr.dll ”回车,即可打开“存储用户名和密码”窗口,单击“高级”选项卡,然后单击“管理密码”,添加服务器的IP地址、用户和密码,确认退出后,重启电脑。
2.4 客户端上防火墙限制设置
1、TCP端口135,不能更改。
2、允许例外程序:正常开启防火墙状态下,打开K3客户端,会自动弹出访问控制界面,点击允许即可,系统自动添加下述程序到防火墙入站规则例外程序:kdmain.exe和kdmainnet.exe。