这个网站http://www.forexverified.com/vps_setup.html给出了良好建议,是英文的,不过不难懂。
我总结一下重点:
1,关闭Windows自动更新,或选择 "Download updates but let me choose whether to install them"手动安装。原因是自动重启,会造成EA中断。
2,更改3389端口号。
进入到防火墙的高级设置。创建一个新的入站规则“允许”在新端口号上连接。
更新注册表和定义新的端口号。HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber。单击修改十进制。
重新启动服务器并重新连接(使用新的端口)。然后返回到防火墙的高级设置和删除3389端口上的规则。
现在,防火墙阻挡3389成功。
当你改变你的RDP端口,您将使用新的IP地址格式,当您登录到服务器使用RDP。它看起来像这样:123.123.123.123:4567 后面部分表明它应该连接到哪个端口。
3,关闭UAC。
UAC是User Account Control安全策略,从Windows Vista之后到Windows 7、Server2008一直存在。MT4并不兼容,故建议关闭UAC(特指某些汇友使用windows 2008系统)。
开始-运行-msconfig-系统配置-工具-更改UAC设置-启动,一路拖到滑块底部(“从不通知”),并单击“确定”。最后重启VPS。
4,禁用休眠。
休眠能加快PC启动速度,并打开休眠前的程序,但缺点是hiberfil.sys文件占用4~8GB空间,一般VPS空间不大,故影响大些。开始-运行-cmd-“powercfg -h off"就可以关闭并删除hiberfil.sys文件。
5,关闭不需要的服务(特别是针对外汇VPS的)。
开始-运行-services.msc
以下设置Disable:
1.应用经验 Application Experience
2.证书传播 Certificate Propagation
3.桌面窗口管理器 Desktop Window Manager
4.诊断策略服务 Diagnostic Policy Service
5.诊断系统主机 Diagnostic System Host
6.发现资源发布功能 Function Discovery Restore Publication
7.IP助手 IP Helper
8.多媒体类计划程序 Multimedia Class Scheduler
9.打印后台处理程序 Print Spooler
10.远程注册表 Remote Registry
11.二次登录 Secondary Logon
12.Windows错误报告服务 Windows Error Reporting Service
13.Windows远程管理 Windows Remote Management
14.KtmRm的分布式事务 KtmRm for Distributed Transactions
以下设置Manual,根据需要启动:
1.Com+ Event System COM+事件系统
2.Distributed Transaction Coordinator 分布式事务处理协调器
3.IKE and AuthIP IPsec Keying IKE和AuthIP IPsec键控
4.IPsec Policy Agent IPsec策略代理
5.Microsoft .Net Framework NGE 微软Net框架NGE
6.System Event Notification service 系统事件通知服务
7.Workstation 工作站
6,自动加载MT4平台
MT4只有Windows登陆成功后,才能加载,可做以下设置:
Start-右击All Programs-Open All User-打开资源管理器-浏览程序-拷贝MT4的快捷方式到Startup文件夹-重启VPS
7,DLL文件缺少
MT4是32位程序,尽管在64位系统上,仍需要下载32位的Visual C++ 2008和2010 Runtime文件,特别是DLL缺少的情况下。
Microsoft Visual C++ 2008 SP1 (x86)
Microsoft Visual C++ 2010 (x86)
8,禁用屏幕保护程序
9,不定期的碎片整理,由于是VPS,时间周期可间隔数月才执行一次。
10,某外国人编的VPS脚本,快速设置,但注意风险。文件包括:
一,Server 2003 and 2008 (folder)
1.设置AutoLogin.reg - 右键单击并编辑该文件,并输入您的Windows登录凭据。然后运行该脚本将Windows设置为自动登录。
2.Update RDP to Port 1311.reg - 预先制作的注册表文件的更新RDP使用端口1311。不要运行此文件,直到在你的防火墙后,你已经打开端口1311。
3.Visual C++ 2008 Runtime - 2008运行库下载页面链接到一个网站。
4.Visual C++ 2010 Runtime - 2010运行时下载页面链接到一个网站。
二,Server 2003 Only (folder)
1.Add Open File Location Option to Right-Click.reg - 允许你右键单击一个MT4的桌面快捷方式,然后单击“打开文件位置”去到MT4文件夹(方便安装EA的)。
2.VPS-Tuneup.bat - Server 2003中禁用所有不必要的服务,禁用休眠,关闭屏幕保护程序的批处理文件。
3.Show Desktop - A special shortcut file for Beeks VPS. The Quicklaunch toolbar on their servers is missing the "Show Desktop" shortcut, so I have to paste it into the Quicklaunch bar manually.
三,Server 2008 Only (folder)
1.Firewall - Open port 1311.bat - 一个脚本Server 2008的防火墙上打开端口1311。(运行此之前改变了RDP端口)。
2.Firewall - Close port 3389.bat - a script for Server 2008's firewall to close access to port 3389. Don't run this until after you've updated RDP, restarted the VPS, and connected to it using the new port. Then you can close port 3389.
3.Path to Quicklaunch.txt -一个文本文件,最常见的快速启动文件夹的路径,这样我就可以复制和粘贴时添加新的工具栏。
4.VPS-Tuneup.bat - Server 2008中禁用UAC的批处理文件,禁止所有不必要的服务,禁用休眠,关闭屏幕保护程序。
5.Expand C Drive.bat - sometimes Windows Server 2008 VPS's are automatically created with smaller hard drives than they should have. Vendors usually include detailed instructions to "expand" the VPS C: drive to use all of the available disk space. This script is simply an automated way to do it.
6.diskpart-script.txt - This file is used by the Expand C Drive script. I couldn't put all the commands in the batch file: it needs to load an external script file and that's what this is. Just ignore it.
11.Console Session问题
This is a little complicated to explain but it is EXTREMELY important when using Windows Server 2003. Please bear with me.
Windows Server editions have the ability to operate multiple "sessions" simultaneously. This means that multiple people can be remotely connected to a machine and using it "as if" they were the only person on the computer (they don't see what the other people are doing). A single Windows Server can sometimes have up to 25 people all logged in and working on it at the same time (depending on licensing restrictions).
The "console session" is a term that describes the session of Windows that is being used as if you were sitting in front of the machine in real life with the physical keyboard and mouse in your hands. If you walked into your company's server room and stood in front of the server, you would be looking at the "console" session. The console session is always Session ID# 0.
Why is this important? Because of the way that Metatrader and trading software work. If you remotely log into your VPS under session '1' and run Metatrader 4, your trading platform will be running in Session 1. If you disconnect and log back into the VPS the next day, it may log you into a new session (for example '2'). If you are logged into Session 2, you will not see your Metatrader 4 platform which is running in Session 1.
The first instinct is to think that MT4 crashed and re-open it. Or maybe your MT4 is set to automatically run when you log into Windows. Suddenly you have a situation where MT4 is running in BOTH active Sessions at the same time. When terminal.exe is running twice, your EA's are also running twice. This will result in unpredictable behavior that includes duplicate trades being executed, trades being missed, EAs crashing or MT4 crashing.
This is why VPS vendors that sell Server 2003 use special instructions or utilities to force you to log into the "console" session. The console session is the only non-virtual session that is not dynamically created, so it will be the same every time you log into it. It's the only way to guarantee your MT4 platforms do not get launched again and duplicated. It's very important to follow the VPS vendor's instructions to log into the console session.
CNS offers a utility that is pre-installed called "Double Login Defender" that can warn you if a new Windows session is created, but most VPS vendors do not have warnings like this available.
How to see if you have a duplicate session running, or which session you're logged into: While in the VPS, simply right-click the taskbar at the bottom of your screen and click "Task Manager". Click the "Users" tab. This will show you all logged-in users and the session ID. If you are using Windows Server 2003, the ID should be '0' and there should only be one entry in this window.
Note: "Console" session was the original term. A few years ago Microsoft started calling it the "Admin" session, but it refers to the same thing. Many people still use the word "console" to describe Session #0.
Server 2008 note: My experience with Server 2008 is limited but my observation is that it forces all connections from the same username into the same session. So as long as you always log in with the same username (such as "Administrator") you have nothing to worry about. All my Server 2008 connections are on session ID '1' and I have not had issues with duplicate sessions being created. I can't guarantee this and I have not researched it thoroughly but it's my observation so far.
12.选用VNC还是RDP连接你的VPS?
在2003系统中,RDP只允许同时一个远程连接session,而VNC允许多个用户同时访问同一VPS。但在2008中,windows已改良,故无需使用VNC。 |