403Webshell
Server IP : 216.92.14.13  /  Your IP : 216.73.216.171
Web Server : Apache
System : Linux vps4089.pairvps.com 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64
User : rmlac2fmr ( 1040637)
PHP Version : 8.2.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/fail2ban/testcases/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/fail2ban/testcases/servertestcase.pyc
�
E��Sc@sVdZdZdZddlZddlZddlZddlZddlZddlZddl	m
Z
mZmZddl
mZmZddlmZddlmZd	ejfd
��YZdefd��YZd
ejfd��YZdefd��YZdefd��YZdejfd��YZdejfd��YZdS(s
Cyril Jaquiers Copyright (c) 2004 Cyril JaquiertGPLi����N(tRegext	FailRegextRegexException(tServertlogSys(tJail(tUnknownJailExceptiont	StartStopcBs#eZd�Zd�Zd�ZRS(cCs0t�|_|jjd�|jjt�dS(sCall before every test case.iN(Rt_StartStop__servertsetLogLeveltstarttFalse(tself((s//usr/share/fail2ban/testcases/servertestcase.pytsetUp#scCs|jj�dS(sCall after every test case.N(R	tquit(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttearDown)scCsGd}|jj|�|jj|�tjd�|jj|�dS(NtTestCasei(R	taddJailt	startJailttimetsleeptstopJail(R
tname((s//usr/share/fail2ban/testcases/servertestcase.pyttestStartStopJail-s

(t__name__t
__module__RRR(((s//usr/share/fail2ban/testcases/servertestcase.pyR!s		t
TestServercBseZd�Zd�ZRS(cOsdS(N((R
targstkwargs((s//usr/share/fail2ban/testcases/servertestcase.pyR
5scOsdS(N((R
RR((s//usr/share/fail2ban/testcases/servertestcase.pytsetLogTarget7s(RRR
R(((s//usr/share/fail2ban/testcases/servertestcase.pyR4s	tTransmitterBasecBsGeZd�Zd�Zddd�Zdd�Zd�Zd�ZRS(cCs�|jj|_tjdd�\}}tj|�tjdd�\}}tj|�|jj||dt�d|_	|jj
|j	d�dS(sCall before every test case.s
fail2ban.sockttransmittersfail2ban.pidtforcet	TestJail1tautoN(tservert_Server__transmttransmttempfiletmkstemptostcloseRRtjailNameR(R
tsock_fdt	sock_namet
pidfile_fdtpidfile_name((s//usr/share/fail2ban/testcases/servertestcase.pyR<s

	cCs|jj�dS(sCall after every test case.N(R$R(R
((s//usr/share/fail2ban/testcases/servertestcase.pyRHscCs�d||g}d|g}|dk	rJ|jd|�|jd|�n|dkr_|}n|j|jj|�d|f�|j|jj|�d|f�dS(Ntsettgetii(tNonetinserttassertEqualR&tproceed(R
tcmdtinValuetoutValuetjailtsetCmdtgetCmd((s//usr/share/fail2ban/testcases/servertestcase.pyt
setGetTestLs	"cCs�d||g}d|g}|dk	rJ|jd|�|jd|�n|jj|�d}|j|jj|�dd�|j|jj|�d|f�dS(NR0R1ii(R2R3R&R5R4(R
R6R7R9R:R;t	initValue((s//usr/share/fail2ban/testcases/servertestcase.pyt
setGetTestNOKXs cCsOd|}d|}|j|jjd||g�dgf�x�t|�D]u\}}|j|jjd|||g�d||d f�|j|jjd||g�d||d f�qLWx�t|�D]u\}}|j|jjd|||g�d||df�|j|jjd||g�d||df�q�WdS(NtaddtdelR1iR0i(R4R&R5t	enumerate(R
R6tvaluesR9tcmdAddtcmdDeltntvalue((s//usr/share/fail2ban/testcases/servertestcase.pytjailAddDelTestes$

%c	Csdd|}d|}|dkr)|}n|j|jjd||g�dgf�x�t|�D]u\}}|j|jjd|||g�d||d f�|j|jjd||g�d||d f�qaWx�t|�D]u\}}|j|jjd||dg�d||df�|j|jjd||g�d||df�q�WdS(NR?R@R1iR0i(R2R4R&R5RA(	R
R6tinValuest	outValuesR9RCRDRERF((s//usr/share/fail2ban/testcases/servertestcase.pytjailAddDelRegexTestzs(

	%N(	RRRRR2R<R>RGRJ(((s//usr/share/fail2ban/testcases/servertestcase.pyR:s		
	tTransmittercBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs#t�|_tt|�j�dS(N(RR$tsuperRKR(R
((s//usr/share/fail2ban/testcases/servertestcase.pyR�scCs#|j|jjdg�d�dS(Ntstopi(iN(R4R&R5R2(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestStopServer�scCs#|j|jjdg�d�dS(Ntpingitpong(iRP(R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestPing�scCsXtj�}|j|jjddg�d�tj�}|j||ddd�dS(NRt1iitplaces(iN(RR4R&R5R2tassertAlmostEqual(R
tt0tt1((s//usr/share/fail2ban/testcases/servertestcase.pyt	testSleep�s"cCsd}d}d}|j|jjd|dg�d|f�|j|jjd|g�d|f�|j|jjd|dg�dd�|j|jjd|d	g�d|f�|j|jjd|jdg�dd�|j|jjdd
dg�dd�dS(Nt	TestJail2t	TestJail3t	TestJail4R?tpollingisinvalid backendiR#tall(R4R&R5R+(R
tjail2tjail3tjail4((s//usr/share/fail2ban/testcases/servertestcase.pyttestAddJail�s%(#%&cCsw|j|jjd|jg�d�tjd�|j|jjd|jg�d�|jt|j	j
|j�dS(NRiiRM(iN(iN(R4R&R5R+R2RRtassertRaisesRR$tisAlive(R
((s//usr/share/fail2ban/testcases/servertestcase.pyR�s
cCs�|jjdd�|j|jjd|jg�d	�|j|jjddg�d
�tjd�|j|jjddg�d�tjd�|j	t
|jj|j�|j	t
|jjd�dS(NRXR#Rig�������?RMR\i(iN(iN(iN(R$RR4R&R5R+R2RRRaRRb(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestStartStopAllJail�s
"
cCs�|j|jjd|jddg�dtf�|j|jjd|jddg�dtf�|j|jjd|jddg�dd�dS(NR0tidletonitofftCATi(R4R&R5R+tTrueR(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailIdle�s

"cCsq|jdddd|j�|jdddd|j�|jdddd|j�|jdd	d|j�dS(
Ntfindtimet120ixR9t60i<s-60i���tDog(R<R+R>(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailFindTime�scCsq|jdddd|j�|jdddd|j�|jdddd|j�|jdd	d|j�dS(
Ntbantimet600iXR9t50i2s-50i���tCat(R<R+R>(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailBanTime�scCs�|jddd|j�|jddd|j�|jddd|j�d}|j|jjd|jd|g�d	�dS(
NtusednstyesR9twarntnotFishR0i(isno(R<R+R4R&R5(R
RF((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailUseDNS�scCs�|jj|j�|j|jjd|jddg�d	�tjd�|j|jjd|jddg�d
�tjd�|j|jjd|jddg�d�|j|jjd|jddg�dd�dS(NR0tbanips	127.0.0.1iitBadgertunbanips192.168.1.1(is	127.0.0.1(iR{(is	127.0.0.1(R$RR+R4R&R5RR(R
((s//usr/share/fail2ban/testcases/servertestcase.pyt
testJailBanIP�s 

		cCsq|jdddd|j�|jdddd|j�|jdddd|j�|jdd	d|j�dS(
Ntmaxretryt5iR9t2is-2i����tDuck(R<R+R>(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailMaxRetryscCs�|jddddg|j�d}|j|jjd|jd|g�d|gf�|j|jjd|jd|g�d|gf�|j|jjd	|jdg�d|gf�|j|jjd|jd
|g�dgf�dS(Ntlogpathstestcases/files/testcase01.logstestcases/files/testcase02.logstestcases/files/testcase03.logstestcases/files/testcase04.logR0t
addlogpathiR1t
dellogpath(RGR+R4R&R5(R
RF((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailLogPaths&
cCsEd}|jjd|jd|g�}|jt|dt��dS(Nsthis_file_shouldn't_existR0R�i(R&R5R+t
assertTruet
isinstancetIOError(R
RFtresult((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailLogPathInvalidFile(s	cCsxtjdd�}|d}tj||�|jjd|jd|g�}|jt|dt	��tj
|�dS(Ntprefixttmp_fail2ban_broken_symlinks.slinkR0R�i(R'tmktempR)tsymlinkR&R5R+R�R�R�tunlink(R
RtsnameR�((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailLogPathBrokenSymlink/s
	cCs�|jddddg|j�d}|j|jjd|jd|g�d|gf�|j|jjd|jd|g�d||gf�|j|jjd|jdg�d||gf�|j|jjd|jd	|g�d|gf�dS(
Ntignoreips	127.0.0.1s192.168.1.1s8.8.8.8R0taddignoreipiR1tdelignoreip(RGR+R4R&R5(R
RF((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailIgnoreIP9s&
cCs|jddd|j�dS(Nt
ignorecommandsbin R9(R<R+(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailIgnoreCommandUscCs�|jddddgdddg|j�|j|jjd|jd	d
g�dd�|j|jjd|jd	d
g�dd�dS(Nt	failregexsuser john at <HOST>sAdmin user login from <HOST>s failed attempt from <HOST> agains1user john at (?:::f{4,6}:)?(?P<host>[\w\-.^_]*\w)s:Admin user login from (?:::f{4,6}:)?(?P<host>[\w\-.^_]*\w)s>failed attempt from (?:::f{4,6}:)?(?P<host>[\w\-.^_]*\w) againR0taddfailregexs
No host regexiii�(RJR+R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyt
testJailRegexXs 	
		cCs�|jddddgdddg|j�|j|jjd|jddg�d	d
�|j|jjd|jddg�d	d
�dS(Ntignoreregexs	user johnsAdmin user login from <HOST>sDont match me!s:Admin user login from (?:::f{4,6}:)?(?P<host>[\w\-.^_]*\w)R0taddignoreregexsInvalid [regexiii2(RJR+R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailIgnoreRegexps 	
		cCs�|jg}|j|jjdg�ddt|�fddj|�fgf�|jjdd�|jd�|j|jjdg�ddt|�fddj|�fgf�dS(NtstatusisNumber of jails	Jail lists, RXR#(	R+R4R&R5tlentjoinR$Rtappend(R
tjails((s//usr/share/fail2ban/testcases/servertestcase.pyt
testStatus�s.
c	Cs_|j|jjd|jg�dddddgfgfdd
dd
gfgfgf�dS(NR�itfiltersCurrently failedsTotal faileds	File listtactionsCurrently bannedsTotal bannedsIP list(sCurrently failedi(sTotal failedi(sCurrently bannedi(sTotal bannedi(R4R&R5R+(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestJailStatus�scCsTd}dddddg}ddd	d
dg}|j|jjd|jd
|g�d|f�|j|jjd|jd
|g�d|f�xQt||�D]@\}}|j|jjd|j|||g�d|f�q�WxNt||�D]=\}}|j|jjd|j||g�d|f�q�W|j|jjd|jd|ddg�d�|j|jjd|jd|dg�d�|j|jjd|jd|dg�dd�|j|jjd|jd|dg�d�|j|jjd|jd|g�d�|j|jjd|jddg�dd�dS(NtTestCaseActiontactionstartt
actionstoptactioncheckt	actionbantactionunbansAction StartsAction StopsAction Checks
Action BansAction UnbanR0t	addactioniR1tsetcinfotKEYtVALUEtcinfot
InvalidKeyitdelcinfot	delactions
Doesn't exist(iR�(iR�(iN(iN(R4R&R5R+tzipR2(R
R�tcmdListtcmdValueListR6RF((s//usr/share/fail2ban/testcases/servertestcase.pyt
testAction�s`		

						cCs*|j|jjddg�dd�dS(NtINVALIDtCOMMANDii(R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestNOK�scCs-|j|jjdddg�dd�dS(NR0R�R�ii(R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyt
testSetNOK�scCs-|j|jjdddg�dd�dS(NR1R�R�ii(R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyt
testGetNOK�scCs-|j|jjdddg�dd�dS(NR�R�R�ii(R4R&R5(R
((s//usr/share/fail2ban/testcases/servertestcase.pyt
testStatusNOK�s(RRRRNRQRWR`RRcRiRnRsRyR}R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s//usr/share/fail2ban/testcases/servertestcase.pyRK�s6																	
								7			tTransmitterLoggingcBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCsCt�|_|jjd�|jjd�tt|�j�dS(Ns	/dev/nulli(RR$RR
RLR�R(R
((s//usr/share/fail2ban/testcases/servertestcase.pyR�scCs�g}xHtd�D]:}tjdd�}|j|d�tj|d�qWx|D]}|jd|�qXWd}|jd|�|jj	dd	g�x|D]}tj
|�q�W|jdd
�|jdd�dS(Nitfail2banR iit	logtargets/this/path/should/not/existR0s	/dev/nulltSTDOUTtSTDERR(txrangeR'R(R�R)R*R<R>R&R5tremove(R
t
logTargetst_ttmpFilet	logTargetRF((s//usr/share/fail2ban/testcases/servertestcase.pyt
testLogTarget�s

cCs^tjjd�r4tjdkr4tjd��ntjjd�sJdS|jdd�dS(Ns/dev/logiis'/dev/log' not presentR�tSYSLOG(ii(R)tpathtexiststsystversion_infotunittesttSkipTestR<(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestLogTargetSYSLOGs
"cCs�|jddd�|jddd�|jddd�|jddd	�|jdd
d�|jddd
�|jdd�dS(Ntloglevelt4it3iR�iRRis-1i����t0itBird(R<R>(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestLogLevelscCs$|j|jjdg�d�z�tjd�\}}tj|�|jjd�|j|jjdd|g�d|f�t	j
d�z-tjd�\}}tj|�tj||�t	j
d	�|j|jjdg�d�t	j
d
�t|d�}t
rg|j|j�jd��|j|j�jd
��|jt|j�|j�nt|d�}t
r�|j|j�jd��|jt|j�|j�nWdtj|�XWdtj|�X|j|jjdddg�d�|j|jjdg�d�dS(Nt	flushlogsisrolled oversfail2ban.logiR0R�sBefore file movedsAfter file movedsAfter flushlogstrsBefore file moved
sAfter file moved
sAfter flushlogs
R�tflushed(isrolled over(isrolled over(isSTDERR(iR�(R4R&R5R'R(R)R*R$R
RRvtrenametopenRhR�tnexttendswithRat
StopIterationR�(R
tftfntf2tfn2((s//usr/share/fail2ban/testcases/servertestcase.pyt
testFlushLogss:
+




%(RRRR�R�R�R�(((s//usr/share/fail2ban/testcases/servertestcase.pyR��s
					t	JailTestscBseZd�ZRS(cCs,d}t|�}|j|j�|�dS(Ntveryveryverylongname(RR4tgetName(R
tlongnameR9((s//usr/share/fail2ban/testcases/servertestcase.pyttestLongName;s(RRR�(((s//usr/share/fail2ban/testcases/servertestcase.pyR�9st
RegexTestscBs#eZd�Zd�Zd�ZRS(cCs=|jttd�|jttd�|jttd�dS(Ntt s	(RaRR(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestInitCscCsN|jttd��jdd�d�|jttd��jd��dS(Ntat"t's
Regex('a')s<HOST>s
FailRegex((R4tstrRtreplaceR�Rt
startswith(R
((s//usr/share/fail2ban/testcases/servertestcase.pyttestStrIs(cCsi|jttd�td�}|j|j��|jd�|j|j��|jt|j�dS(NR�s	%%<HOST>?s%%(RaRRtassertFalset
hasMatchedtsearchR�tgetHost(R
tfr((s//usr/share/fail2ban/testcases/servertestcase.pyttestHostOs
(RRR�R�R�(((s//usr/share/fail2ban/testcases/servertestcase.pyR�As		(t
__author__t
__copyright__t__license__R�tsocketRR'R)R�tserver.failregexRRRt
server.serverRRtserver.jailRtcommon.exceptionsRRRRRRKR�R�R�(((s//usr/share/fail2ban/testcases/servertestcase.pyt<module>sHX�XP

Youez - 2016 - github.com/yon3zu
LinuXploit