2/ Open the PuTTY client (usually putty.exe). You will now see the “PuTTY Configuration” window.
3/ On the left side, you will see a tree structure called “Category:”. There are four categories: Session, Terminal, Window, and Connection. Expand the “Connection” category and select “SSH”.
4/ On the right side, look in the middle:
for “Preferred SSH protocol version:”. Select version “2”.
5/ On the left side in the category tree structure, go back to “Session”.
6/ On the right side, look for the “Host Name (or IP Address)” input box at the top. Enter your server’s main IP address only.
eg 18.104.22.168 - Whatever. Ask your host if you don’t know what it is. Odds are that it will appear somewhere on you welcome email from them, or else if you have cpanel then you will be able to see it on their.
7/ Click ‘Open’ and a window appears.
You can actually just enter the hostname and click the Open button, as SSH is the default protocol.
8/ Click on the little empty green box with your left mouse. It will then fill with green and you will be able to type (This applies all the time)
There’s no need to click on the green box, just make sure the SSH window is active (not minimized) and you can start typing.
While this was a great guide for beginners on using SSH, my question is:
If you have access to SSH, it does not make sense to set the permissions like this just to use the web-based Magento Connect. You’re in SSH already, so use that instead.
On your server (or anyone who gets this error) you have PHP running as an Apache module (DSO). So processes spawned from the browser are ran by user nobody. So any files that Magento Connect downloads or updates will also be owned by user nobody.
This is why you have to set directories to 777, because this user does not have permission to mess with files with default 644 permissions (or directories with default 775 permissions). They aren’t owned by nobody, so they have to have full read/write permissions (bad).
When you’re in SSH, you’re logged in as the appropriate user for your site, so this user doesn’t need special permissions to do things.
Just use SSH to install extensions or upgrade Magento:
Now you don’t have to worry about setting your file permissions insecurely, and can take advantage of SSH to quickly get things done.
Also, for users who DO have root access to the server, avoid using this user to do things. You mentioned you have cPanel installed, so SSH in as this user, not root, otherwise, any process YOU initiate as root will then make any files/directories that are created now owned by user root, and not the user for that account.