Como configurar automaticamente o nome de usuário / senha com o arquivo PAC proxy?

13

Eu tenho uma configuração de proxy bastante complexa e um desses proxies requer nome de usuário / senha. Existe uma maneira de configurar o nome de usuário / senha para que os usuários não precisem inseri-los quando o tráfego é redirecionado para esse proxy? Pelo menos voltando PROXY username:password@server:portou PROXY http://username:password@server:portnão vai funcionar.

Raynet
fonte

Respostas:

10

Eu tive um problema semelhante, então crie uma ferramenta: https://github.com/sjitech/proxy-login-automator

Essa ferramenta pode criar um proxy local e injetar automaticamente o usuário / senha no servidor proxy real. Suporte ao script PAC.

osexp2003
fonte
1
Isso eu posso realmente usar para resolver o problema, graças
Raynet
7

Os arquivos de configuração automática de proxy não suportam nomes de usuário e senhas codificados. Há um bom raciocínio por trás disso também, pois o suporte a credenciais codificadas abriria brechas de segurança significativas, pois qualquer pessoa seria capaz de visualizar facilmente as credenciais necessárias para acessar o proxy.

Em vez disso, configure o proxy como um proxy transparente, assim você não precisará de um nome de usuário e senha. Você mencionou em um de seus comentários que o servidor proxy está localizado fora da sua LAN, e é por isso que você precisa de autenticação. No entanto, a maioria dos proxies suporta regras baseadas no IP de origem; nesse caso, é uma questão simples de permitir apenas solicitações originárias da sua rede corporativa.

A especificação de configuração automática do proxy original foi originalmente elaborada pela Netscape em 1996. A especificação original não está mais disponível diretamente, mas você ainda pode acessá-la usando a cópia arquivada do The Wayback Machine . A especificação não mudou muito e ainda é basicamente a mesma que era originalmente. Você verá que a especificação é bastante simples e que não há provisão para credenciais codificadas.

Richard Keller
fonte
1
O proxy está fora da minha LAN e meu ip de LAN externo não é estático e pode ser alterado diariamente, portanto, eu realmente não gostaria de criar regras baseadas em IP.
Raynet
Infelizmente, não há muito o que fazer, além de possivelmente configurar o servidor externo como um cache de mesmo nível para outro proxy local que encaminha determinadas solicitações para o mesmo nível. Mas puramente no caminho do PAC, você está sem sorte.
Richard Keller
4

Eu não acho que isso possa ser feito - o arquivo proxy.pac é um arquivo javascript, como você sabe, com uma sintaxe bastante limitada e, tanto quanto eu sei, isso não inclui nenhum método de autenticação. Uma rápida varredura dos vários sites de referência em busca de arquivos .pac que eu conheço também não mostra nenhum sinal ou sugestão de algo que possa funcionar.

Mesmo que funcionasse, seria terrivelmente inseguro, pois o nome de usuário e a senha seriam triviais para serem capturados no arquivo, tornando inútil qualquer proteção que você esperasse obter ao usar a autenticação com seu proxy.

Rob Moir
fonte
1
A insegurança não é um problema neste caso. É apenas necessário para que o único proxy (que não está na minha LAN) não esteja aberto a todos na Internet. (e os únicos servidores que o proxy pode acessar são os servidores do YouTube).
Raynet