Em 13/03/13 08:48, Saul Figueiredo escreveu: > Em 12 de março de 2013 10:03, Ricardo Carlini Sperandio > <rcarl...@gmail.com> escreveu: >> Enviado pelo Motorola Razr >> Em 12/03/2013 09:14, "Saul Figueiredo" <saulfelip...@gmail.com> escreveu: >>> Em 11 de março de 2013 16:59, Patryck Ramos Martins >>> <patryc...@gmail.com> escreveu: >>>> Em 2008 eu estava com essa dúvida e segui o "manual" do Sérgio Ferreira. >>>> >>>> Segue o email dele logo abaixo: >>>> >>>> ##################################################################### >>>> ## How-TO para autenticação de usuário do SQUID no Active Directory >>>> ## >>>> ## By, Sérgio Ferreira >>>> ## >>>> ## ser...@wgo.com.br - WGO Telecom >>>> ## sergioferre...@mmcb.com.br - Mitsubishi Motors >>>> ## >>>> ##### >>>> >>>> squid autenticando no AD via winbind. >>>> >>>> Neste tipo de autenticação, não aparecerá a janela pedindo >>>> usuário e senha se o usuário já estiver autenticado no AD. >>>> >>>> >>>> *** preparar o ambiente - >>>> >>>> Compilar o kernel do freebsd com essas opções : >>>> >>>> # Recursos de memoria para o SQUID >>>> options MSGMNB=16384 # max # of bytes in a queue >>>> options MSGMNI=64 # number of message queue identifiers >>>> options MSGSEG=512 # number of message segments per queue >>>> options MSGSSZ=64 # size of a message segment >>>> options MSGTQL=2048 # max messages in system >>>> >>>> options SHMSEG=16 # max shared mem id's per process >>>> options SHMMNI=32 # max shared mem id's per system >>>> options SHMMAX=2097152 # max shared memory segment size (bytes) >>>> options SHMALL=4096 # max amount of shared memory (pages) >>>> >>>> >>>> *** instalar o Samba >>>> samba 3.0.x >>>> ./configure --with-winbind >>>> >>>> >>>> >>>> configurar o samba - smb.conf >>>> >>>> [global] >>>> workgroup = _NOME_DOMINIO_ // nome NETBIOS >>>> os level = 2 >>>> unix extensions = yes >>>> map to guest = no >>>> debug level = 1 >>>> socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY >>>> wins server = 172.30.32.15 >>>> veto files = /*.eml/*.nws/riched20.dll/*.{*}/ >>>> netbios name = PROXY01 >>>> security = domain >>>> realm = MMCB.INTRANET >>>> password server = 172.30.32.15, 172.30.32.95 >>>> encrypt passwords = yes >>>> >>>> server string = proxycat - Samba Server >>>> >>>> allow trusted domains = yes >>>> winbind uid = 10000-20000 >>>> winbind gid = 10000-20000 >>>> winbind use default domain = yes >>>> winbind enum users = yes >>>> winbind enum groups = yes >>>> winbind nested groups = Yes >>>> winbind separator = \\ >>>> >>>> hosts allow = 172.30. 172.26. 172.28. >>>> >>>> # This tells samba to write log files per machine. >>>> log file = /var/log/samba/samba.log >>>> >>>> # This sets an alternate log level. Default is 2. >>>> log level = 3 >>>> max log size = 50 >>>> >>>> interfaces = 172.30.32.80/255.255.255.0 >>>> >>>> >>>> ## Agora, tem que juntar o servidor ao dominio do AD >>>> >>>> #>/usr/local/samba/bin/net rpc join -S __NOME_DOMINIO__ -tmn -U >>>> Administrator >>>> password : ( forneça a senha do Administrador do AD ) >>>> >>>> Joined domain __NOME_DOMINIO__ >>>> >>>> >>>> Agora é iniciar o serviço do WinBind : >>>> >>>> >>>> #>/usr/local/samba/sbin/winbindd >>>> >>>> >>>> ## Se tudo estiver certo, poderá usar os comandos : >>>> >>>> #>wbinfo -t >>>> checking the trust secret via RPC calls succeeded >>>> >>>> #>wbinfo -u >>>> vai trazer a lista de usuários do AD >>>> >>>> #>wbinfo -g >>>> vai trazer a lista de usuários de AD >>>> >>>> >>>> >>>> >>>> *** Ok, agora vamos instalar o squid e configurá-lo : >>>> proxycat1# squid -v >>>> Squid Cache: Version 2.6.STABLE13 >>>> configure options: '--enable-dlmalloc' >>>> '--enable-storeio=diskd ufs' >>>> '--disable-ident-lookups' >>>> '--enable-carp' >>>> '--enable-removal-policies=heap lru' >>>> '--enable-icmp' >>>> '--enable-delay-pools' >>>> '--with-openssl' >>>> '--enable-forw-via-db' >>>> '--enable-default-err-language=Portuguese' >>>> '--enable-err-languages=Portuguese English Spanish' >>>> '--enable-poll' >>>> '--enable-leakfinder' >>>> '--enable-underscores' >>>> '--enable-auth=basic digest ntlm' >>>> '--enable-basic-auth-helpers=PAM SMB NCSA LDAP' >>>> '--enable-ntlm-auth-helpers=SMB no_check fakeauth' >>>> '--enable-digest-auth-helpers=password' >>>> '--with-samba-sources=/usr/programas/samba-3.0.20b' >>>> '--enable-ntlm-fail-open' >>>> '--enable-external-acl-helpers=ip_user unix_group >>>> ldap_group wbinfo_group' >>>> >>>> >>>> >>>> >>>> Agora o squid.conf : >>>> >>>> >>>> ## inicio do squid.conf ### >>>> >>>> #debug_options all,1 33,3 >>>> visible_hostname cache.mmcb.com.br >>>> >>>> http_port 3128 >>>> icp_port 0 >>>> >>>> hierarchy_stoplist cgi-bin ? >>>> >>>> acl QUERY urlpath_regex cgi-bin \? >>>> no_cache deny QUERY >>>> >>>> minimum_object_size 0 KB >>>> maximum_object_size_in_memory 10 KB >>>> >>>> cache_mem 48 MB >>>> cache_replacement_policy lru >>>> memory_replacement_policy lru >>>> >>>> cache_dir diskd /usr/local/squid/var/cache 15245 16 256 >>>> cache_access_log /usr/local/squid/var/logs/access.log >>>> cache_log /usr/local/squid/var/logs/squid.out >>>> cache_store_log none >>>> >>>> mime_table /usr/local/squid/etc/mime.conf >>>> >>>> pid_filename /var/run/squid.pid >>>> >>>> ftp_passive on >>>> ftp_sanitycheck on >>>> >>>> hosts_file /etc/hosts >>>> >>>> auth_param ntlm program /usr/local/samba/bin/ntlm_auth >>>> --helper-protocol=squid-2.5-ntlmssp >>>> auth_param ntlm children 20 >>>> >>>> auth_param basic program /usr/local/samba/bin/ntlm_auth >>>> --helper-protocol=squid-2.5-basic >>>> auth_param basic children 20 >>>> auth_param basic realm Autenticacao de acesso a internet >>>> auth_param basic credentialsttl 2 hours >>>> >>>> authenticate_cache_garbage_interval 1 hour >>>> authenticate_ttl 1 hour >>>> authenticate_ip_ttl 60 seconds >>>> >>>> refresh_pattern ^ftp: 1440 20% 10080 >>>> refresh_pattern ^gopher: 1440 0% 1440 >>>> refresh_pattern . 0 20% 4320 >>>> >>>> connect_timeout 2 minute >>>> >>>> peer_connect_timeout 30 seconds >>>> >>>> >>>> # Todas as redes da empresa >>>> acl rede src 172.26.0.0/255.255.0.0 >>>> acl rede src 172.28.0.0/255.255.0.0 >>>> >>>> >>>> acl all src 0.0.0.0/0.0.0.0 >>>> acl manager proto cache_object >>>> acl localhost src 127.0.0.1/255.255.255.255 >>>> acl to_localhost dst 127.0.0.0/8 >>>> acl SSL_ports port 443 >>>> >>>> >>>> http_access allow localhost >>>> >>>> acl Safe_ports port 80 81 8080 >>>> acl Safe_ports port 21 # ftp >>>> acl Safe_ports port 443 563 # https, snews >>>> 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 Safe_ports port 444 1049 1972 2848 5024 44718 # portas re-liberadas >>>> >>>> acl Deny_ports port 5190 1863 445 # portas negadas >>>> acl CONNECT method CONNECT >>>> >>>> http_access allow manager localhost >>>> http_access deny manager >>>> http_access deny !Safe_ports >>>> http_access deny CONNECT !SSL_ports >>>> >>>> >>>> ##--------------- Sites com permissoes diferenciadas >> --------------------- >>>> # direto sem autenticação >>>> acl site_xx dst 200.200.200.200 >>>> http_access allow site_xx rede >>>> >>>> acl bradesco dst 200.155.80.12 >>>> http_access allow bradesco rede >>>> >>>> >>>> # Permitir Acesso sem autenticacao a qualquer url deste arquivo >>>> acl sem_senha url_regex "/usr/local/squid/etc/url_sem_senha.txt" >>>> http_access allow sem_senha >>>> >>>> >>>> #********************** AUTENTICACAO DE USUARIOS >> ************************* >>>> ## Liberar google_earth para o login __login_do_usuário__ >>>> ## 24/04/2007 - HelpDesk 31543 >>>> acl login_x proxy_auth _login_do_usuário_ >>>> acl google_earth url_regex -i google-earth >>>> acl google_earth url_regex -i google.com >>>> http_access allow login_x google_earth rede >>>> >>>> # outras liberações por login do usuário >>>> >>>> >>>> # Verificar grupo do usuario >>>> external_acl_type NT_global_group ttl=600 children=35 %LOGIN >>>> /usr/local/squid/libexec/wbinfo_group.pl >>>> >>>> >>>> # Verificar gredenciais do usuario >>>> acl Internet proxy_auth REQUIRED >>>> >>>> >>>> >>>> # -------------Grupo Infra-Estrutura de Sistemas-------------------- >>>> acl InfraEstrutura external NT_global_group GG_CAT_Sistemas_Infra >>>> http_access allow rede Internet InfraEstrutura >>>> ## GG_CAT_Sistemas_Infra é o nome do grupo no Active Directory >>>> >>>> >>>> # -------------Grupos com acesso a internet------------------------- >>>> acl InternetUsers_spo external NT_global_group GrInternetSP >>>> acl InternetUsers_cat external NT_global_group GrInternet >>>> ## temos duas unidades...aqui eu verifico se o usuário tem acesso a >> internet >>>> ## para ter, tem que estar no grupo GrInternetSP ou GrInternet do AD >>>> >>>> # -------------Grupo com acesso as urls abaixo sem restricao ------- >>>> acl url_allow url_regex -i "/usr/local/squid/etc/url_allow.txt" >>>> http_access allow Internet InternetUsers_spo url_allow rede >>>> http_access allow Internet InternetUsers_cat url_allow rede >>>> ## permito o acesso se : >>>> ## estiver autenticado ( Internet ) >>>> ## for do grupo InternetUsers_spo ou _cat >>>> ## for da rede da empresa ( rede ) >>>> ## e se a url estiver no arquivo url_allow.txt >>>> >>>> >>>> # -------------Grupo Diretores-------------------------------------- >>>> acl Diretores external NT_global_group Internet_Diretores >>>> http_access allow rede Internet Diretores >>>> ## diretores são diretores :-) >>>> >>>> >>>> # -------------Grupo com acesso ao MSN ----------------------------- >>>> acl PermiteMsn external NT_global_group GG_ORG_MSN >>>> acl MsnMessenger url_regex -i ADSAdClient31 >>>> acl MsnMessenger url_regex -i gateway.dll >>>> acl MsnMessenger url_regex -i Client31.dll >>>> acl MsnMessenger url_regex -i passport.com >>>> acl MsnMessenger url_regex -i loginnet.passport.com >>>> acl MsnMessenger url_regex -i hotmail.com >>>> acl MsnMessenger url_regex -i messenger.hotmail.com >>>> acl MsnMessenger url_regex -i ebuddy >>>> acl MsnMessenger url_regex -i login.live.com >>>> acl MsnMessenger url_regex -i msn.com >>>> http_access allow Internet rede PermiteMsn MsnMessenger >>>> >>>> # ---------Negar acesso ao site windows_update e MSN--------------- >>>> http_access deny MsnMessenger >>>> >>>> >>>> # -------------Negar acesso a sites considerados inadequados ----- >>>> acl noporn url_regex -i "/usr/local/squid/etc/noporn.txt" >>>> acl negar url_regex -i "/usr/local/squid/etc/porn_local.txt" >>>> acl negar url_regex -i "/usr/local/squid/etc/negar.txt" >>>> http_access deny !noporn negar >>>> >>>> # ---------------- Negar Streamer --------------------------- >>>> acl x-type req_mime_type -i ^application/octet-stream$ >>>> acl x-type req_mime_type -i application/octet-stream >>>> acl x-type req_mime_type -i ^application/x-mplayer2$ >>>> acl x-type req_mime_type -i application/x-mplayer2 >>>> acl x-type req_mime_type -i ^application/x-oleobject$ >>>> acl x-type req_mime_type -i application/x-oleobject >>>> acl x-type req_mime_type -i ^application/x-pncmd$ >>>> acl x-type req_mime_type -i application/x-pncmd >>>> acl x-type req_mime_type -i ^video/x-ms-asf$ >>>> acl x-type req_mime_type -i video/x-ms-asf >>>> >>>> http_access deny x-type >>>> http_reply_access deny x-type >>>> >>>> # ----------------------- Negar Extensao --------------------------- >>>> acl download_files urlpath_regex \.exe$ \.asf$ \.arj$ \.bzip$ \.ace$ >> \.iso$ >>>> \.adt$ \.cbt$ \.cla$ \.cmd$ \.com$ \.cpl$ \.csc$ \.dot$ \.drv$ \.lha$ >> \.lzh$ >>>> \.mso$ \.ov?$ \.pot$ \.shs$ \.sys$ \.mp3$ \.asf$ \.wma$ \.wmf$ \.ttf$ >> \.rar$ >>>> \.scr$ \.mpeg$ \.mpg$ \.wave$ \.wav$ \.zip$ >>>> http_access deny download_files >>>> >>>> >>>> # -------------Permitir acesso aos demais usuarios com permissao --- >>>> http_access allow Internet InternetUsers_spo rede >>>> http_access allow Internet InternetUsers_cat rede >>>> >>>> # Negar todo o resto >>>> http_access deny all >>>> >>>> http_reply_access allow rede >>>> http_reply_access deny all >>>> >>>> cache_mgr infra...@mmcb.com.br >>>> cache_effective_user squid >>>> cache_effective_group squid >>>> >>>> coredump_dir /usr/local/squid/var/ >>>> >>>> >>>> ie_refresh on >>>> >>>> >>>> ### fim do squid.conf ####### >>>> >>>> >>>> >>>> >>>> qualquer dúvida, entre em contato : >>>> >>>> Abraços, >>>> >>>> Sérgio Ferreira >>>> WGO Telecom >>>> >>>> -----Mensagem original----- >>>> De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em >> nome >>>> de Sérgio Ferreira ( WGO ) >>>> Enviada em: sexta-feira, 20 de junho de 2008 13:29 >>>> Para: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' >>>> Assunto: [FUG-BR] RES: Re: squid com autenticação no Active Directory. >>>> >>>> Opa, >>>> >>>> Tenho rodando aqui inclusive com autenticação de grupo. >>>> >>>> Vou montar um how-to e postar a receita de bolo aqui na lista. >>>> >>>> []s >>>> >>>> Sérgio Ferreira >>>> WGO Telecom >>>> >>>> -----Mensagem original----- >>>> De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em >> nome >>>> de Diogo Dalfovo >>>> Enviada em: sexta-feira, 20 de junho de 2008 13:18 >>>> Para: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) >>>> Assunto: [FUG-BR] Re: squid com autenticação no Active Directory. >>>> Prioridade: Baixa >>>> >>>> Boa tarde >>>> >>>> Uma forma que sei e ja usei sem ser a do do ntlm é usando pam_smb porem >>>> imagino que deva exister outras formas >>>> creio que o pessoal mais experiente deve responder mais coisas >>>> >>>> Diogo Dalfovo >>>> >>>> On Fri, 20 Jun 2008 13:04:07 -0300, "Luis Barcellos" >>>> <luisbarcel...@gmail.com> wrote: >>>>> Boa tarde a todos! >>>>> >>>>> >>>>> Depois de uma manhã goolgleando sem sucesso, gostaria de saber se >> alguém >>>>> tem >>>>> uma boa solução para autenticação do squid no AD, que não seja >>>>> atravez do >>>>> ntlm, pois o meu domínio é um 2003 nativo. >>>>> >>>>> []s >>>>> >>>>> Luis Barcellos >>>>> ------------------------- >>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>>> ------------------------- >>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>>> >>>> ------------------------- >>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>>> >>>> ------------------------- >>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>>> >>>> Em 11 de março de 2013 16:18, Marcelo Gondim <gon...@bsdinfo.com.br >>> escreveu: >>>>> Pessoal, >>>>> >>>>> Sei que aqui na lista já saiu algumas configurações de autenticação do >>>>> squid no active directory [1] mas alguém teria algum link de algum site >>>>> ou alguma documentação mais atualizada e até mais explicativa de como >>>>> fazer isso no FreeBSD? Sei que para fazer isso vou precisar do krb5 e >> do >>>>> samba correto? >>>>> Obs: o cara já tem um AD rodando no Windows 2008R2 e por isso nem vou >>>>> mexer com o samba4 nesse caso. :) >>>>> >>>>> [1] http://www.fug.com.br/historico/html/freebsd/2008-06/msg00581.html >>>>> >>>>> Grande abraço, >>>>> Gondim >>>>> ------------------------- >>>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>>>> >>>> >>>> >>>> -- >>>> Patryck >>>> ------------------------- >>>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >>> >>> >>> >>> >>> >>> Respondendo as criticas primeiro: >>> >>> Vem falar do meu NTLM, mas SEQUER deve ter dado um tcpdump na vida, >>> com bastante VERBOSE, para ver o que se passa na comunicação do >>> smb_auth por exemplo. Ele usa o NTLM, como HELPER PROTOCOL, seu >>> ESPERTO.... >>> >> Trabalho, infelizmente, fazendo o samba integrar com a maior rede windows >> do mundo (cef). Então não venha desmerecer alguém que você não conhece. >> >>> >>> Agora ao assunto principal; >>> >>> >>> Gondim, >>> >>> Para facilitar, criei um .reg com o seguinte conteúdo: >>> Windows Registry Editor Version 5.00 >>> >>> [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\] >>> "LmCompatibilityLevel"=dword:00000001 >>> >>> >>> >>> eu só executava esse cara, reiniciava o RWindows e boa, já funcionava >>> tranquilamente a autenticação. >>> >>> >>> >>> >>> >>> -- >>> "Deve-se aprender sempre, até mesmo com um inimigo." >>> (Isaac Newton) >>> >>> Atenciosamente, >>> Saul Figueiredo >>> Analista FreeBSD/Linux >>> Linux Professional Institute Certification Level 2 >>> Linux User: #554651 >>> saulfelip...@gmail.com >>> ------------------------- >>> Histórico: http://www.fug.com.br/historico/html/freebsd/ >>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd >> ------------------------- >> Histórico: http://www.fug.com.br/historico/html/freebsd/ >> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > > > Se você ler atentamente ao Tópico, vai ver que a minha resposta não > foi para o E-mail que você está citando agora. > Foi para o cara que disse que usar ntlm é coisa do seculo passado, e > pelo que pude perceber, não se trata da mesma pessoa. > > > Senhores não vamos brigar. :) O importante é que consegui resolver o problema com a ajuda baseada em documentos e opiniões de todos aqui. Optei pela solução ldap_auth porque foi mais tranquila e atendeu perfeitamente ao cliente que precisava de algo que funcionasse bem. Com certeza o uso do kerberos adicionaria muito mais segurança na autenticação.
Consegui fazer as ACLs e regras baseadas nos grupos criados no AD e funcionou que foi uma beleza. Obrigado à todos pela ajuda. []'s Gondim ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd