Problem med sync av denyhosts?  

Postat av rancor under

Många upplever problem med att synca bannade IP-adresser och dem för följande felmeddelande:

2010-07-15 14:23:51,381 - sync : ERROR long int exceeds XML-RPC limits
Traceback (most recent call last):
File "/usr/share/denyhosts/DenyHosts/sync.py", line 117, in receive_new_hosts
self.__prefs.get("SYNC_DOWNLOAD_RESILIENCY"))
File "/usr/lib/python2.6/xmlrpclib.py", line 1199, in __call__
return self.__send(self.__name, args)
File "/usr/lib/python2.6/xmlrpclib.py", line 1483, in __request
allow_none=self.__allow_none)
File "/usr/lib/python2.6/xmlrpclib.py", line 1132, in dumps
data = m.dumps(params)
File "/usr/lib/python2.6/xmlrpclib.py", line 677, in dumps
dump(v, write)
File "/usr/lib/python2.6/xmlrpclib.py", line 699, in __dump
f(self, value, write)
File "/usr/lib/python2.6/xmlrpclib.py", line 725, in dump_long
raise OverflowError, "long int exceeds XML-RPC limits"
OverflowError: long int exceeds XML-RPC limits
Detta går att åtgärda genom att göra följande
  1. Editera /var/lib/denyhosts/sync-timestamp och ersätt tidsstämpeln med 1276467300 (eller annan godkänd Unixtidsstämpel)
  2. Editera /usr/share/denyhosts/DenyHosts/sync.py och ändra rad 55:
    från:
    fp = open(os.path.join(self.__work_dir,
    SYNC_TIMESTAMP), "a")
    till:
    fp = open(os.path.join(self.__work_dir,
    SYNC_TIMESTAMP), "w")
Nästa gång denyhosts syncar så skall det gå bra

// rancor

3 kommentarer

Har aldrig riktigt "vågat" slå på denyhosts synkfunktion. Vill varesig sprida mina egna false positives, eller råka ut för andras diton. Dock är det inget jag har ägnat någon djupare analys.

Fast du tycker alltså att det funkar bra och att vinsten är värd eventuella risker?

Ja, jag tycker det är värt det i alla fall.

Inställningen "sync_download_threshold" bestämmer hur många olika denyhostsanvändare som måste rapporterat in en spärrad IP innan den laddas ner till din egen spärrlista. Risken finns fortfarande att du av misstag spärrar din egen IP och någon har sync_download_threshold = 1 vilket gör att det räcker med ett entry.

Jag kan hålla med om att server inte skall synka till klienter om det bara finns 1 rapporterare då misstag sker och det är dumt att avslöja sig/spärra av misstag.

// rancor

Tack för tipset om sync_download_threshold. Gör att det hela helt plötsligt känns betydligt robustare.

Skicka en kommentar