-
Notifications
You must be signed in to change notification settings - Fork 781
Licensing / Multi-user access / CAL #926
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
You can have as many ssh connections as you want at the same time through any ssh client. |
Hello @bagajjal , I'm not asking about the technical possibility of multiple connections - that is obviously possible. For example, to the best of my understanding, On "windows 10 home" only one user is allowed to be connected remotely at a single time (e.g. with remote desktop). Another example: for desktop windows licenses (e.g. "Windows 10 pro"), you are not allowed to use them as servers (see here: https://www.microsoft.com/en-us/licensing/product-licensing/faq-product-licensing.aspx , under "Windows client operating system" , question "Can I use Windows Pro or Enterprise like a "server" to host applications?" the answer is a clear "no"). And so my question is: EDIT: Thanks! |
Let's answer this in two parts, with the easy part first. The answer to question 1 is the easy one. You need a Windows Server CAL (>= version on the server) for every user or device that is accessing that server - directly or indirectly. It doesn't matter what protocol is being used. OpenSSH is the same as any other type of access to that server. Now to the hard question. You asked "...does it allow...", and the answer to that question is, "quite probably". But I don't think that's what you're really looking to have answered. Windows 10 will allow up to 20 TCP connections. So technically, it probably allows it. But I assume, based on the category of this question, that you meant "is this legit?" The answer to that is a much easier, "No." I've attached the pertinent info below, from the Oct. 2017 Product Terms, but the document linked in earlier replies also includes some of this. Number 5 is your deal-killer. While the software may function, and allow you to create this non-compliance scenario, it is indeed non-compliant. The only way to rectify it is to limit the software to only allow a single user (of a device licensed for Windows, as mentioned), or install it on a Windows Server OS (and ensure proper CAL coverage). Also, when Microsoft says "file services" in that context, you can likely assume - absent any useful clarification from them - that that means "Windows File and Printer sharing". I would not assume it means any other type of file sharing. Hope that helps; ****** Microsoft Product Terms, October, 2017 ******
|
@agordon that's a really good question! I want to make sure I get the language exactly right, let me get back to you. :) |
Just wanted to give an update here that I'm still talking to folks about this. Hoping to provide a real update soon. |
Wes Miller is generally correct, but there's a very important exception here as well as an alternative.
A Web Workload is defined in Product Terms quite broadly.
The Alternative |
@mslicensing , Now to discuss things in a more concrete way:
Thanks! |
I am not an official Microsoft account. MSlicensing is my professional Twitter handle and I decided to reuse it here. I am not endorsed by Microsoft in any way. Microsoft doesn't like me. (And I have some opinions about them.) One thing I'll add that may have tangential value. It should be fairly obvious that SharePoint is a Web workload but it may not be well known that, since SharePoint 2013, external users can access SharePoint without requiring SharePoint CALs, or ECs, or some special version of SharePoint. Ditto for Exchange (there's an exception with Exchange I won't mention unless someone asks), and Lync/Skype. Paul DeGroot |
I should address the Windows desktop issue as well. There are no CALs or ECs for the desktop OS. The only limit I know of is in the OEM EULA (which applies even to corporate desktops, since MS doesn't sell Windows OS through volume licensing, but only upgrades to Windows obtained elsewhere, usually the OEM. The Windows 10 OEM EULA says
The current Product Terms generally confirm the EULA. It appears to make it a bit more restrictive, with no mention of data syncing. So take that as either an unlimited right to sync data or a complete prohibition on it. (Love that MS ambiguity.) If this every came up in an audit I'd demand that MS show me where it is prohibited. From Product Terms
Some history Paul DeGroot |
@mslicensing - thanks again. very useful information. Continuing in the Windows Desktop context:
Thanks again! |
MS doesn't specify this, but the general consensus is that this is a maximum of 20 concurrent connections. But here are some other situations where MS addresses PC-to-PC communication. Second, any other device can connect to a Windows device and use it remotely (in any mode, gui or command line) if the accessing device is licensed for the same version and edition of Windows. I generally treat this to include legal downgrades. So if my PC is licensed for Windows 10 and yours is running Windows 7, I can connect to your PC because Windows 7 is a legal downgrade from Windows 10.
This doesn't allow much concurrency, however. The next rule says
This combination of rules means that you can theoretically create a farm of physical Windows devices that external users could access, but you'd have to detect their Windows version and edition of the accessing device and match it to something on your side. Then they have reasonable freedom to do anything. But there's no concurrency there. These cannot be virtual devices. That opens a whole new can of worms. Maybe you can describe a specific scenario. How many devices to be accessed? From how many devices? Are users all part of the same organization or could they come from anywhere? Without that I'd see if I could squeeze what I'm doing into what is permitted. How far can you stretch "file services"? |
My first scenario is simple (or at least sounds simple to me):
Under this scenario, can 20 concurrent users connect to my machine in the manner described above? As a variation: if only one user is defined on the windows machine (e.g. "Administrator"), Second Scenario, for SFTP: These are the exact scenarios - I'm really looking for a legal way to provide such publicly available machine. Thanks! |
At first glance, I would say the second scenario is legal, under the category of "File Services." The rights I have been quoting are for the Professional edition, but I just checked Windows 7 Home Premium and it allows 20 connections for
I can't see the first scenario being legal or doing it legally it won't meet your requirements. If you licensed the OS via a volume licensing program (e.g., you buy a Windows Pro upgrade through the Open License program) and you can limit it to people who are using the same version and edition of Windows as your Windows box is licensed for, then the Licensed Device Right (access from a device with the same Windows license) would apply. But your users, including the Macs and Android devices would also need Windows Pro licenses. Sounds like a dead end. Paul |
At the technical level, is the problem perhaps that Windows does not currently notice that a new user has logged into it via sshd, because sshd does not currently (as of 0.0.24.0) behave like a terminal service and create a new session id for each user login (and keeps instead all user processes within session 0, which is only meant for services, i.e. the user does not show up when you run QUERY SESSION)? #996 |
One of the fundamental principles of Microsoft licensing is this one, from Microsoft Product Terms: |
@joeyaiello - any updates on an official answer for SSH connection licensing? |
@joeyaiello - follow-up two years later :) any updates on an official answer for SSH connection licensing? |
A process started by sshd does not have access to any window station |
@maertendMSFT is the current PM for OpenSSH. |
Markus - this may be the case, but the rules as I noted in 2017 haven't changed. If Microsoft wants to demarcate SSH as not needing to meet the regular licensing rules of the Windows client, the entry in the Product Terms should be updated to reflect that. As of right now, it's not special-cased. |
@bagajjal @maertendMSFT - fours years later, another ping ... |
Hello,
Does using OpenSSH on windows requires client access license (CAL) for every connection?
In particular,
(assuming users connected through SSH only run command-line programs, never GUI or RDS etc)
Sorry if this is slightly off-topic for the github repository, but there doesn't seem to be any reliable information regarding SSH connection licensing anywhere...
Any feedback is highly appreciated.
Thanks!
The text was updated successfully, but these errors were encountered: