내 컴퓨터에는 다음이 있습니다.
$ cat /etc/profile.d/proxy.sh
export http_proxy=http://192.168.1.30:3128
export https_proxy=https://192.168.1.30:3128
이것은 localhost의 애플리케이션에서 HTTP 인터페이스를 사용해야 할 때까지 훌륭하게 작동했습니다.
$ wget localhost
--2023-03-02 06:54:52-- http://localhost/
Connecting to 192.168.1.30:3128... connected.
Proxy request sent, awaiting response... 503 Service Unavailable
2023-03-02 06:54:52 ERROR 503: Service Unavailable.
$ wget 127.0.0.1
--2023-03-02 06:55:20-- http://127.0.0.1/
Connecting to 192.168.1.30:3128... connected.
Proxy request sent, awaiting response... 403 Forbidden
2023-03-02 06:55:20 ERROR 403: Forbidden.
localhost
요청이 127.0.0.1
프록시로 전달되는 것을 방지하는 방법이 있습니까 ?
세부 사항:
이 기기는 인터넷에 직접 연결되어 있지 않습니다. 게이트웨이나 기본 경로가 없습니다. 그러나 프록시 서버(포트 3128)가 설치되어 있고 인터넷에 연결된 프록시 시스템(192.168.1.30)이 있는 LAN에 있습니다.
$ ip addr
1: lo: ...
inet 127.0.0.1/8 scope host lo
2: eno1: ...
altname enp24s0f0
inet 192.168.1.100/24 brd 192.168.1.255 scope global eno1
$ ip route
192.168.1.0/24 dev eno1 proto kernel scope link src 192.168.1.100
$ cat /etc/hosts
127.0.0.1 localhost
$ cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto eno1
iface eno1 inet static
address 192.168.1.100
netmask 255.255.255.0
답변1
wget
매뉴얼 페이지 에서 :
환경
Wget은 HTTP 및 FTP 검색 프록시를 지원합니다. Wget이 인식하는 프록시 위치를 지정하는 표준 방법은 다음 환경 변수를 사용하는 것입니다.
http_proxy그리고https_proxy
설정된 경우 http_proxy 및 https_proxy 변수에는 각각 HTTP 및 HTTPS 연결에 대한 프록시 URL이 포함되어야 합니다.
ftp_proxy
이 변수에는 FTP 연결 프록시의 URL이 포함되어야 합니다. http_proxy와 ftp_proxy가 동일한 URL로 설정되는 것이 일반적입니다.
프록시 없음
이 변수에는 쉼표로 구분된 도메인 확장 프록시 목록이 포함되어야 합니다.아니요예를 들어 no_proxy 값이 이면
.mit.edu
프록시는 MIT에서 문서를 검색하는 데 사용되지 않습니다.
따라서 다음 /etc/profile.d/proxy.sh
과 같이 변경해야 합니다.
export http_proxy=http://192.168.1.30:3128
export https_proxy=https://192.168.1.30:3128
export no_proxy="127.0.0.1,localhost"
*_proxy
환경 변수를 사용하지 않는 GUI 웹 브라우저가 있는 경우에이전트 자동 구성 파일, 파일에 이름을 지정 proxy.pac
하고 로컬 HTTP 서버가 해당 파일에 대한 MIME 유형을 제공하도록 합니다 application/x-ns-proxy-autoconfig
.
그런 다음 데스크톱 환경이나 웹 브라우저의 프록시 설정에서 프록시 자동 구성 URL(가능하면)을 지정하여 http://localhost/some/where/proxy.pac
해당 자동 구성 파일을 사용하도록 데스크톱 환경 및/또는 웹 브라우저를 구성합니다 .file:///some/location/proxy.pac
귀하의 경우 파일 내용은 다음과 같습니다.
function FindProxyForURL(url, host)
{
// If not a http: or https: URL, go direct always.
if (!shExpMatch(url,"http*") {
return "DIRECT";
}
// If the destination is:
// - any 127.*.*.* address
// - or anything like "localhost*"
// - or the web browser host's own IP address
// Then go direct to destination.
else if (shExpMatch(host, "127.*")
|| shExpMatch(host, "localhost*")
|| host == myIpAddress()) {
return "DIRECT";
}
else {
// Otherwise, use the proxy specified here.
return "PROXY 192.168.1.30:3128";
}
}