Cómo conectarse a Internet desde la Terminal cuando se usa un proxy con autenticación

14

Tengo que usar servidores proxy para conectarme a internet. He configurado todos los proxies en la configuración de proxy de mi sistema. Ahora puedo conectarme a Internet usando mi navegador y mis aplicaciones.

Pero no puedo conectarme a internet desde mi terminal.

Lo intenté

export http_proxy="http://username:password@proxyserver:port/" 

Pero aún así, las aplicaciones de terminal no pueden conectarse a Internet.

TLE
fuente
1
¿Qué comando está ejecutando en la Terminal para "conectarse a Internet"? ¿O cómo ves que no puedes conectarte?
nohillside
1
El servidor proxy (sin s) del que está hablando aquí está transmitiendo sus webconexiones, no todas sus conexiones a Internet. weblas conexiones están utilizando los puertos 80, 443 ... Las conexiones a Internet pueden usar todos los puertos restantes del conjunto 65536. Como ejemplo, una sshconexión utilizará el puerto 22 que no pasará por su httpservidor proxy. De ahí la pregunta de Patrix para ayudarte a obtener una mejor respuesta.
dan
@patrix ping google.com
TLE
@TLE Ping es una excepción a la regla y en realidad no usa el proxy en absoluto, incluso si http_proxyestá configurado. Ping espera una conexión directa, y en muchos casos cuando se usa un proxy, el ping fallará aunque el proxy aún se conectará con éxito.
BinaryMisfit
3
intente en curl -o /dev/null www.google.comlugar deping
nohillside

Respuestas:

12

Terminal no utiliza la configuración de proxy configurada en el panel de preferencias de red porque no hace ninguna conexión. Terminal simplemente le permite disparar comandos que utilizarán la red de diferentes maneras.

Al configurar sus variables de entorno http_proxyy https_proxyno debe incluir los prefijos http:o https:.

Por lo tanto, la variable de entorno en su caso debería leer:

http_proxy=username:password@proxyserver:port

Nota: muchos programas antiguos tienen problemas para conectarse a través de servidores proxy que requieren autenticación antes de conectarse.

Consejo adicional:

Debido a nuestra infraestructura, nos resultó mucho más fácil hacer que los usuarios ejecuten SquidMan localmente y configurarlo para conectarse a nuestro proxy principal. Esto permite que la máquina local actúe como un proxy directamente, y elimina muchos problemas de autenticación, etc. cuando se usan servidores proxy en máquinas Mac, especialmente en entornos mixtos y de AD.

En el caso de utilizar este método nuestro http_proxyy https_proxysería:

http_proxy=localhost:3128
BinaryMisfit
fuente
quieres decir que tengo que escribir export http_proxy = "username: password @ proxyserver: port"
TLE
@TLE Correcto. Terminal no necesita conocer el protocolo ya que ya sabe que es una conexión HTTP.
BinaryMisfit
Pero aún así no puedo conectarme a Internet.
TLE
@TLE Entonces, el problema más probable con la autenticación. Intente configurar el proxy sin incluir el nombre de usuario y la contraseña, lo que significa que se le solicitará la información cuando intente conectarse. Normalmente indica que el proxy en sí no admite la conexión desde la Terminal. Tuvimos un problema similar internamente, por eso sugerí la solución SquidMan.
BinaryMisfit
¿¿sigue sin funcionar??
TLE
0

Recientemente me encontré con este problema y al buscar encontré esta publicación . Agregar algunos puntos que fueron exitosos para mí (en una Mac, usando Terminal):

export http_proxy=http://username:password@proxyserver:port
export HTTP_PROXY=${http_proxy}

Y para https:

export https_proxy=https://username:password@proxyserver:port
export HTTPS_PROXY=${https_proxy}

De esto pude usar gity brewsin ningún problema (y autenticándome a través de un proxy).

Mikolaj
fuente
-1

Puede usar el siguiente comando en la Ventana de Terminal.

networksetup -setairportnetwork $Interface $ssID $Password

Aquí $Interfaceestá el identificador de estilo "enX" para su tarjeta AirPort (generalmente en1, pero es en0 en MacBook Airs y en2 en Mac Pros, y también puede variar por otros motivos)

$ssIDes su nombre de red, como "SSID de Simon". Adjúntelo entre comillas si contiene espacios.

$Password es su contraseña WEP, WPA-PSK o WPA2-PSK.

Azik Abdullah
fuente
1
Esto configura la red, no permite que el terminal mismo se conecte a través de un proxy.
BinaryMisfit