Ssh – How to enable ssh on startup in opensuse

opensusessh

My experience with Linux is limited and as part of a project, I ordered a Linux dedicated server. This is an unmanaged server with OpenSuSE 13.2. When I try to ssh into the server, I get a connection refused message

ssh: connect to host xxx.xxx... port 22: Connection refused

I think their default image does not comes with ssh enabled on startup but I may be wrong. They provide a rescue system which is a Linux system installed and loaded from ram for troubleshooting. When I load this, I can connect to the system via SSH. I can mount the hdd and make changes.

I'd like to know how to check and/or whatever configuration changes that need to be done to enable ssh on startup for OpenSuSE 13.2 from within a recovery system. I can provide any configuration file contents if required. I'm basically from a Windows background and hence if you can provide verbose steps, it will be helpful.

As part of my research, I checked init.d file, there was no sshd file in there, ssh is installed I guess as there exists files in /etc/ssh like `/etc/ssh/sshd_config.

Best Answer

1. Verify installation

Run which sshd to get the path it is called from. If you don't get /usr/sbin/sshd in response, it is most likely not installed.

2. Installing sshd

Run zypper in openssh to install the application.

3. Check firewall

Run the command cat /etc/sysconfig/SuSEfirewall2 | grep sshd.

You need to see FW_CONFIGURATIONS_EXT="sshd" - This means the firewall allows incoming traffic on port 22.

If you do not find it, you may add it using a text editor like this:

vi /etc/sysconfig/SuSEfirewall2 and locate the line where it says FW_CONFIGURATIONS_EXT="" and change it to FW_CONFIGURATIONS_EXT="sshd"

4. Check the service is running

systemctl status sshd | grep Active - If you get Active: inactive (dead) you need to start it with systemctl start sshd.

Run the command again systemctl status sshd | grep Active and you should now see Active: active (running) since ...

5. Enable SSH on startup

systemctl enable sshd