Code Monkey home page Code Monkey logo

py-kms's Introduction

History

py-kms is a port of node-kms created by cyrozap, which is a port of either the C#, C++, or .NET implementations of KMS Emulator. The original version was written by CODYQX4 and is derived from the reverse-engineered code of Microsoft's official KMS.

Features

  • Responds to V4, V5, and V6 KMS requests.
  • Supports activating:
    • Windows Vista
    • Windows 7
    • Windows 8
    • Windows 8.1
    • Windows 10 ( 1511 / 1607 / 1703 / 1709 / 1803 / 1809 / 1903 / 1909 )
    • Windows Server 2008
    • Windows Server 2008 R2
    • Windows Server 2012
    • Windows Server 2012 R2
    • Windows Server 2016
    • Windows Server 2019
    • Microsoft Office 2010 ( Volume License )
    • Microsoft Office 2013 ( Volume License )
    • Microsoft Office 2016 ( Volume License )
    • Microsoft Office 2019 ( Volume License )
  • It's written in Python:
    • tested with Python 2.7.15rc1
    • tested with Python 3.6.7

Dependencies

  • Python 3.x or Python 2.7.x or Python 2.6.x with the argparse module installed.
  • Tkinter module.
  • If the tzlocal module is installed, the "Request Time" in the verbose output will be converted into local time. Otherwise, it will be in UTC.
  • It can use the sqlite3 module so you can use the database function, storing activation data so it can be recalled again.
  • Installation example on Ubuntu / Mint:
    • sudo apt-get update
    • for python3
    • sudo apt-get install python3-tk python3-pip
    • sudo pip3 install tzlocal pysqlite3
    • or for python2
    • sudo apt-get install python-tk python-pip
    • sudo pip install tzlocal pysqlite

Usage

  • NOTE: Pay attention to how invoke scripts, if you want to run with python2 use python... while for python3 use python3..., also depending on the Python versions that resides in your PC.
  • To start the server, execute python pykms_Server.py [IPADDRESS] [PORT], the default IPADDRESS is "0.0.0.0" ( all interfaces ) and the default PORT is "1688".
  • To run the client (only for testing purposes), use python pykms_Client.py [IPADDRESS] [PORT], with the same defaults of pykms_Server.py.
  • To show the help pages type: python pykms_Server.py -h and python pykms_Client.py -h.
  • To generate a random HWID use -w option: python pykms_Server.py -w RANDOM.
  • To get the HWID from any server use the client, for example type: python pykms_Client.py 0.0.0.0 1688 -m Windows8.1 -V INFO.
  • To view a minimal set of logging information use -V MINI option, for example: python pykms_Server.py -F /path/to/your/logfile.log -V MINI.
  • To redirect logging on stdout use -F STDOUT option, for example: python pykms_Server.py -F STDOUT -V DEBUG.
  • You can create logfile and view logging information on stdout at the same time with -F FILESTDOUT option, for example: python pykms_Server.py -F FILESTDOUT /path/to/your/logfile.log -V DEBUG.
  • Select timeout (seconds) for py-kms with -t option, for example python pykms_Server.py -t 10
  • For launching py-kms GUI make executable pykms_Server.py file with chmod +x /path/to/folder/py-kms/pykms_Server.py, then simply run pykms_Server.py double-clicking.
  • You can run py-kms deamonized (via Etrigan) using a command like: python pykms_Server.py etrigan start and stop it with: python pykms_Server.py etrigan stop.
  • With Etrigan you have another way to launch py-kms GUI (specially suitable if you're using a virtualenv), so: python pykms_Server.py etrigan start -g and stop the GUI with the same precedent command (or interact with EXIT button).

Docker

auto-docker status-docker

This projects has docker image support. You can find all available image configurations inside the docker folder. There are three tags of the images available:

  • latest, currently the same like minimal...
  • minimal, wich is based on the python3 minimal configuration of py-kms. This image does NOT include SQLLite support!
  • python2, which is fully configurable and equiped with SQLLite support and web interface.
  • python3, which is like the python2 tag - just with Python 3... If you just want to use the image and don't want to build them yourself, you can use the official image at the docker hub (pykmsorg/py-kms). To ensure that the image is always up-to-date you should check watchtower out!

Other Important Stuff

Consult the Wiki for more information about activation with py-kms and to get GVLK keys.

License

License

py-kms's People

Contributors

angrynoodlez avatar bruor avatar saltspork avatar simonmicro avatar speedst3r avatar systemrage avatar taknok avatar thedevfreak avatar vosdev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.