SSH using Your Apple IIe Retro Computer & Get Stuff Done!

What you need:

Modern computer: A computer that will run a Telnet server, I used my Macbook Pro.

Get the reverse shell setup on the Macbook Pro

You need to have a listener setup waiting for a connection and then be able to deliver a reverse shell. Socat is ideal for this. Here is what to do.

brew install socat
cd /Library/LaunchDaemons
sudo su
vi login.plist
<plist version=”1.0">
<dict>
<key>Label</key>
<string>com.retrogeeks.bbs</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/socat</string>
<string>-</string>
<string>EXEC:”/usr/bin/login -p”,pty,setsid,setpgid,stderr,ctty</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>TERM</key>
<string>vt100</string>
</dict>
<key>SessionCreate</key>
<false/>
<key>Sockets</key>
<dict>
<key>Listeners</key>
<dict>
<key>Bonjour</key>
<false/>
<key>SockProtocol</key>
<string>TCP</string>
<key>SockServiceName</key>
<integer>6666</integer>
</dict>
</dict>
<key>inetdCompatibility</key>
<dict>
<key>Wait</key>
<false/>
</dict>
</dict>
</plist>

Dip switch settings on SSC

Make sure the serial connection for your SSC is configured for ProTerm3.1.

The actual dip switch settings used on my SSC for Proterm3.1

Install Proterm 3.1

Even installing running Proterm 3.1 (PT) was a challenge. This is basically because you need to make sure you have the correct hardware spec and serial card setup. I’ll explain this as we go along.

My Apple //e Proterm3.1 screen for the first connection to my home Macbook Pro

Connection to the outside world

The idea is to connect into to your home Macbook by connecting to its IP address and listening port for the reverse shell. The telnet connection really. You should be able to do this by clicking Dial on the Proterm3.1 software connect screen. From there run ssh to any internet host. For me it didn’t work.

socat tcp-listen:6666, tcp:localhost:23telnetd -debug 23
ps -ef | grep login0   129     1   0 16Feb22 ??         0:00.32 /System/Library/CoreServices/logind501   144     1   0 16Feb22 ??         1:23.99 /System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow console501   494     1   0 16Feb22 ??         0:00.02 /System/Library/PrivateFrameworks/login.framework/Versions/A/XPCServices/LoginUserService.xpc/Contents/MacOS/LoginUserService0   526   452   0 16Feb22 ttys000    0:00.06 login -pfl haseeb /bin/bash -c exec -la zsh /bin/zsh501  1618  1279   0 16Feb22 ttys001    0:00.68 /bin/zsh --login0  3071   452   0 16Feb22 ttys005    0:00.05 login -pfl haseeb /bin/bash -c exec -la zsh /bin/zsh0 81556   452   0 18Feb22 ttys012    0:00.13 login -pf haseeb0  3773   452   0 16Feb22 ttys013    0:00.04 login -pfl haseeb /bin/bash -c exec -la zsh /bin/zsh

Useful links:

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store