我build立了authentication助手的鱿鱼跟随在这里指导http://www.freesoftwaremagazine.com/articles/authentication_with_squid唯一的区别是,我的用户连同NTLM密码哈希存储在一个MySQL数据库。 计算ntlm哈希的php函数如下所示。 function ntlm_hash($txt) { $txt = iconv('UTF-8', 'UTF-16LE', $txt); $md4 = bin2hex(mhash(MHASH_MD4, $txt)); return strtoupper($md4); } 现在我有点担心安全性,我不想使用基本的HTTP身份validation。 我知道一个解决scheme是在squid上使用SSL,但默认情况下,debian上的squid是没有SSL支持的。 我在想的另一个解决scheme是使用NTLM身份validation助手; 这里描述的协议是http://squid.sourceforge.net/ntlm/squid_helper_protocol.html 不幸的是,我没有发现任何有趣的东西来引导我(除了链接的规范),有没有人知道一个可能的实现可能是如何工作的? 例如,我不清楚我是否只能用NTLM密码哈希来实现协议。 有没有人有其他build议来加强用户authentication? 考虑到我只能使用密码的NTLM哈希值。
我正在尝试使用Squid作为代理服务器来安装CentOS 7服务器。 代理服务器是严格私有的,除了我自己和其他2个服务器以外,不需要任何其他人可用,因此我决定将所有端口locking到3个IP地址。 我还要指出,如果我的IP改变,我有VNC访问服务器。 这里是我用来locking服务器的IP表规则(其中1.1.1.1只是一个例子)… #!/bin/bash IPTABLES=/sbin/iptables MYIP=1.1.1.1 #start and flush $IPTABLES -F $IPTABLES -t nat -F $IPTABLES -X $IPTABLES -P FORWARD DROP $IPTABLES -P INPUT DROP $IPTABLES -P OUTPUT ACCEPT #HTTP traffic $IPTABLES -A INPUT -p tcp -s $MYIP –dport 80 -j ACCEPT #SSH traffic $IPTABLES -A INPUT -p tcp -s $MYIP –dport 22 […]
我正在尝试使用ssl_bumping基于ACL终止httpsstream量,而无需在拦截/透明模式下对stream量进行解密。 有没有人得到这个工作之前? 我已经复制了我的configuration和我的iptables nat规则的样子。 我正在使用squid 3.5.13以下编译选项: Squidcaching:版本3.5.12 服务名称:鱿鱼 configuration选项:'–prefix = / usr''–localstatedir = / var''–libexecdir = / lib / squid3''–datadir = / share / squid3''–sysconfdir = / etc / squid3'' –with-default-user = proxy''–with-logdir = / var / log / squid3''–with-pidfile = / var / run / squid3.pid''–with-openssl''-enable -ssl-crtd'–enable-icap-client''–with-large-files'–enable-ltdl-convenience squid.conf中: acl social dstdomain .google.com .facebook.com .reddit.com […]
鱿鱼代理服务器提供的可能性,以提供多个SSL证书? 我有一个服务器与各种虚拟机运行Apache Web服务器为不同的客户。 作为向客户销售一个专用IP地址的经济替代scheme,我希望至less(解释和给出)在服务器机器的共享IP上使用sni的解决scheme。 假设我们有一个带有4个域的服务器: domain1a.com , domain1b.com , domain2a.com和domain2b.com 。 域domaina1.com和domainb1.com由虚拟机中的同一个Apache实例托pipe,其他两个域也是如此。 每个虚拟机都有一个NAT转换的本地IPv4 IP地址,请求应该发送到该地址。 所有HTTP(S)请求都将通过caching代理服务器来加速和共享服务器IP。 因此,解决scheme应该提供SSL终止和SNI。 早在2013年,对这个问题的回答就指出了乌贼不具备SNI的能力。 不过,由于Squid 3.5支持SNI, 据我了解,我用Squid的选项是 使用自签名的CA和dynamic证书生成 ,或者 使用具有多个SAN名称的证书,列出(物理)服务器上托pipe的所有域。 (1)显然不起作用,因为我们无法在每个网站访问者的电脑上安装自签名的CA证书(谢天谢地!)。 (2)对我不起作用,因为它非常不灵活,并且显示(物理)服务器机器上托pipe的每个域。 我在这里错过了什么吗? 我可以为SNI提供多个SSL证书吗? 如果这是不可能的:什么替代scheme将符合我的情况? 提前致谢!
我想限制youtube的带宽,所以我想拦截https连接。 我跟着几个教程,不能。 有人能帮我一个忙吗? # Squid listen Port http_port 192.168.1.215:3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB key=/etc/squid/example.com.private cert=/etc/squid/example.com.cert # SSL Bump Config always_direct allow all ssl_bump server-first all sslproxy_cert_error deny all sslproxy_flags DONT_VERIFY_PEER sslcrtd_program /usr/lib64/squid/ssl_crtd -s /var/lib/ssl_db -M 4MB sslcrtd_children 8 startup=1 idle=1 我导入myCA.pem到网页浏览器,然后任何网页https我去我得到“代理服务器拒绝连接”。 如果不行的话,一切顺利。 我能做什么????? 这是access.log 192.168.1.172 TCP_HIT/200 52543 GET http://www.silencio.com.ar/wp-content/uploads/2016/07/AHJ8239-540×386.jpg – HIER_NONE/- image/jpeg 192.168.1.172 TCP_HIT/200 49912 GET […]
我有一个反向代理模式转发请求到NGINX的Squid代理,我想删除所有的信息,有关的Web服务器,代理等头目前我有Via头, caching控制头, 服务器头,和夫妇更多。 我实际需要的唯一头是caching控制,我想摆脱其余的。 我可以很容易地从Squid中删除标题,但是当我这样做需要1分钟来加载页面…我认为Chrome需要一些标题才能正常工作。 有人可以请解释,如果任何标题是特别重要的Chrome或我的问题是在别的地方? 我真正想要删除的标题是服务器标题和Via标题… 谢谢
我试图解决这个问题已经很长时间了,但是也尝试了在这个网站上find的所有build议,我没有解决问题。 我在CentOS服务器上安装了OpenVPN。 这台服务器也可以使用squid代理。 安装进行的很好,当我启动服务,我可以在我的ifconfig输出中看到tun0设备: tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 PtP:10.8.0.1 Mask:255.255.255.0 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) 但是,当我尝试从客户端连接,我得到这个日志(错误): Thu Dec 29 17:02:17 2016 us=212571 OpenVPN 2.3.14 i686-w64-mingw32 [SSL (OpenSSL)] [LZO] […]
我有一个运行在MAMP主机(mac os x)上的开发网站,我想在客户端机器上(也在移动设备上 – 所有mac os上)查看。 所有连接到相同的局域网(无线)。 我已经成功地在主机上设置了一个Squid代理,并且可以在普通浏览器中查看客户端上的HTTP主机。 但是我在查看SSLencryption的时遇到了一些麻烦。 在开发环境中使用SSL非常重要,因为我正在生产中使用它。 我希望有人能帮我弄清楚如何工作! 提前致谢。 我使用https://www.mydomain.dev:8899访问主机上的站点。 它在所有浏览器中都能正常工作。 本地IP:主机192.168.0.99 ,客户端192.168.0.98 。 我使用地址http://test.dev:8898在MAMP中设置了一个小testing虚拟主机,没有SSLencryption(它只是列出一个文件夹)。 我可以通过在浏览器中inputhttp://test.dev:8898在主机上访问它。 我创build了以下.pac文件,并将客户端计算机configuration为使用它进行代理configuration: function FindProxyForURL(url, host) { if (shExpMatch(url, "http://test.dev*")) { return "PROXY 192.168.0.99:3128; DIRECT"; } return "DIRECT"; } 当我启动squid时,通过下面显示的squidconfiguration,我确实可以在所有浏览器上访问客户端机器上的http://test.dev:8898 ,就像在主机上一样。 大。 现在我为dev站点设置了以下.pac文件: function FindProxyForURL(url, host) { if (shExpMatch(url, "https://www.mydomain.dev*")) { return "PROXY 192.168.0.99:3128; DIRECT"; } return "DIRECT"; […]
我用Corosync / Pacemaker创build了一个集群。 在集群中,我configuration了两个资源,一个虚拟IP和Squid。 在Debian 8上,集群中有两个节点。 crm_status显示,两个节点都在线,一切工作正常。 出于testing目的,我停止了节点之一。 CRM显示资源已经迁移到第二个节点,但是当我在客户端浏览器上使用虚拟IP时,我没有得到任何回应。 大部分时间大概需要10分钟,直到客户端能够通过第二个节点浏览虚拟IP。 我想(希望)这是一个小小的configuration,但在这一刻,我不知道在哪里find失败。 这是我的configuration: 节点 Node 1 Node 2 eth0 10.0.0.234 eth0 10.0.0.235 eth1 xxx134 eth1 xxx135 Virtual IP: 10.0.0.233 Corosync totem { version: 2 cluster_name: SQUID token: 3000 token_retransmits_before_loss_const: 10 clear_node_high_bit: yes crypto_cipher: aes256 crypto_hash: sha1 interface { ringnumber: 0 bindnetaddr: xxx0 mcastaddr: 239.255.1.1 mcastport: 5405 […]
我想在我的代理服务器上实现基于IP的身份validation。 考虑一下我的服务user1 。 以下是我的ACL目前的样子: acl user11 proxy_auth [-i] user11 acl user12 proxy_auth [-i] user12 acl user13 proxy_auth [-i] user13 与相应的传出IP地址分配: tcp_outgoing_address 175.25.11.25 user11 tcp_outgoing_address 175.25.11.26 user12 tcp_outgoing_address 175.25.11.27 user13 通过这种方式, user1可以在authentication时通过在用户名后面附加一个数字来使用多个出站IP地址。 我希望user1有权访问许多传出IP地址,但使用基于IP的身份validation。 据我所知,我会做这样的基于IP的authentication: acl user11 10.0.0.1 acl user12 10.0.0.1 acl user13 10.0.0.1 但是,这是行不通的,因为那么用户没有办法使用/指定不同的外出IP地址。 这意味着我必须为每个出站IP地址使用不同的端口。 假设我的服务器的主IP是175.25.11.1 (用户将连接到什么),我希望他们连接的每个端口有不同的出站IP地址。 我们还假设用户的IP是10.0.0.1 ,我们要使用基于IP的身份validation。 我理解的方式,这是我将如何做到这一点: http_port 175.25.11.1:3128 name=3128 http_port 175.25.11.1:3129 name=3129 […]