[LINUX] Paramètre pour transmettre le proxy local uniquement pour un site spécifique

introduction

Dans l'environnement V6 plus à la maison, il y a un problème qu'il est difficile de se connecter à certains sites (ou travailler). Si cela reste tel quel, cela risque de constituer un obstacle au télétravail qui pourrait être fait à l'avenir, alors créez un proxy local sur Sakura VPS connecté par VPN et connectez uniquement le site concerné via le proxy. Je l'ai essayé. (Eh bien, je pense que c'est normal de passer par un proxy, mais je ne veux pas être accidentellement pris dans la limitation de la bande VPS sur Youtube ...)

Environnement prérequis

--Serveur: debian 10 Buster

Aperçu des travaux

VPS(debian 10 Buster)

--squid setup

Serveur domestique (Debian 10 Buster)

--Installation de nginx (paramètres par défaut uniquement) --Placement du fichier PAC

PC en LAN (Windows 10)

Procédure de construction

VPS

Installez Squid

# apt install squid

paramètres de calmar

# vi /etc/squid/squid.conf

/etc/squid/squid.conf


#Adresse réseau du réseau local
acl lan src 192.168.1.0/24

#Refuser autre que le port spécifié comme destination de connexion
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
http_access deny !Safe_ports

#Refuser la connexion autre que le port 443 lors de la connexion avec SSL
acl SSL_ports port 443
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports

#Autoriser l'hôte local
http_access allow localhost

#Autoriser les adresses locales
http_access allow lan

#Refuser les autres adresses
http_access deny all

#Spécifiez le port de réponse
http_port 8080

#Emplacement de sortie du vidage de mémoire
coredump_dir /var/spool/squid

#Paramètres du cache
refresh_pattern ^ftp:       1440    20% 10080
refresh_pattern ^gopher:    1440    0%  1440
refresh_pattern -i (/cgi-bin/|\?) 0 0%  0
refresh_pattern .       0   20% 4320

#Cachez que vous traversez le calmar
request_header_access Referer deny all
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
forwarded_for off

#Paramètres de rotation du journal
logfile_rotate 0

Redémarrez squid après le réglage.


# systemctl restart squid

Serveur domestique

installation de nginx

Aucun réglage requis w C'est de toute façon une opération locale.

# apt install nginx

Placement des fichiers PAC

Créez proxy.pac dans le dossier racine par défaut (/ var / www / html) de nginx.

# vi /var/www/html/proxy.pac

/var/www/html/proxy.pac


function FindProxyForURL(url,host){
        if(shExpMatch(host,"<Chaîne de correspondance du nom d'hôte>")){
                return "PROXY <Adresse VPN VPS>:<numéro de port>";
        }
        return "DIRECT";
}

Changez le propriétaire du proxy.pac créé en www-data

# chown www-data:www-data /var/www/html/proxy.pac

Modifier les autorisations du proxy.pac créé

# chmod 644 /var/www/html/proxy.pac

PC en LAN (Windows 10)

Paramètres proxy automatiques

Ouvrez [** Menu Démarrer ] → [ Paramètres ] → [ Réseau et Internet ] → [ Proxy ] et ouvrez Dans [ Automatic Proxy Setup ] Cochez ** Utiliser le script de configuration ** À [ Script Address **] Entrez http: // <adresse VPN VPS> / proxy.pac. proxy_settings.png Après cela, ouvrez le navigateur, vérifiez si vous pouvez accéder au site normalement, et vous avez terminé!

Recommended Posts

Paramètre pour transmettre le proxy local uniquement pour un site spécifique
Définition du chemin de la bibliothèque pour réussir le test d'unité locale GAE / Python