Heim > Fragen und Antworten > Hauptteil
Es gibt eine Maschine, die nur Port 80 für die Außenwelt öffnet, und Sie können den mod_proxy_connect-Proxy verwenden, um auf seinen Port 22 zuzugreifen. In diesem Fall wird er jedoch zum SSH-Dienst-Proxy eines beliebigen Servers, was sehr unsicher ist. Gibt es eine Möglichkeit, es zu begrenzen? Ich kann es anscheinend nicht in der offiziellen Dokumentation finden.
大家讲道理2017-05-16 17:07:01
我自己修改代码实现了-。-
apache2.2/modules/proxy/mod_proxy_connect.c +123
char *allowed_hosts[] = { "some host name", "127.0.0.1", "localhost" }; int hosts_num = sizeof(allowed_hosts) / sizeof(allowed_hosts[0]); int k; for (k = 0; k < hosts_num; k++) { if (strncmp(uri.hostname, allowed_hosts[k], strlen(allowed_hosts[k])) == 0) { break; } } if (k == hosts_num) { return ap_proxyerror(r, HTTP_BAD_GATEWAY, apr_pstrcat(p, "host not allowed for: ", uri.hostname, NULL)); }