where did telnet go? (10.13 preview)

Is it just me or is the telnet client no longer present in macOS High Sierra? There doesn't appear to be an open source drop in replacement that works out of the box, and telnet + libtelnet combination from opensource.apple.com doesn't appear to work out of the box either. I think the telnet package that gentoo uses could be patched to work, but wanted to see if anyone wanted to weigh in here first before I spend too much time on that.

Replies

thank you. I used the other workaround

That is one of a number of system directories that is protected by SIP - System Integrity Protection. There are lots of instructions on the Internet about how to disable SIP. Do NOT do that. 3rd party software like ftp or telnet should be installed into /usr/local. This is not an Apple thing either. This is how it was always supposed to work. Apple just enforces it now. Any decent open source package should install into /usr/local by default. If it doesn't, I suggest avoiding it.

It doesn't have to be a 32bit program. I grabbed the source for telnet from macOS 10.12 (from opensource.apple.com) and built it using Xcode 9 beta 3, compiled as 64-bit, and it works fine so far.


If Apple doesn't put it back, someone (maybe me) will do the legwork to get a working replacement into "homebrew".

I would use /use/local/bin for any items not maintained by macOS.

Use the which command to find where a command is located. Many of the UNIX commands are supplied by Apple in /usr/bin, which should be in your path. It looks like my copy of /usr/bin/telnet is relatively recent, so I assume that it was in the last OS release. If you add your own telnet, you also have to check the order of the directories to make sure that you are using the correct code. Many items in /usr/bin are actually links to files in other directories. Do echo $PATH to see how your console is set up.


BradleyRossMacBook:~ bradleyross$ which telnet


/usr/bin/telnet


BradleyRossMacBook:~ bradleyross$ ls -l /usr/bin/telnet


-r-xr-xr-x 1 root wheel 117008 Mar 22 19:57 /usr/bin/telnet


BradleyRossMacBook:~ bradleyross$ ls -l /usr/bin/java


lrwxr-xr-x 1 root wheel 74 Jun 4 13:48 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java


BradleyRossMacBook:~ bradleyross$

telnet is good for debugging things, telnet *** 25, telnet xx 80 ... telnet *** 443 ...

There is no **/usr/bin/telnet** on High Sierra

Telnet is an incredibly useful tool to quickly determine if just about anything is responding on any port. It is a ping with attitude for debugging.


Can't believe Apple remove this very standard basic UNIX tool. Insanely Great san great.

Still shows in the Terminal interface as an option in High Sierra...


https://www.evernote.com/l/Atkmb6YDLaFJgrd7t4WS_X5asC_sLJXXZCE


(are they ever going to fix the image upload in this forum software!?)

Just copied telnet from my Sierra box (/usr/bin/telnet) over to High Sierra (/usr/local/bin) and it works fine. Used it to test the extended hello protocol repsonse from Apple's iCloud email SMTP server. (can't do that with SSH).


Filed Apple Bug Report 33917965 Telnet Missing High Sierra 10.13b5


In the event that you don't have it, I pulled it from my Apple server and zipped it here:

https://cerniuk.org/wiki/files/p1o2f332

While I agree it's not a bad idea to deprecate these insecure standard utilities by removing them from the standard install, they're still sometimes necessary when working with embedded stuff for IoT, as well as the occasional router.


Fortunately,

brew install inetutils

seems to work, installing `/usr/local/bin/telnet` and `ftp`, as well as the old favourites `rlogin`, `rsh`, `rcp`...

Works like a charm. Thanks.

FWIW - 25 year of systems and network management, masters degree in C.S. and I'd call anyone who doesn't see the immediate value of the telnet *cllient* for debugging purposes and legacy support a rambling ***** (pardon my French).


The decision to drop the telnet client from OS X (no, I refuse to call it "MacOS" since that's the 8-bit mishmash that ran the Macintosh) is utter lunacy. Although a graphics designer may _never_ have to operate the command line, let alone telnet, a lot of C.S. and I.T. professionals have bought into the Apple OS X platform. These individuals deserve the ounce of respect their dollar worth is.


From my observations, Apple has been in the dark hours of Tim Cook been nudging the Apple OS X platform steadily towards the design of the black box iPad. And for every little nudge (dropping telnet is one) I get more inclined to install Linux on my MBP.

If you've used telnet for basic connectivity tests, consider nc (netcat) instead.


Look how much easier nc is than telnet to see if I can reach port 2195 on gateway.push.apple.com.


nc -z gateway.push.apple.com 2195

Connection to gateway.push.apple.com port 2195 [tcp/] succeeded!



telnet gateway.push.apple.com 2195

Trying 17.188.155.159...

Connected to gateway.push-apple.com.akadns.net.

Escape character is '^]'.

^]

telnet> q

Connection closed.

Why should one want to use ssh instead of telnet? It's totally different use-cases. I don't want a telnet shell, but I want to debug my mailserver using telnet and check other services on the servers I have to administrate and telnet is THE tool for me to do that. As a server admin, I cannot live without telnet and I use a Mac because it gives me Linux power with the "it just works" environment. Pretty ******, if these tools go away.


By the way - I have 25 years experience in software development and hold a PhD in computer science, so I think I know what I talk about. Anyhow - it's ridiculous that there is even a discussion about "why don't you now do x instead of a", while a was around always and someone now decided to drop it, obviously without knowing what he or she does. We shouldn't discuss dirty workarounds and alternatives but just get telnet back. Period.