A levelezőm azt hiszi, hogy Kosa Attila a következőeket írta:
Jo, legyunk ontopic-ok egy kicsit :)
Ha megnezzuk az emlitett cimet, akkor lathato, hogy sajat maguknak krealtak egy certificate-et, ami asp1 nevre van kiallitva, mikozben a site neve asp.ksh.hu. Tudnal mutatni egy olyan konfigot, amely ehhez az esethez jol van beallitva?
Először is lássuk be, hogy valamely szervezettel vagy emberrel kapcsolatos -akár jogos- ellenszenved kiélésére nem ez a lista való. A kérdésedet ontopic módon így tudom értelmezni: """ Van egy saját gyártmányú certem, ami "asp1" névre van kiállítva. Valamiért szeretném ha a szerveren ugyanez a cert maradna, ugyanakkor a külvilág számára szeretnék egy korrekt certet mutatni. """ Mint mindannyian tudjuk, ebben az esetben a pssl használata, és a korrekt certtel való átkulcsolás a megoldás. class MyHttpsProxy(PsslProxy): def config(self): # both side need ssl self.server_need_ssl = TRUE self.client_need_ssl = TRUE # correct secret key and cert generated by openssl self.client_cert = '/etc/zorp/myhttps.crt' self.client_key = '/etc/zorp/myhttps.key' # do check clients certificates in behalf of the server self.client_verify_type = SSL_VERIFY_REQUIRED_TRUSTED # strict check of https server certs self.server_verify_type = SSL_VERIFY_REQUIRED_TRUSTED # put the allowed CAs' certs into this directory, so # only the good servers will be allowed, for instance # if you only put verysign CA cert here, only those # servers will be allowed, which owns VS certs # WARNING: never allow sef singed certs;-)))) # you can gain CA certs form apache-ssl deb package # put here the cert of the CA which signed the server # key, or set server_verify_type to NONE self.server_ca_directory = '/etc/zorp/ca.d/' # you want to shutdown each way Read and Write) # separately. self.shutdown_soft = TRUE # now I stack Http Proxy with the previous # URI filtering into the SSL proxy, so sex.com # cannot be visited neither via HTTP and HTTPS... self.stack_proxy = MyHttpProxy Ha a levél végén lévő patchet alkalmazod (emlékezetből írtam, lehet hogy nem is fordul, a következő unoff zorpban benne lesz tesztelve), akkor a MyHttpProxyban a pssl client_cert attribútuma alapján eldöntheted, hogy egyáltalán odaengeded-e józsit a szerverhez. Sajnos nem találtam olyan kérdést, amelyik a te kérdésedhez közelebb lenne és ontopic. M modules/zorp-module-pssl-2.0.0/pssl.c * modified files --- orig/modules/zorp-module-pssl-2.0.0/pssl.c +++ mod/modules/zorp-module-pssl-2.0.0/pssl.c @@ -72,6 +72,7 @@ SSL_CTX *client_ctx, *server_ctx; int verify_type[EP_MAX]; int verify_depth[EP_MAX]; + GString *client_name; } PsslProxy; #define ENABLE_PKT_STATS 1 @@ -100,6 +101,7 @@ self->poll = z_poll_new(); self->client_keyfile = g_string_sized_new(32); + self->client_name = g_string_sized_new(0); self->client_certfile = g_string_sized_new(32); self->client_ca_dir = g_string_sized_new(0); @@ -178,6 +180,10 @@ "client_key_file", Z_VAR_GET | Z_VAR_SET_CONFIG | Z_VAR_TYPE_STRING, self->client_keyfile); + z_proxy_var_new(&self->super, + "client_name", + Z_VAR_GET | Z_VAR_TYPE_STRING, + self->client_name); z_proxy_var_new(&self->super, "client_cert_file", @@ -356,6 +362,7 @@ X509_NAME_oneline(X509_get_subject_name(peercert), tmp, sizeof(tmp) - 1); X509_free(peercert); + self->client_name = g_string_assign(self->client_name,tmp); z_proxy_log(self, PSSL_DEBUG, 4, "Identified peer on the client side; peer='%s'", tmp); } -- GNU GPL: csak tiszta forrásból