Üdv,
CentOS8 Stream alatt squid 4.15-ben nem működik a https kezelése(?).
acl CONNECT method CONNECT
...
acl enged dstdomain .google.com .origo.hu
http_access allow enged localnet
http_access allow CONNECT enged localnet
http_access deny all
...
Erre http-n a .google.com .origo.hu kienged, minden mást tilt. Ez ok.
Viszont https-n mindenhova kienged. Mi a hiba a konfigban?
Squid3-ban még működött ez.
- 347 megtekintés
Hozzászólások
A teljes configot nem tudnád feltolni egy pastebin-re esetleg ? (kifilterezve a kényes részeket természetesen)
Simán lehet hogy valahol valamelyik acl szabály felülír valamit ^^ Egészében kellene látni.
- A hozzászóláshoz be kell jelentkezni
Az alap konfig, de itt van:
acl localnet src 0.0.0.1-0.255.255.255 # RFC 1122 "this" network (LAN)
acl localnet src 10.0.0.0/8 # RFC 1918 local private network (LAN)
acl localnet src 100.64.0.0/10 # RFC 6598 shared address space (CGN)
acl localnet src 169.254.0.0/16 # RFC 3927 link-local (directly plugged) machines
acl localnet src 172.16.0.0/12 # RFC 1918 local private network (LAN)
acl localnet src 192.168.0.0/16 # RFC 1918 local private network (LAN)
acl localnet src fc00::/7 # RFC 4193 local private network range
acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
acl engedett dstdomain .google.com .origo.hu
http_access deny !Safe_ports
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
# Only allow cachemgr access from localhost
http_access allow localhost manager
http_access deny manager
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
http_access allow engedett localnet
http_access allow CONNECT engedett localnet
# And finally deny all other access to this proxy
http_access deny all
##########################################################
# Squid normally listens to port 3128
http_port 3128
# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
- A hozzászóláshoz be kell jelentkezni
Ez csak egy erős tipp,de :
http_access deny !Safe_ports
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
^^ Ez jóval előbb van mint az acl-es rész amiben tiltassz domainre, nem emlékszem pontosan, de mintha ilyen esetben a squid nem a legutolsó részt veszi figyelembe, hanem a legelső acl részt amivel találkozik ^^ találkozik
találkozik ugye ezzel hogy http_access deny mindenre kivéve !SSL_ports -> és mivel https innentől át is engedte.
De fixme. Régen volt már squid.
Rakd az acl tiltási listád után ezt a két sort és utána nézd meg, hátha.
- A hozzászóláshoz be kell jelentkezni
http_access deny !Safe_ports
# Deny CONNECT to other than secure SSL ports
http_access deny CONNECT !SSL_ports
Ez a két sor enged mindent, ami nincs a Safe_ports és az SSL_ports-ban definiálva.
márpedig a 443 biztosan ott van by default.
- A hozzászóláshoz be kell jelentkezni
Semmi változás:
* ha kikommentezem a két sort, akkor is
* ha a saját szabályom után teszem, akkor is.
:)
De ezek tiltó szabályok. Épp ez a baj, hogy a https mindenhova működik. Ezekre a szabályokra nem illeszkedik egyik https kérés sem, tehát ezeken tovább megy:
http_access deny !Safe_ports # ez a nem biztonságos portokat tiltja
http_access deny CONNECT !SSL_ports # ez a https (CONNECT) és nem ssl portokat tiltja
- A hozzászóláshoz be kell jelentkezni
Tiltó szabály, de ott van a !SSL_ports -> itt ugye a ! jel ami azt jelenti hogy "kivéve ami SSL_ports" ^^
A squid deny szabályaiba nem látiok bele, de mivel említetted hogy felcserélted a sorrendet, akkor ez nem sorrendből adódó cucc lesz.
Valamelyik ACL felülírja a másikat, ez szinte 100%.
szerk.: -- bocs, ez hülyeség volt.
- A hozzászóláshoz be kell jelentkezni
ez csak tiltasi szabaly: HA nem safe_ports AKKOR deny KULONBEN goto next line.
attol hogy valami szabalyt tiltasz az ellenkezoje nem lesz automatikusan engedve.
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Így van. Pontosabban szekvenciálisan hajtja végre a szabályokat. Ha van illeszkedés az adott szabályra, akkor végrehajtja. Ha nincs illeszkedés, akkor megy tovább.
Ezért van a minta konfigban is, hogy az utolsó szabály ez legyen:
http_access deny all
(Persze ez függ a default policy-tól, hogy alapvetően tiltunk v. engedünk mindent)
- A hozzászóláshoz be kell jelentkezni
Olyan, mintha a CONNECT method-ot figyelmen kívül hagyná a squid... vagy nem ezzel épül fel a https kapcsolat..?
- A hozzászóláshoz be kell jelentkezni
Persze, hogy működik, csak kliens oldalon nem volt beállítva a https proxy.
A lynx-el teszteltem és csak ez volt beállítva:
export http_proxy=http://192.168.1.20:3128
# de ez is kellett volna :)
export https_proxy=http://192.168.1.20:3128
Most működik. Bocs a bénázásomért! :)
- A hozzászóláshoz be kell jelentkezni
Amikor elkezdtem olvasni a nyitót, egyből ez jutott eszembe. Kevesen tudják, hogy Linuxon, pláne parancssorból a HTTP és a HTTPS nem kötelezően ugyanazt a proxy értéket használja.
- A hozzászóláshoz be kell jelentkezni