Rediriger le trafic Web (proxy SOCKS) pour un domaine spécifique

10

J'ai bloqué YouTube à mon travail pour des raisons.

Je suis un scientifique et j'ai besoin de YouTube car la plupart des conférences et des conférences que j'aimerais voir y sont disponibles. Oui, j'ai vraiment besoin de YouTube, pour la science.

J'ai parlé à l'administrateur du réseau de mon école ici, mais il est assez difficile à gérer et ne comprend aucun raisonnement. C'est le genre de gars qui pense qu'Internet passe par des canaux et des ports fixes et qu'il est en fait possible de bloquer des choses comme l'accès à YouTube.

Quoi qu'il en soit, heureusement, j'ai un serveur dédié quelque part, donc je peux y faire un proxy ssh comme ceci:

ssh -D 5000 -CN moi-même @ myserver

Et puis configurez Firefox (oui, Firefox, parce que Chrome est paresseux et repose uniquement sur les paramètres OS X [oui, je suis sur OS X]) pour utiliser un proxy SOCKS5 sur ce port et avoir à peu près tout Internet que je veux.

Étant donné qu'Internet est plutôt cool, je n'ai aucun problème de latence ou de bande passante notable.

Le fait est que mon serveur dédié me fait payer la bande passante et je dois tout éteindre pour télécharger de gros fichiers (dont j'ai également besoin, car la science). Donc, comme je ne veux pas allumer et éteindre cette chose chaque fois que je veux voir une vidéo youtube, je voudrais en quelque sorte dire à Firefox (ou à mon ordinateur) de simplement router youtube.com via le proxy SOCKS5. Je vois que cela peut être facilement fait dans l'autre sens (c'est-à-dire envoyer tout le trafic via le proxy s'ils ne sont PAS pour ces domaines), mais je ne sais pas comment les concepteurs n'ont pas pensé au cas contraire.

Quelqu'un connaît-il un moyen simple d'y parvenir?

almosnow
la source

Réponses:

12

Vous pouvez créer un AutoConfiguration Proxy fichier (PAC) pour Firefox, et le configurer sous « Configuration automatique du proxy URL » (soit mettre le fichier PAC en ligne quelque part sur un serveur HTTP ou en utilisant une file:///path/to/file.pacURL de style).

Le fichier PAC lui-même est un fichier texte (JavaScript) définissant une fonction qui détermine quel proxy utiliser:

function FindProxyForURL(url, host)
{
  if (shExpMatch(url, "*.youtube.com/*")) {
    return "SOCKS localhost:5000";
  } else {
    return "DIRECT";
  }
}

Il s'agit d'un exemple simple qui devrait répondre à vos besoins, mais avec PAC, il est possible de définir des schémas de proxy très complexes (par exemple, en tenant compte de l'heure du jour, en ayant plusieurs serveurs proxy, en fonction de l'adresse IP locale, etc.). Vous pouvez facilement trouver plus d'informations sur les fichiers PAC sur Internet, par exemple http://findproxyforurl.com/pac-functions/ .

Ale
la source
sweeeeeeeeeeet!
almosnow
3

Je ne sais pas pour Firefox, mais sur Chrome j'utilise l'extension Proxy SwitchySharp ( https://chrome.google.com/webstore/detail/proxy-switchysharp/dpplabbmogkhghncfbfdeeokoefdjegm , jetez un œil sur le troisième écran de ce site), où je peux créer des règles.

Avec cela, vous pouvez créer une règle dans laquelle le domaine youtube.com utilise le proxy configuré et tous les autres sites n'utilisent aucun proxy.

thomasgustavo
la source
1

Si vous souhaitez passer par un proxy uniquement pour certains domaines, une extension peut faire le choix via un modèle. Par exemple *youtube*et quoi que ce soit d'autre, les domaines qu'ils utilisent sont. FoxyProxy le fait https://addons.mozilla.org/en-us/firefox/addon/foxyproxy-standard/

manos
la source
"" Je dois tout désactiver "- que voulez-vous dire?" J'ai enlevé ça. C'est un commentaire qui devrait être affiché en tant que commentaire sur la question. Pas dans le cadre d'une réponse.
JakeGould