From SME Server
Revision as of 14:13, 11 May 2010 by Timn (talk | contribs) (categorisation)

Denyhosts SSH for SME7


Unnilennium aka Jean-Philippe PIALASSE (Contrib)


  • Denyhosts bans hosts which failed too many login attempts to your ssh deamon.
  • It contains also a panel in the server manager to see who is blocked, add some allowed hosts not to block and enable or disable the service.

it needs the packages smeserver-denyhosts and denyhosts


  1. Log in (with username root) to the SMEserver console.
  2. Install smeserver-denyhosts
    /usr/bin/yum install smeserver-denyhosts --enablerepo=smecontribs
    You will get a y/N-question, answer y if it looks fine. There is no need to reboot the server.
  3. Open your webbrowser and go to the server-manager.
    Under "Security" there should be a new line named "SSH Denyhosts". You should go to it and configure all necessary allowed hosts before enabling the service. When done set status to 'enabled'.

Alternatively you can use the server-manager panel "Software installer" to add a new package and select smeserver-denyhosts (repo smecontribs must be enabled) then do the reconfiguration and reboot task, instead of steps 1 and 2, then refresh your browser and configure denyhosts,.

Editing configuration

Q) How can the denyhost configuration be customized?

A) You must copy the templates to the templates-custom directory and modify the appropriate fragments.

mkdir -p /etc/e-smith/templates-custom/etc/denyhosts.conf
cd /etc/e-smith/templates-custom/etc/denyhosts.conf/
cp ../../../templates/etc/denyhosts.conf/* .

Now edit the appropriate files. See the Denyhosts FAQ for details. When done make your changes effective:

signal-event conf-denyhosts

Q) How is an ip-address removed from the blocked list?

A) Edit the configuration file and and restart the service.

pico -w /etc/hosts.deny_ssh

Make required changes, then save & exit

ctrl + c

ctrl + x

/etc/init.d/denyhosts restart


yum remove smeserver-denyhosts denyhosts

or alternatively just remove them from the server-manager "Software installer"

Additional information

you can change the destination email account, instead of the default admin account, for this contribs using :

config setprop denyhosts AdminEmail youremail@yourdomaine.tld
signal-event conf-denyhosts

Check installed version

yum info installed smeserver-denyhosts