Monthly Archives: November 2016

Remote Desktop Protocol [RDP] and OS X

So, I had occasion to try and connect to a windows machine from my Mac. As a long time windows user, my default goto for this is of course Microsoft’s Remote Desktop Protocol. And as luck would have it, OS X/macOS ships with a client called Remote Desktop Connection for Mac (version 2.1.1 build 110309) though from the copyright notices this looks like it hasn’t been touched since 2010… and that is the problem.

On attempting to connect to anything half way recent e.g. Server 2012, Win10, etc. you are thrown the very helpful error “Remote Desktop Connection cannot verify the identity of the computer that you want to connect to. Try reconnecting to the Windows-based computer, or contact our administrator.”

It turns out that Microsoft improved the security of RDP (always a good thing) to make use of something called Network Level Authentication [NLA]. This happened the same time Windows moved from Terminal Services to Remote Desktop Services.

What’s the difference? When connecting to a Terminal Server, a user starts a session and types in their credentials. When using an RD Session Host server, a user typically enters credentials into a client-side dialog box. NLA forces the client computer to present user credentials for authentication before the server will create a session for that user.

Because of that process, it’s sometimes called “front authentication.” Servers that are running Windows Server 2008/Vista or later, and clients running Windows XP SP3 or later, support NLA. Because NLA relies on a technology called Credential Security Support Provider [CredSSP] Protocol, if you’re using a Remote Desktop Protocol [RDP] client for another OS, you’ll need a client that supports NLA.

Microsoft Remote Desktop Connection Client for Mac doesn’t.

Fortunately there is an alternative that does. Via the AppStore, search for ‘Microsoft Remote Desktop’ – Version 8.0.36 (Build 27228) is what I have today. Install this, try and connect to your Windows machine (Win10 for me) and you are in business.

 

Enabling telnet access on DCS-7110

Very nice outdoor bullet camera that the D-Link DCS-7110 is, managing it is a pain as the main web interface still uses Active-X, and seems to be coded to IE6. Fortunately, it is actually running linux under the hood, so if you know what you are doing, you can edit the configuration directly.

Step 1 is to enable the telnet server, by using this link:

http://<camera-ip>/cgi-bin/admin/mod_inetd.cgi?telnet=on

Now we can telnet onto the device using the same credentials as the web

[user.network][~]=> telnet A.B.C.D
Trying A.B.C.D...
Connected to A.B.C.D.
Escape character is '^]'.

Network-Camera login: <username>
Password:
~ #
~ # ls
back.tar.gz imgbufmgr s0 s1 s2 s3 s4
~ # cd s0
~/s0 # ls

All the interesting config that I could see lives under /etc

~/s0 # cd /
/ # ls
bin drivers home linuxrc proc sbin tmp usr www
dev etc lib mnt root sys tmpfs var

When you are done, be sure to disable the telnet server again, and reboot the camera for the changes to take effect.

http://<camera-ip>/cgi-bin/admin/mod_inetd.cgi?telnet=off


> telnet A.B.C.D
Trying A.B.C.D...
telnet: connect to address A.B.C.D: Connection refused
telnet: Unable to connect to remote host