Autenticação do Squid Proxy do Ubuntu Server 16.04 com 2 configurações de NIC

1

Eu tenho um servidor em execução do proxy ubuntu 16.04, squid 3.5.12 e NCSA. O servidor possui duas placas de rede, uma conectada ao roteador de internet, eno1 com o IP 192.168.1.2/24 e outra conectada ao cliente LAN, eno2 com o IP 192.168.2.1/24. Quando eu configuro as configurações de proxy na máquina do cliente, o navegador solicita credenciais de login, mas quando escolho a detecção automática de configurações de proxy, o usuário navega na Internet sem que nada seja capturado no access.log. Primeiramente, eu quero que os usuários que ignoram as configurações de proxy não consigam navegar na internet, esse é o objetivo número um. Aqui está minha lista de prioridades:

  1. Todos os usuários do cliente devem ser autenticados ao navegar na Internet - nome de usuário e senha (obrigatórios)
  2. Os usuários que ignoram as configurações de proxy em seus navegadores não devem navegar na Internet (obrigatório)

NB: ASSISTA-ME COM O OBJETIVO 2

Em termos de iptables, eu realmente não tenho nada e ficaria feliz se qualquer pessoa que escolher explicasse fazê-lo tendo em mente que eu estou executando o Ubuntu 16.04. Agora sei como salvar iptables, mas ter os que podem atingir meu objetivo é o principal problema. Eu literalmente comentei tudo o que eu tinha feito em rc.local, pois não está conseguindo nada.

auto lo
iface lo inet loopback

# Gre tunnel interface
#auto wccp0
#iface wccp0 inet manual
#       pre-up ip tunnel add wccp0 gre remote 10.10.101.2 local 192.168.0.4 dev eno1 ttl 255

# The primary network interface
auto eno1
iface eno1 inet static
        address 192.168.1.2
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 192.168.0.5
        dns-search hit.ac.zw

#Secondary interface
auto eno2
iface eno2 inet static
        address 192.168.2.1
        netmask 255.255.255.0
        network 192.168.2.0
        gateway 192.168.2.1
#save ip tables
pre-up iptables-restore < /etc/iptables.up.rules

Configuração do Squid:

auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Systems Admin
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl blocked_sites url_regex -i "/etc/squid/blocked_sites"
acl ncsa_users proxy_auth REQUIRED

#acl blocked_sites url_regex -i "/etc/squid/blocked_sites"
acl localnet src 192.168.1.0/24
acl localnet src 192.168.2.0/24
#acl lan src 192.168.1.0/24

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

http_port 3128

http_access deny !ncsa_users
http_access deny ncsa_users blocked_sites

#http_access deny blocked_sites
# Deny requests to certain unsafe ports
http_access deny !Safe_ports
#http_access deny localnet
#http_access deny lan
# 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

Tabelas IP:

#MY IPTABLE - it has been changed several times i no longer have original
    *filter
:INPUT ACCEPT [231:24245]
:FORWARD ACCEPT [205:45205]
:OUTPUT ACCEPT [155:73325]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A FORWARD -s 192.168.2.1/24 -p tcp -m tcp --dport 3128 -j ACCEPT
-A FORWARD -s 192.168.2.0/24 -j REJECT --reject-with icmp-port-unreachable
COMMIT
*nat
:PREROUTING ACCEPT [1001:61764]
:INPUT ACCEPT [211:12736]
:OUTPUT ACCEPT [10:814]
:POSTROUTING ACCEPT [719:45963]
-A PREROUTING -i eno2 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A PREROUTING -i eno1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.2:3128
COMMIT

Tabela de roteamento:

root@proxy:~# route -n
    Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eno1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eno1
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eno2

Imprimir rota da máquina cliente

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.2.1      192.168.2.2    276
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      192.168.2.0    255.255.255.0         On-link       192.168.2.2    276
      192.168.2.2  255.255.255.255         On-link       192.168.2.2    276
    192.168.2.255  255.255.255.255         On-link       192.168.2.2    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link       192.168.2.2    276
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link       192.168.2.2    276
===========================================================================
Persistent Routes:
  Network Address          Netmask  Gateway Address  Metric
          0.0.0.0          0.0.0.0      192.168.2.1  Default
===========================================================================

insira a descrição da imagem aqui

    
por tango.zopo 14.04.2018 / 10:36

0 respostas