Remote Desktop Management Software - Aspia

    imageI want to present my development to the public - an application for remote control of the Aspia desktop. The project is completely free and open source (GPL 3.0).

    The following features are currently implemented:

    • Remote Desktop Management
    • Remote Desktop View
    • File transfer
    • Address book with encryption support and master password (XChaCha20 + Poly1305, 256-bit key)
    • The ability to create users with individual rights
    • Encryption of all information transmitted over the network (XSalsa20 + Poly1305)

    The application is a continuation of the development of my older project , which was aimed at collecting information about the computer. At that time, I promised the network version of the application.

    Implementing only the possibility of collecting information about computers on the network seemed to me a bit wrong and short-sighted. So the idea was to make a full-fledged tool that would include remote control and collecting / viewing reports on computers. I needed a base for the network version and the current version is this base.

    The application is completely rewritten, the code is now written in C ++ using the Qt framework. To serialize data, use protobuf, to encrypt libsodium, to compress zlib-ng and libvpx data.

    Unfortunately, the “System Information” session type was not included in this release, but other interesting features are available. Let's look at them in more detail.

    user management

    You can create users with different access rights. The division of rights is carried out according to the types of sessions. It is possible to disable a user account.

    The address book

    Separate mention is the address book. Each address book is a document that can be located where it is convenient for the user.

    Address books open in the Aspia Console application and can be encrypted and unencrypted. When opening an encrypted address book, you will be prompted to enter a password:

    After successfully entering the password, the address book will open:

    In the address book, you can manage groups of computers, create computers with individual connection settings and connect to them.
    Computer properties:

    A “fast” connection is also possible, without adding a computer to the address book:

    Desktop Management

    The desktop management window is not much different from other programs of this kind.

    You can change the parameters of the session "on the fly." There are 3 types of codecs to choose from: VP9, ​​VP8 and ZLIB.

    VP8 is great for quick connections, this is a full-fledged video codec. It perfectly copes with video playback, smooth scrolling in browsers, animation.

    ZLIB is well suited for relatively slow connections. It allows you to specify the color depth and compression ratio.

    VP9 is experimental. At the moment it consumes an irrational amount of resources.

    In the session settings it is possible to disable clipboard exchange and sending the image of the mouse cursor.

    For very slow connections (less than 256kbit / s), current codecs are poorly suited, although it is possible to work. There is a lot of work to do, but without creating a new codec is not enough. It would be nice to add caching of graphics, detection of monochrome areas (transfer the color value instead of transferring the compressed ZLIB rectangle) and some other features to this new codec.

    File transfer

    File transfer is also not too different from analog programs. Hotkeys, drag-and-drop are supported.

    What to expect from the next version?

    Some of the key planned features are:

    • Session type "System Information". Ability to view information about hardware, applications, network settings and operating system. It will be possible to save all the information in the report files, both for an individual computer and for those selected from the address book.
    • Session type "Text chat". The ability to text chat with the user on a remote computer.
    • The ability to open sessions in the tabs of the console.
    • Authorization by means of Windows.
    • Black and White Lists

    Is there a version planned for other operating systems?

    Unfortunately, I am working on a project alone and I do not have enough free time to support other operating systems.

    The number of platform-specific code is minimal, all third-party libraries can be compiled for Linux / MacOS.

    If you have a desire to do this version, then you can join the project and do it.

    How to help the project?

    • Join writing code. The range of tasks is very diverse, there is work for every taste.
    • Testing. No one is immune from mistakes. The faster possible errors are found, the better the application will be.
    • If you know other languages, you can translate the application into them.
    • Assist with writing documentation.
    • To support the project financially. The project is free for users, but I still have expenses for it. For example, on an electronic signature. I can not afford to release an application without a signature.


    → Project page on GitHub
    → Project site

    I will be glad to answer your questions, if any.

    Also popular now: