modified: nfig1.py
[GalaxyCodeBases.git] / etc / Windows / vlmcsd / man / vlmcsd.ini.5.dos.txt
blob75d9212b4045aeea3bf30b695e9b74b10e2f84a0
1 VLMCSD.INI(5)                KMS Activation Manual               VLMCSD.INI(5)\r
2 \r
3 \r
4 \r
5 NAME\r
6        vlmcsd.ini - vlmcsd KMS emulator configuration file\r
7 \r
8 \r
9 SYNOPSIS\r
10        vlmcsd.ini\r
13 DESCRIPTION\r
14        vlmcsd.ini  (or  simply  called the "ini file") is a configuration file\r
15        for vlmcsd(8). By default vlmcsd does not use a configuration file.  It\r
16        is completely optional and for advanced users only. You must use the -i\r
17        option on the vlmcsd command line to use  an  ini  file.  There  is  no\r
18        default name or default location for the ini file.\r
20        Everything,  that can be configured in the ini file, may also be speci‐\r
21        fied on the command line. Any configuration  option  specified  on  the\r
22        command line takes precedence over the respective configuration line in\r
23        the ini file.\r
25        Benefits of a configuration file\r
27        While you can use the configuration file to simply modify  the  default\r
28        behavior  of vlmcsd, it can also be used to change the configuration of\r
29        vlmcsd after you sent a HUP signal(7). Whenever you  send  SIGHUP,  the\r
30        configuration  file  will  be  re-read. Any changes you made to the ini\r
31        file will be reflected after vlmcsd received the hangup signal.\r
33        Differences between command line and configuration file\r
35        If you specify an illegal option or  option  argument  on  the  command\r
36        line,  vlmcsd displays help and exits. If you specify an incorrect key‐\r
37        word or argument in the ini file, vlmcsd displays a warning  with  some\r
38        information,  ignores the respective line and continues. This is inten‐\r
39        tional and prevents vlmcsd from aborting after a SIGHUP if the configu‐\r
40        ration was modified incorrectly.\r
43 SYNTAX\r
44        vlmcsd.ini  is  a  UTF-8  encoded text file with each line being in the\r
45        format keyword = argument. The keyword is not case-sensitive. The argu‐\r
46        ment  is  treated  literally.  It  is  neither  required nor allowed to\r
47        enclose the argument in any form of quote characters except when  quote\r
48        characters  are  part of the argument itself. Whitespace characters are\r
49        ignored only\r
51        - at the beginning of a line\r
52        - between the keyword and '='\r
53        - between '=' and the argument\r
55        Lines, that start with '#' or ';' are treated as comments. Empty  lines\r
56        are  ignored  as well. If a keyword is repeated in another line, vlmcsd\r
57        will use the argument of the last occurence of the keyword.  An  excep‐\r
58        tion  to  this  is  the  Listen keyword which can be specified multiple\r
59        times and causes vlmcsd to listen on more than one  IP  address  and/or\r
60        port.\r
62        Some  arguments  are  binary  arguments  that need to be either TRUE or\r
63        FALSE. You can use "Yes", "On" or "1" as an alias for  TRUE  and  "No",\r
64        "Off"  or "0" as an alias for FALSE. Binary arguments are case-insensi‐\r
65        tive.\r
68 KEYWORDS\r
69        The following keywords are defined (not all keywords may  be  available\r
70        depending  on  the operating system and the options used when vlmcsd(8)\r
71        was compiled):\r
74        Listen This defines on what combinations of IP addresses and ports vlm‐\r
75               csd  should  listen. Listen can be specified more than once. The\r
76               argument has the form ipaddress[:port]. If you  omit  the  port,\r
77               the  default  port  of  1688  is used. If the ipaddress contains\r
78               colons and a port is used, you must  enclose  the  ipaddress  in\r
79               brackets. The default is to listen to 0.0.0.0:1688 and [::]:1688\r
80               which means listen to all IPv4 and all IPv6 addresses.  See  the\r
81               -L  option  in  vlmcsd(8) for more info about the syntax. If you\r
82               use -L or -P on the command line, all Listen keywords in the ini\r
83               file  will be ignored. The Listen keyword cannot be used if vlm‐\r
84               csd has been compiled to use Microsoft RPC (Windows  and  Cygwin\r
85               only) or simple sockets.\r
87               Examples:\r
89               Listen = 192.168.1.123:1688\r
90               Listen = 0.0.0.0:1234\r
91               Listen = [fe80::1721:12ff:fe81:d36b%eth0]:1688\r
94        Port   Can only be used if vlmcsd has been compiled to use simple sock‐\r
95               ets or on Windows and Cygwin if vlmcsd(8) has been  compiled  to\r
96               use Microsoft RPC. Otherwise you must use Listen instead. Causes\r
97               vlmcsd to listen on that port instead of 1688.\r
100        FreeBind\r
101               Can be TRUE or FALSE. If TRUE, you can use  the  Listen  keyword\r
102               with IP addresses that are currently not defined on your system.\r
103               vlmcsd(8) will start listening on these IP addresses as soon  as\r
104               they  become  available.  This  keyword  is only available under\r
105               Linux and FreeBSD because no other OS  currently  supports  that\r
106               feature.  FreeBSD  supports  this only for IPv4 and requires the\r
107               PRIV_NETINET_BINDANY privilege which  is  normally  assigned  to\r
108               proccesses of the root user.\r
111        PublicIPProtectionLevel\r
112               Set  the level of protection against KMS activations from public\r
113               IP addresses.\r
115               0 = No protection (default)\r
116               1 = Listen on private IP addresses only (plus those specified by\r
117               one or more Listen statements)\r
118               2 = Disconnect clients with public IP addresses without activat‐\r
119               ing\r
120               3 = Combines 1 and 2\r
122               For details on public IP protection levels see vlmcsd(8) command\r
123               line option -o.\r
126        UseNDR64\r
127               Can  be  TRUE  or  FALSE.  Specifies whether you want to use the\r
128               NDR64 transfer syntax. See options -n0 and -n1 in vlmcsd(8). The\r
129               default is TRUE.\r
132        UseBTFN\r
133               Can  be  TRUE  or  FALSE. Specifies whether you want to use bind\r
134               time feature negotiation in RPC. See options -b0 and -b1 in vlm‐\r
135               csd(8). The default is TRUE.\r
138        RandomizationLevel\r
139               The  argument must 0, 1 or 2. This specifies the ePID randomiza‐\r
140               tion level. See options -r0,  -r1  and  -r2  in  vlmcsd(8).  The\r
141               default  randomization  level is 1. A RandomizationLevel of 2 is\r
142               not recommended and should be treated as a debugging level.\r
145        LCID   Use a specific culture id (LCID) even if the ePID is randomized.\r
146               The  argument  must  be  a number between 1 and 32767. While any\r
147               number in that range is valid, you should use an offcial LCID. A\r
148               list  of  assigned  LCIDs  can  be  found  at http://msdn.micro‐\r
149               soft.com/en-us/goglobal/bb964664.aspx. On the command  line  you\r
150               control this setting with option -C.\r
153        MaxWorkers\r
154               The argument specifies the maximum number of worker processes or\r
155               threads that will be used to serve activation  requests  concur‐\r
156               rently.  This  is the same as specifying -m on the command line.\r
157               Minimum is 1. The maximum is platform specific and is  at  least\r
158               32767  but  is likely to be greater on most systems. The default\r
159               is no limit.\r
162        ConnectionTimeout\r
163               Used to control when the vlmcsd  disconnects  idle  TPC  connec‐\r
164               tions. The default is 30 seconds. This is the same setting as -t\r
165               on the command line.\r
168        DisconnectClientsImmediately\r
169               Set this to TRUE to disconnect a client after it got an  activa‐\r
170               tion  response  regardless whether a timeout has occured or not.\r
171               The default is FALSE.  Setting  this  to  TRUE  is  non-standard\r
172               behavior.  Use only if you are experiencing DoS or DDoS attacks.\r
173               On the command line you control this behavior  with  options  -d\r
174               and -k.\r
177        PidFile\r
178               Write  a  pid  file.  The argument is the full pathname of a pid\r
179               file. The pid  file  contains  is  single  line  containing  the\r
180               process  id  of  the  vlmcsd  process.  It  can  be used to stop\r
181               (SIGTERM) or restart (SIGHUP)  vlmcsd.  This  directive  can  be\r
182               overriden using -p on the command line.\r
185        LogFile\r
186               Write  a  log  file.  The argument is the full pathname of a log\r
187               file. On a unixoid OS and with Cygwin you can  use  the  special\r
188               filename  'syslog'  to  log  to the syslog facility. This is the\r
189               same as specifying -l on the command line.\r
192        LogDateAndTime\r
193               Can be TRUE or FALSE. The default is TRUE. If set to FALSE, log‐\r
194               ging  output  does  not include date and time. This is useful if\r
195               you log to stdout(3) which  is  redirected  to  another  logging\r
196               mechanism that already includes date and time in its output, for\r
197               instance systemd-journald(8). If you log to syslog(3),  LogDate‐\r
198               AndTime  is  ignored and date and time will never be included in\r
199               the output sent to syslog(3). Using the command line you control\r
200               this setting with options -T0 and -T1.\r
203        LogVerbose\r
204               Set  this  to either TRUE or FALSE. The default is FALSE. If set\r
205               to TRUE, more details of each activation will be logged. You use\r
206               -v  and  -q in the command line to control this setting. LogVer‐\r
207               bose has an effect only if you specify a log  file  or  redirect\r
208               logging to stdout(3).\r
211        WhitelistingLevel\r
212               Can  be  0,  1,  2 or 3. The default is 0. Sets the whitelisting\r
213               level to determine which products vlmcsd activates or refuses.\r
215                    0:  activate  all  products  with  an  unknown,  retail  or\r
216                    beta/preview KMS ID.\r
217                    1:  activate  products with a retail or beta/preview KMS ID\r
218                    but refuse to activate products with an unknown KMS ID.\r
219                    2: activate products with an  unknown  KMS  ID  but  refuse\r
220                    products with a retail or beta/preview KMS ID.\r
221                    3:  activate  only products with a known volume license RTM\r
222                    KMS ID and refuse all others.\r
225               The SKU ID is not checked. Like  a  genuine  KMS  server  vlmcsd\r
226               activates  a product that has a random or unknown SKU ID. If you\r
227               select 1 or 3, vlmcsd also checks the Application  ID  for  cor‐\r
228               rectness.  If  Microsoft introduces a new KMS ID for a new prod‐\r
229               uct, you cannot activate it if you used 1 or 3 until a new  ver‐\r
230               sion of vlmcsd is available.\r
233        CheckClientTime\r
234               Can  be  TRUE or FALSE. The default is FALSE. If you set this to\r
235               TRUE vlmcsd(8) checks if the client time differs  no  more  than\r
236               four  hours from the system time. This is useful to prevent emu‐\r
237               lator detection. A client that tries to detect an emulator could\r
238               simply  send  two  subsequent  request with two time stamps that\r
239               differ more than four hours from each other.  If  both  requests\r
240               succeed, the server is an emulator. If you set this to TRUE on a\r
241               system with no reliable time source, activations will  fail.  It\r
242               is  ok  to  set  the  correct system time after you started vlm‐\r
243               csd(8).\r
246        MaintainClients\r
247               Can be TRUE or FALSE (the default). Disables (FALSE) or  enables\r
248               (TRUE) maintaining a list of client machine IDs (CMIDs). TRUE is\r
249               useful to prevent emulator detection. By maintaing a CMID  list,\r
250               vlmcsd(8)  reports current active clients exactly like a genuine\r
251               KMS emulator. This includes bug compatibility to the extent that\r
252               you  can  permanently  kill a genuine KMS emulator by sending an\r
253               "overcharge request" with a required client count of 376 or more\r
254               and  then  request  activation for 671 clients. vlmcsd(8) can be\r
255               reset from this condition by restarting it. If  FALSE  is  used,\r
256               vlmcsd(8) reports current active clients as good as possible. If\r
257               no client sends an "overcharge request", it is not  possible  to\r
258               detect  vlmcsd(8)  as  an emulator with MaintainClients = FALSE.\r
259               Maintaining clients requires the allocation of a buffer that  is\r
260               about  50  kB in size. On hardware with few memory resources use\r
261               it only if you really need it.\r
263               If you start vlmcsd(8) from an internet superserver,  this  set‐\r
264               ting  cannot  be  used. Since vlmcsd(8) exits after each activa‐\r
265               tion, it cannot maintain any state in memory.\r
268        StartEmpty\r
269               This setting is ignored if you do  not  also  specify  Maintain‐\r
270               Clients  =  TRUE.  If you specify FALSE (the default), vlmcsd(8)\r
271               starts up as a fully  "charged"  KMS  server.  Clients  activate\r
272               immediately.  StartEmpty = TRUE lets you start up vlmcsd(8) with\r
273               an empty CMID list. Activation will start when the required min‐\r
274               imum  clients (25 for Windows Client OSses, 5 for Windows Server\r
275               OSses and Office) have registered with the KMS server.  As  long\r
276               as the minimum client count has not been reached, clients end up\r
277               in HRESULT 0xC004F038 "The count reported by your Key Management\r
278               Service (KMS) is insufficient. Please contact your system admin‐\r
279               istrator". You may use vlmcs(1) or another KMS  client  emulator\r
280               to  "charge"  vlmcsd(8). Setting this parameter to TRUE does not\r
281               improve emulator detection prevention. It's primary  purpose  is\r
282               to  help  developers  of  KMS  clients  to test "charging" a KMS\r
283               server.\r
286        ActivationInterval\r
287               This is the same as specifying -A on the command line. See  vlm‐\r
288               csd(8) for details. The default is 2 hours. Example: Activation‐\r
289               Interval = 1h\r
292        RenewalInterval\r
293               This is the same as specifying -R on the command line. See  vlm‐\r
294               csd(8)  for  details. The default is 7 days. Example: RenewalIn‐\r
295               terval = 3d. Please note that the KMS client decides itself when\r
296               to renew activation. Even though vlmcsd sends the renewal inter‐\r
297               val you specify, it is no more than some kind of  recommendation\r
298               to  the  client. Older KMS clients did follow the recommendation\r
299               from a KMS server or emulator. Newer clients do not.\r
302        User   Run vlmcsd as another, preferrably less  privileged,  user.  The\r
303               argument  can be a user name or a numeric user id. You must have\r
304               the required privileges (capabilities on Linux)  to  change  the\r
305               security  context of a process without providing any credentials\r
306               (a password in most cases). On most unixoid OSses 'root' is  the\r
307               only user who has these privileges in the default configuration.\r
308               This setting is not available in the native Windows  version  of\r
309               vlmcsd.  See  -u in vlmcsd(8). This setting cannot be changed on\r
310               the fly by sending SIGHUP to vlmcsd.\r
313        Group  Run vlmcsd as another, preferrably less privileged,  group.  The\r
314               argument  can  be  a  group name or a numeric group id. You must\r
315               have the required privileges (capabilities on Linux)  to  change\r
316               the  security context of a process without providing any creden‐\r
317               tials (a password in most cases). On most unixoid  OSses  'root'\r
318               is the only user who has these privileges in the default config‐\r
319               uration. This setting is not available  in  the  native  Windows\r
320               version  of  vlmcsd. See -g in vlmcsd(8). This setting cannot be\r
321               changed on the fly by sending SIGHUP to vlmcsd.\r
324        Windows\r
325               The argument has the form ePID [ / HwId ]. Always use  ePID  and\r
326               HwId  for  Windows activations. If specified, RandomizationLevel\r
327               for Windows activitations will be ignored.\r
330        Office2010\r
331               The argument has the form ePID [ / HwId ]. Always use  ePID  and\r
332               HwId  for  Office 2010 activations. If specified, Randomization‐\r
333               Level for Office 2010 activitations will be ignored.\r
336        Office2013\r
337               The argument has the form ePID [ / HwId ]. Always use  ePID  and\r
338               HwId  for  Office 2013 activations. If specified, Randomization‐\r
339               Level for Office 2013 activitations will be ignored.\r
342        Office2016\r
343               The argument has the form ePID [ / HwId ]. Always use  ePID  and\r
344               HwId  for  Office 2016 activations. If specified, Randomization‐\r
345               Level for Office 2016 activitations will be ignored.\r
348 VALID EPIDS\r
349        The ePID is currently a comment only. You can specify any string up  to\r
350        63  bytes.  In  Windows  7 Microsoft has blacklisted few ( < 10 ) ePIDs\r
351        that were used in KMSv5 versions of the  "Ratiborus  Virtual  Machine".\r
352        Microsoft  has  given up on blacklisting when KMS emulators appeared in\r
353        the wild.\r
355        Even if you can use "Activated by cool hacker guys" as an ePID, you may\r
356        wish to use ePIDs that cannot be detected as non-MS ePIDs. If you don't\r
357        know how these "valid" ePIDs look like exactly, do  not  use  GUIDS  in\r
358        vlmcsd.ini.  vlmcsd  provides  internal  mechanisms  to  generate valid\r
359        ePIDs.\r
361        If you use non-ASCII characters in your ePID (you shouldn't do anyway),\r
362        these  must  be  in UTF-8 format. This is especially important when you\r
363        run vlmcsd on Windows or cygwin because UTF-8 is not the default encod‐\r
364        ing for most editors.\r
366        If you are specifying an optional HWID it follows the same syntax as in\r
367        the -H option in vlmcsd(8) ecxept that you must not enclose a  HWID  in\r
368        quotes even if it contains spaces.\r
371 FILES\r
372        vlmcsd.ini(5)\r
375 AUTHOR\r
376        vlmcsd(8) was written by crony12, Hotbird64 and vityan666. With contri‐\r
377        butions from DougQaid.\r
380 CREDITS\r
381        Thanks to CODYQX4, deagles, eIcn,  mikmik38,  nosferati87,  qad,  Rati‐\r
382        borus, ...\r
385 SEE ALSO\r
386        vlmcsd(8), vlmcsd(7), vlmcs(1), vlmcsdmulti(1)\r
390 Hotbird64                        October 2016                    VLMCSD.INI(5)\r