What is Ignision?
Ignision is the terminal server that we have developed for macOS, Windows, and Linux. It's a lot like Remote Desktop or VNC services in that it provides you a way of remotely accessing a desktop on a server/computer elsewhere in the world. Ignision currently only has one edition: standard, sometimes referred to as "Ignision SE" or "Ignision Standard Edition". Ignision also provides a custom login interface which will display information regarding how many people are currently logged in (remote and local) and if a remote login is occurring.
Ignision SE currently has the following features:
• Diagnostic Tool
• Auto Keyboard Mapping
• Remote Home Folders Support (NFS, SMB/CIFS)
• JSON Support
• Custom SSL/TSL Certificate Support
• RSA 4096 AES 512 CBC Encryption
• Encryption On/Off
• Server Fingerprint (Server Authentication)
• Multiple Connections (Ion)
• Directory Services Support (LDAP, OD, AD)
• Session Shadowing (Ignision)
• Server Lockdown Tools
• HTML5 Client
• Memory/CPU Use Optimization
• IONC Client Data File JSON Support
• Networking Printing
• Display Quality Control (Ion)
• Initial Client Scripting
• IONC File Modification Detection and Custom IONC Files (Ion Client
• On-Console Mode (1:1 Remote Control Session)
• Hide Console Mode (1:1 Remote Session With Console Locked)
• Remote Desktop Gateway Support
• RDP 8.1 Client Support (Clients Older Than XP SP2 Will Not Work At This Time)
How does Ignision Work?
Ignision simply runs as a daemon/service, named "IonServer", on the machine and "listens" for connections on TCP port 310 for Ion and TCP port 3389 for RDP (Remote Desktop Protocol). When an Ion connection comes in, Ignision validates the user name and password (either locally or via a directory service like Active Directory or LDAP) and, upon successfully validating the credentials, it then either creates a new user session for the connecting user or it connects to the existing session when there is one. (There will never be more than one user session for any particular user.) The new user session will automatically spawn a new instance of the "IonServer" process that runs with the UID of the user. This "IonServer" process running as the user is responsible for capturing screen data and sending it back to the client as well as receiving keyboard and mouse input from the client and sending it to OS X. It also immediately locks the new user session on the Mac console to prevent eavesdropping. Ion protocol data is relayed between the connected Ion Desktop Client and the IonServer running in the user session via the system daemon IonServer (running as root). The IonServer running in the user session and the Ion Desktop Client do not communicate directly with each other - the system daemon IonServer is always in the middle. If you connect using RDP (Remote Desktop Protocol), you actually end up connecting to an Ignision process named "rdp2ion" that translates your connection into the Ion protocol and connects to Ignision as if you where using the Ion client normally. The "rdp2ion" process is essentially a protocol bridge. This can all be visualized using the flow chart below:
Now, because of this design, there is an very important thing one must note: IonServer sessions stay open and running until you explicitly logout of that user or shutdown/restart the computer.
Is there a manual or something I can read for more info?
Absolutely, you can grab a copy of the Ignision SE manual here: