From 09e6ed1405436b975cb41c89dc2517f0e73c54bb Mon Sep 17 00:00:00 2001 From: Michael Rash Date: Sat, 22 Oct 2011 16:48:30 -0400 Subject: [PATCH] added first GPG complete cycle SPA test --- test/conf/client-gpg/pubring.gpg | Bin 0 -> 2480 bytes test/conf/client-gpg/secring.gpg | Bin 0 -> 1350 bytes test/conf/client-gpg/trustdb.gpg | Bin 0 -> 1360 bytes test/conf/gpg_access.conf | 7 ++++ test/conf/server-gpg/pubring.gpg | Bin 0 -> 2480 bytes test/conf/server-gpg/secring.gpg | Bin 0 -> 1352 bytes test/conf/server-gpg/trustdb.gpg | Bin 0 -> 1360 bytes test/test-fwknop.pl | 65 +++++++++++++++++++++++++++++++ 8 files changed, 72 insertions(+) create mode 100644 test/conf/client-gpg/pubring.gpg create mode 100644 test/conf/client-gpg/secring.gpg create mode 100644 test/conf/client-gpg/trustdb.gpg create mode 100644 test/conf/gpg_access.conf create mode 100644 test/conf/server-gpg/pubring.gpg create mode 100644 test/conf/server-gpg/secring.gpg create mode 100644 test/conf/server-gpg/trustdb.gpg diff --git a/test/conf/client-gpg/pubring.gpg b/test/conf/client-gpg/pubring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..615e12f6ebbba9257d6f5502dce8ceae20ef3686 GIT binary patch literal 2480 zcmbuObD2U|DlBS~tTi2-_nhZFf4%>_fBl~4_x%3*eV%Wz02yqP^cgA*2F#jYJ0$Lt zrvr6Dc9uznfM0`M?SwQh&l&id*Q?ZaIezZHo-T=EzIt0)MFJzrFp!Z!rOhdoM9Qgg zotWOW#a{K4t1_MeM+G#T^oP>?cq%N-fWaKJ_h1JixC(WoaC@n3RYs3T+%x&h- z_n<3VH*%vWA73&@LR|f#yi6WM&qdAwuNKmjkD8aP%ewU?&E?FKr)Z7nu{_bJx|%q> zn1K)_hvTMc{tGaE^3s4bWB6P30 zR&Vdm+N!dS+MeZqd_bUgx6g(yR?6sc?}Y1|1|6GapbxFcH2?vi4xsoCQDRb1z_0bi z&1q9k!s>wKRp#hBjm-Y0NqW^VWgoTqi0rX2QI2woG|WC$^8286QE7bMq*_ms@##(0 z7kzutcj4;SfLh6;&Zqefijorh2AzLzE?jFDQgOlRYJCX4%QJosEWQ`3xUXyLirAO) z;#(472d-u**geJ;;OuHtpNL*)9O7z5N-0sZH32DaC$9i8-+GE&A0#}^RNj#!9oC8q{+ zm9{x`G}9Mm(czY7mV!NO)1Lk+Xg87VC4{3kW^b+M-Ar&L$F(@YtrB~n>1`R$d^C@7 zvoGbib}et)qhDMxOS0oBr6pIA8KKFG58e0780l2S zIC{yf`Mr&^wuqo;!c|yu}o)w8HXA!ue~(&dWsKYfGY#aS44EJ z+xZsE6ZP-YWDT)1QJtQ+?`=;??Cqs&Md~k@!t|Q6T&>tyDbWYA=>`fwWev-WB8gxw zZhk@k8~F(XpGPW+I9WuJHfeWhW%|QR?3#45jgEVt*Mk5m^JbBuW3doJ5%;or_xnye z=szCWgZOfrt_idyD>rFs_RZo!$2ys=ok_Y&G_jB);n!gX3g&vnwPt^t=GLB_&bc+t zb7bSewGHcAfwP>uw{=g&IJz9k$-n++?c%^*AkB?G;bz@vA^QcpJaSCq;X#2O7D=li z%$T9P6Sf}Q;9(x5klC-8Bwb*T8<|mR_i2sz>v_OY~n{7D?dz;tie*dM1^*VCPTgd?Nh!8P)Qo!t#p6!Vw9n~ZQ9Z> zugGzsBf>nBHgc8~pv4#0S8tS@c#hZ?SkDRYqw5*vTio_1u=%-hxk=mvub}ZeKWS0z zT{^7ir>`s&D3sCU`k9~Jzurkb-SA+pLS%27d$-tuZEDXisp7b!$*CT1n=jUNB7Re0 z@as%$HD*k>zf^dGcz1z#V#)@qe6i1fMGx|b`GoJa>GGQ;dcMU3OSROZaLA{s+O>}ChkB?*aSkzHbg-=P40y4(;3Bei!P((mP--!Id}=Ji=*3_8)9uxu%Mem) zMO=KV!^sgcIT_~3wKlZQj@yEB&()`k@(GwN{H{}Ph?MRX#y%Nw!T3&Iu_6Nj`T)193JVv8!1%rgV&$J7I}&Q literal 0 HcmV?d00001 diff --git a/test/conf/client-gpg/secring.gpg b/test/conf/client-gpg/secring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..153a8acf07c52f4cffef2e040f712c30c70263ec GIT binary patch literal 1350 zcmV-M1-bf_0pSEke)R|u1OVJZi!BXclqm>NJ-VC_Yy{r~SxW{XWZg4jLa!REyifJT zjDrt9*2#4faQ|xXzdT$dB358Uy6ucD=7f_ znu9>EVma=1F$*hr@o2N_zer<@_EU`4%w?juJf-FZGal{&*0&6 zU&95)>ov`SgZ8)!^e)I|0L{laF>2!^wMB=oKdG?EhTi!KNW#`=WS?)pv!{mawQvm` zO~4Hxcc-~l_|_jsWj`Ic*6ihs|A->i-=@6LN?Q!d-QcB5o+ktVn%E|S+3al&M-tU8 zZJs`L>SgR}F^QoO*s3#|o0i?NWoUCkN8L)H2Cbz^jCZ*CxDWpHe7d2MBGbaN?)Uj!2o0stQc z0!M!J2m%`e1`7!Y2Ll2G6#@tY0~P`S0v-VZ7k~f?2@vCNL_BIgtyZ@70H1N12BEX8 zFC`}?8xv0^U7phIJW2qcal*-1pb{_nl5r_a12x>(N-gOWumS)8odRP7M}GAT5C{OM zubH!g)=>!^0OjiA&gUM6#j@4YrOKu#zOynDHE;{_8GsQVO?eOh$R?PZdz952z71$J48p6Lruo(~Y2HAsxwOnw46o97S zfnKy7j|a?}k>_l;PHX$lwO&75WxSHk3qU_cVS{YY-11c82Ztaf2?usg&KM&A0|f{E zJZ7S3`AF-y4(mezyYhdfxy56T<EqIlDFv#UkW-|v@D+YE)n5=d8EXl9mUDtKLk#wR zfok~}`17sIK+8dQaYRt!YFtTz!KejG)QVmPZN9OJ_U@FAd|9G;v{4{MeZUBVwuQoA zAvO7mVUAh6<@ilX%Y;FGMaAtcCfPm-8cT7tTW@EpqKkc^y!+R(YwrLseu#zGOGG?v zoqu?unje@0xtQJuy=M9!FB3UpDt$lO*($qD9L_B7P6&I_fnC-k6q<%|A^Ur8D8e{B zQKi^4VL`L#M^h#W1q-lHGStox(>W@f+~Yn;5ib<qfhHrlJJa0DPdys{)ARd}{sRL7 zfK`><Qr&c-U@)A6jSzI2CBz#%qBrJjOGFCHv(1GjLvSm4v<)HzeKC@*Ddrq2$uZFm z?iZ?jvx2CKN!pSDO*N&BU@5RUlr*J{SV(v3#psAh1Q-zl00{*GM}GAT0vikf3JDP7 zZ$vz5Kdn~Lr2wFU5bZF&%hU0v_4fkJVb!(xTSJ`yprMu*KPJz;B36-tf2{SOa=n!u Iv9JOF06tx7*Z=?k literal 0 HcmV?d00001 diff --git a/test/conf/client-gpg/trustdb.gpg b/test/conf/client-gpg/trustdb.gpg new file mode 100644 index 0000000000000000000000000000000000000000..58ec2d6dbf204edd880308798a9b72d7f7d66d15 GIT binary patch literal 1360 zcmZQfFGy!*W@Ke#U|?{s@3{e_umMIckf<D*lmZ$b$OWsz6vhx4RfiEIV1dza84VXu z2#lr!?CF4qf#J;5577tRwyklnIQcl=#U{&sZ5SIwu{=T#FT-ZB6Jn>=e(T&GFURn0 z;-<DVmR|><>JZ8pco<k#-CXDNI7o4whu;RRHJ|*=q<39`Do{iy<YjPPf2wjuN6d<8 XOa9+%njbkOaE^2WD@XyT=!63REom-( literal 0 HcmV?d00001 diff --git a/test/conf/gpg_access.conf b/test/conf/gpg_access.conf new file mode 100644 index 00000000..cf51944e --- /dev/null +++ b/test/conf/gpg_access.conf @@ -0,0 +1,7 @@ +SOURCE: ANY; +KEY: fwknoptest; +FW_ACCESS_TIMEOUT: 3; +GPG_HOME_DIR: conf/server-gpg; +GPG_DECRYPT_ID: 361BBAD4; +GPG_DECRYPT_PW: fwknoptest; +GPG_REMOTE_ID: 6A3FAD56; diff --git a/test/conf/server-gpg/pubring.gpg b/test/conf/server-gpg/pubring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..b0aa06e852738c2aa9e929aaf20178d4ecfa7211 GIT binary patch literal 2480 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 literal 0 HcmV?d00001 diff --git a/test/conf/server-gpg/secring.gpg b/test/conf/server-gpg/secring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..b3a10cbab8a57f11cbb8882d51f16dd861163d63 GIT binary patch literal 1352 zcmV-O1-JT@0pSEke*HWV1OTcK{&ls$$IK(K8)dp@&8M_PgYx&$2sY*G+CW~xZgAKH zpl6=x3NA*t{X^qAujqmkHfz~-x?OGmw!NB7O%O>6uU9}HFSChRMe>P&cPon1GZq3F z9z=zh4r=*r-rzC(qP^H|l!%yeKA4CRJGfM}<7OW_OR_GCH#uKcF9!gil-xaU(0K<o z3R|4sTclC`O47GY1N{{AS$xdmMOqQQijSGdPpuNX{?*e|cXXHY4r94N18VtRdbNuD z*ZHhc*N%|U`%m(21gx;`_GsMmoslj`cu!O^j+KnJ>sZGn0?b<d)LKTdLlgIF<;^u7 zt1JP)?1&?<a5&f*{&4PUuv|iE7KX(aei4>4lXZogOY!S;s8$31BLkpRr56Y((^v!Q z(1{+lQ3K>6zHWm%v%8{MZ>2b2{z`*-%--o4Q!{#>P&kudd0K@%J!-FRzT#sgiIdeF za+Q-%aa4V*GGZ!iTYdBe2*nfB#W9TeL|5atd-&B5bU7IU2Lfx?QP@>BmDsnLbfT8N zQ9;OH8kXm0#z~|T{sRL7ir8TXa_%tcV6AsqAg9T{kk92?QL}!v*1<#gS?u6TF9C|{ z-jA-B;!IS8>0YB4)Dj1|mudBb%pUW!NM?6yZf|g8ASh;cYi@6FWFT{8a&~2MAarGO zbRcVGc{?CPPasZDR3KGTMIdHxav*SWZ)A02bZKvHAY^55Y;SpOWo~qHDTrSL6A=Oc z9|ZzOe*HWG8v_Ol2?z%R0t6KT2m=Ea0s#UZ0Rk6*0162ZDy;HPHXFLsgdqT)KL_?< zKJo~Fzk6?+?~7|n@STKH0G>2E4kV`B4H+<Qw&X6V7#rpv=IO8k005l=V+2Qj{Z9}G z0H!v-)ziH7?b{;Z%9V>Yc(0d1y&VfD;=w5&4YC>aA;*)|*KF{>T0;B?&GHkVTg%JN z*e>`$w6NY6^HkG3a9w`yj^!2znON@XjhZ^fJSb?d^JinzFE^D#k!Ex9{gZl=e))V} zY0;7-Bfd>kxkldCgy5DIoXix(<MHU<{((%esokFnCAM3?3@iA)z@vc;Z8U#@T;{V_ zt-3s}8rc1<J4qhdJNcuZUjzG{0&aAG@9du8#53&EX<T^mZo@~sW88FI=4EOSw5&gE zJ;59KXT*kXtK!%{I)-!pzAdyD-8{!PES#}W1mVM$SUs%ZQ%>h;ftm8r*3gAF%K!rf z2mUU@9@7$YfvgHtVyAJUauSY(LVv7B%(}Ue1>MFS5%4Ar>H-o?p^ZQ9-CUeU`6cB) zhQaCi#uJRZ#qP2eo||?suzpT9M`mo-5&Jrn7Q*aD47UVgzOH)V{Zi3UmAh+vh`--P z6>vRM0pd{}G~ResvGnqq8U6i6>Ix5KF4r0}&bbLTmjog=&PeE{7nD^!KaFFF)ZT@U zV!M!9`|iVY>ZyE`H!f@J;nA~9p6@a1`z(}wz?4NC!~`7opsPdJYFqNexB->X@|X9P zw)%7Q1L|p4D-Yt?FI{KKW`415Z50w}R~#SDKVYVox(ZS~h+7E)Jq}&T<9hLB3-A5| z0|JWJVFz;VFzH}FvbX~qKl+&t(fWIVRrrs++&U&xD(^$TPEAm2Krt%8!<D6RqAR#L zjB-Ti0h=^MFdl{AoS;(rAYHpF%!x9?Huq+z@q{FCh)Dz(5dr`S1p-HY{Z9fL3;+rV z5Gt(lPc|F6)H-zlpI`bhU0Q7IPt6COyJYd^Z%hjHWB{K?G(V8^TrttuN<j+YA=f}g KJnE&e0ssIYsDIc1 literal 0 HcmV?d00001 diff --git a/test/conf/server-gpg/trustdb.gpg b/test/conf/server-gpg/trustdb.gpg new file mode 100644 index 0000000000000000000000000000000000000000..d5b5b60cd9b030059937355993c0f0602d20d90f GIT binary patch literal 1360 zcmZQfFGy!*W@Ke#U|?{s=lltzumMIckf;KhlpGo#$OWsz6vhx4RfiEIV1dza84VXu z2#lr!?CF4qfo0Xrbxx0i6xVt9ZO~ft$=^(R*A+I1VtIrfUIyp&rz&T3#H^UM<p0g4 z`H@os=SU|&)ghEI@Gvl(nff96pxd@J4i+aL=eyWs*{=<QDo{iy<Ym|_c0%m*+HalP X<K-B>P2AL$#`5bRD@XyT=!63RE@mzq literal 0 HcmV?d00001 diff --git a/test/test-fwknop.pl b/test/test-fwknop.pl index 9c545517..fb0131fe 100755 --- a/test/test-fwknop.pl +++ b/test/test-fwknop.pl @@ -15,9 +15,11 @@ my $run_dir = 'run'; my $configure_path = '../configure'; my $cmd_out_tmp = 'cmd.out'; my $server_cmd_tmp = 'server_cmd.out'; +my $gpg_client_home_dir = "$conf_dir/client-gpg"; my $default_conf = "$conf_dir/default_fwknopd.conf"; my $default_access_conf = "$conf_dir/default_access.conf"; +my $gpg_access_conf = "$conf_dir/gpg_access.conf"; my $default_digest_file = "$run_dir/digest.cache"; my $default_pid_file = "$run_dir/fwknopd.pid"; @@ -25,6 +27,9 @@ my $fwknopCmd = '../client/.libs/fwknop'; my $fwknopdCmd = '../server/.libs/fwknopd'; my $libfko_bin = "$lib_dir/libfko.so.0.0.3"; +my $gpg_server_key = '361BBAD4'; +my $gpg_client_key = '6A3FAD56'; + my $sniff_alarm = 20; my $loopback_ip = '127.0.0.1'; @@ -566,6 +571,22 @@ my @tests = ( 'fatal' => $NO }, + { + 'category' => 'GnuPG (GPG) SPA ops', + 'subcategory' => 'client+server', + 'detail' => 'complete SPA cycle', + 'err_msg' => 'could not complete SPA cycle', + 'function' => \&basic_gpg_spa, + 'cmdline' => "$default_client_args --gpg-encryption " . + "--gpg-recipient-key $gpg_server_key " . + "--gpg-signer-key $gpg_client_key " . + "--gpg-home-dir $gpg_client_home_dir", + 'fwknopd_cmdline' => "$fwknopdCmd -c $default_conf " . + "-a $gpg_access_conf -i $loopback_intf --foreground --verbose " . + "-d $default_digest_file -p $default_pid_file", + 'fatal' => $NO + }, + ); my %test_keys = ( @@ -830,6 +851,37 @@ sub basic_rijndael_spa() { return $rv; } +sub basic_gpg_spa() { + my $test_hr = shift; + + my $rv = &client_server_interaction($test_hr, [], + $USE_CLIENT, $REQUIRE_FW_RULE, $NO_FORCE_STOP); + + sleep 2; + + ### the firewall rule should be timed out (3 second timeout + ### as defined in the access.conf file + if (&is_fw_rule_active()) { + &write_test_file("[-] new fw rule not timed out.\n"); + $rv = 0; + } else { + &write_test_file("[+] new fw rule timed out.\n"); + } + + if (&is_fwknopd_running()) { + &stop_fwknopd(); + unless (&file_find_regex([qr/Got\sSIGTERM/], + $server_test_file)) { + $rv = 0; + } + } else { + &write_test_file("[-] server is not running.\n"); + $rv = 0; + } + + return $rv; +} + sub spa_over_non_std_port() { my $test_hr = shift; @@ -1547,6 +1599,8 @@ sub specs() { &run_cmd("$fwknopdCmd $default_server_conf_args --fw-list-all", $cmd_out_tmp, $current_test_file); + my $have_gpgme = 0; + for my $cmd ( 'uname -a', 'uptime', @@ -1566,7 +1620,18 @@ sub specs() { 'ls -l /usr/local/lib/*fko*', ) { &run_cmd($cmd, $cmd_out_tmp, $current_test_file); + + if ($cmd =~ /^ldd/) { + $have_gpgme++ if &file_find_regex([qr/gpgme/], $cmd_out_tmp); + } } + + ### all three of fwknop/fwknopd/libfko must link against gpgme in order + ### to enable gpg tests + unless ($have_gpgme == 3) { + push @tests_to_exclude, "GPG"; + } + return 1; }