If you're having problems booting up in normal mode, you can boot into Safe Mode instead. Just hold the Shift key when your computer is booting up to launch Safe Mode. Open the Mac App Store and install the High Sierra security update 2019-003 from there. Reboot into normal mode and see if the issues still persist. Open that app from your Applications folder to begin installing the operating system. MacOS Sierra 10.12 can upgrade El Capitan, Yosemite, Mavericks, Mountain Lion, or Lion; OS X El Capitan 10.11 can upgrade Yosemite, Mavericks, Mountain Lion, Lion, or Snow Leopard; OS X Yosemite 10.10 can upgrade Mavericks, Mountain Lion, Lion, or Snow Leopard.
I recently updated my copy of OS X and I'm now having trouble with SSH. (I jumped a few versions but based on other posts it looks like the change to MacOS Sierra specifically was part of the problem).
Problem 1: SSH DSA
SSH DSA keys are no longer supported.
Fix
Common macOS High Sierra problems. While most new versions of macOS are relatively problem-free, it's not unknown for users to have issues – particularly with a beta or.0 release. Thankfully most are easy to resolve. Here's how to fix the most common High Sierra issues. High Sierra installer won't download. 1) add following lines to the 'Host.' block of /.ssh/config Host. UseKeychain yes AddKeysToAgent yes. Just add the snippet at the very beginning of /.ssh/config file if there is no existingHost. configuration block. 2) Then execute the following commands. Ssh-add -K /.ssh/idrsa. Modifying 'ssh' entries in /etc/services. To change the sshd port with this method, proceed as follows: Edit /etc/services, look for these entries: ssh 22/udp # SSH Remote Login Protocol ssh 22/tcp # SSH Remote Login Protocol and replace port 22 with a port of your choosing.
Replace the public copy of the DSA key on the server with an RSA public key.
For more information, see How to Fix: MacOS Sierra Upgrade Breaking SSH Keys by Jeff Reifman.
It provides roughly the same protection as a Marine Armor of one quality level above its own, or of Recon Armor two quality levels above its own. Gear. It also allows a pawn to reach the cap of 200% sharp protection at Legendary quality.
I already have an RSA public key that I use other places, so I'll upload that.
Of course, it can be tricky to access the server to add the key if your no longer able to SSH in. I used cPanel to add the new SSH key.
Problem 2: Prompt for Passphrase for Key
I'm being prompted for the passphrase for the RSA key I was already using for some of my sites each time I access the site via SSH.
I do not want to enter this each time.
Fix
I was able to add the following to the beginning of my SSH config file (~/.ssh/config
)
now when I type in my passphrase, it gets stored.
Relevant GitHub article
Sal Ferrarello (@salcode)
Sal is a PHP developer with a focus on the WordPress platform. He is a conference speaker with a background including Piano Player, Radio DJ, Magician/Juggler, Beach Photographer, and High School Math Teacher. Sal can be found professionally at WebDevStudios, where he works as a senior backend engineer.I've seen this question come up several times from users of macOS Sierra who use SSH after upgrading. It usually goes something like, 'Has anyone seen this since upgrading to Sierra?'
Another issue you might come across is your public key ceasing to work. If you connect with the verbose option (ssh -v hostname
), you might catch a bit like this in the output:
These aren't a Sierra issue per-se, but is more specifically related to the upgrade from OpenSSH 6.9 in El Capitan to OpenSSH 7.2 in Sierra. OpenSSH deprecated a number of methods and algorithms in 7.0. They are still supported, but are disabled by default. For more information, check out OpenSSH: Legacy Options.
That's all fine and dandy, but what you really want is a solution. You probably have some security appliance, router, or similar that doesn't support any other methods and you just need it to work. Perhaps like me, you have an older private key that isn't up to the new requirements, but you still need to use it. The options to fix these issues are KexAlgorithms +diffie-hellman-group1-sha1
and PubkeyAcceptedKeyTypes=+ssh-dss
. You can add these at the command line (ssh -o PubkeyAcceptedKeyTypes=+ssh-dss hostname
), but that's kind of a pain.
A more convenient way to use them is to add these options to your ~/.ssh/config
file. If you don't already have this config file, it's a plain text file you can create with your text editor of choice. At the top of the file, add:
Now your public key and the key exchange algorithm will work anywhere you connect. Perhaps you'd like a bit more granularity?
I'm being prompted for the passphrase for the RSA key I was already using for some of my sites each time I access the site via SSH.
I do not want to enter this each time.
Fix
I was able to add the following to the beginning of my SSH config file (~/.ssh/config
)
now when I type in my passphrase, it gets stored.
Relevant GitHub article
Sal Ferrarello (@salcode)
Sal is a PHP developer with a focus on the WordPress platform. He is a conference speaker with a background including Piano Player, Radio DJ, Magician/Juggler, Beach Photographer, and High School Math Teacher. Sal can be found professionally at WebDevStudios, where he works as a senior backend engineer.I've seen this question come up several times from users of macOS Sierra who use SSH after upgrading. It usually goes something like, 'Has anyone seen this since upgrading to Sierra?'
Another issue you might come across is your public key ceasing to work. If you connect with the verbose option (ssh -v hostname
), you might catch a bit like this in the output:
These aren't a Sierra issue per-se, but is more specifically related to the upgrade from OpenSSH 6.9 in El Capitan to OpenSSH 7.2 in Sierra. OpenSSH deprecated a number of methods and algorithms in 7.0. They are still supported, but are disabled by default. For more information, check out OpenSSH: Legacy Options.
That's all fine and dandy, but what you really want is a solution. You probably have some security appliance, router, or similar that doesn't support any other methods and you just need it to work. Perhaps like me, you have an older private key that isn't up to the new requirements, but you still need to use it. The options to fix these issues are KexAlgorithms +diffie-hellman-group1-sha1
and PubkeyAcceptedKeyTypes=+ssh-dss
. You can add these at the command line (ssh -o PubkeyAcceptedKeyTypes=+ssh-dss hostname
), but that's kind of a pain.
A more convenient way to use them is to add these options to your ~/.ssh/config
file. If you don't already have this config file, it's a plain text file you can create with your text editor of choice. At the top of the file, add:
Now your public key and the key exchange algorithm will work anywhere you connect. Perhaps you'd like a bit more granularity?
This allows the public key for all hosts, but only allows the diffie-hellman-group1-sha1
algorithm to be used with hosts matching the wildcard. Additionally, this example shows using a different username than your login on your local machine. There are a lot of options available, but these are the ones I use most. You might also find Compression yes
to be useful if you connect to hosts with low bandwidth links.
As an aside, if you are a macOS user using Terminal, I highly recommend checking out iTerm2. It's far superior to Terminal and has many features to improve the experience of using the shell.
How Fix Ssh Problem For Os X High Sierra Installer
FIN