DenyHosts安装及配置

本文详细介绍了在安装denyhosts时遇到Python版本不匹配的问题,包括问题现象、解决步骤以及最终的解决方案。通过修改配置文件并解决Python版本冲突,成功解决了denyhosts的安装问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章来源:http://www.cnblogs.com/xia/archive/2011/02/11/1951257.html

http://moo1985.blog.51cto.com/401365/290662

1.解压源码包

tar zxvf DenyHosts-2.6.tar.gz    

2.进入到解压目录

cd DenyHosts-2.6

3.通过python安装(提前确认下python的版本,并且确认下系统安装了几个版本的python,如果是两个,可能会出问题)

python setup.py install

4.进入到安装目录

cd /usr/share/denyhosts

5.修改配置文件的名字:

#denyhosts.cfg为配置文件

cp denyhosts.cfg-dist denyhosts.cfg

#daemon-control为启动程序

cp daemon-control-dist daemon-control 

#对daemon-control进行软连接,方便管理

ln -s /usr/share/denyhosts/daemon-control /etc/init.d

现在安装完成了

启动denyhosts

/etc/init.d/daemon-control start

设置开机启动

chkconfig daemon-control on

=====================================================================

下面是由于python版本引发的问题

问题现象:

starting DenyHosts:   /usr/bin/env python /usr/bin/denyhosts.py --daemon --config=/usr/share/denyhosts/denyhosts.cfg
python: can't open file '/usr/bin/denyhosts.py': [Errno 2] No such file or directory
经过查找发现denyhosts.py在目录/usr/local/bin/目录下,于是修改daemon-control文件
#vi daemon-control
DENYHOSTS_BIN   = "/usr/bin/denyhosts.py"
DENYHOSTS_LOCK  = "/var/lock/subsys/denyhosts"
DENYHOSTS_CFG   = "/usr/share/denyhosts/denyhosts.cfg"
 
将第一行修改为DENYHOSTS_BIN   = "/usr/local/bin/denyhosts.py"
在运行还会提示错误:导入Python版本错误的提示。如:
Traceback (most recent call last):
File "/usr/local/bin/denyhosts.py", line 5, in
import DenyHosts.python_version
ImportError: No module named DenyHosts.python_version
       到这里错误很明了了,经过查询发现版本不对会导致这个问题。
 
       分析后发现原因在此:以前本机已经有一个python2.4的版本,使用rpm安装的,默认的路径是/usr/lib/python2.4,因为要升级python到2.5,也没有对卸载这个2.4的版本,使用编译安装的python2.5,安装路径并没有配置,这默认安装到/usr/local/lib/python2.5这个路径,而目前激活的python环境是2.5的,可能因为denyhosts安装时会根据环境查找安装,因此会在/usr/local/lib/python2.5/site-packages路径下安装Denyhosts这个文件夹。当运行denyhosts时,脚本会指定使用的是/usr/lib/python*这个路径的python里(暂时没找到脚本哪个地方指定),因此它无法定位python的版本,会出现这个错误。
       最快速的解决方法是把/usr/local/lib/python2.5/site-packages路径下的Denyhosts文件夹整个拷贝到2.4的安装目录下即可。
       进入/usr/local/lib/python2.5/site-packages/目录
#cd /usr/local/lib/python2.5/site-packages/
#cp –rp Denyhosts /usr/lib/python2.4/ site-packages/
这样之后便可以启动Denyhosts了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值