iPhone에서 socks 프록시를 사용하여 개인 서버에 액세스하고 싶습니다.
어쩐지, 보통으로 할 수 있네요. 그래서 메모.
대상 서버에 SSH
ssh -D 1080 -g ec2-user@target-server
-g
가 포인트. 이렇게하면 다른 컴퓨터 (이번에는 iPhone)에서 SSH를 실행하는 컴퓨터의 포트 포워드를 사용할 수 있습니다.설정 파일을 작성해, HTTP 액세스가 가능한 장소에 배치
socks.pac
function FindProxyForURL(url, host) {
return "SOCKS 192.168.xx.xx:1080";
}
dropbox에도 넣어두면 좋을 것입니다.
iPhone 프록시 설정
HTTP PROXY 설정을 AUTO로 설정하고 방금 dropbox에 올린 pac 파일을 지정합니다.
이상
이제 target-server 내에서 실행중인 서버에 액세스하거나 target-server를 통해 다른 서버에 액세스 할 수 있습니다.
일단 확인
uraura@rosemary$ echo "via socks proxy">index.html
uraura@rosemary$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
프록시 설정을 변경한 iPhone에서 localhost:8000에 액세스
127.0.0.1 - - [14/Dec/2015 07:38:36] "GET / HTTP/1.1" 200 -
접근할 수 있었다!!
주) iPhone의 Chrome에서라고 했지만, Safari로부터라고
channel 9: open failed: administratively prohibited: open failed
라고 불려 열 수 없었습니다. . . 왜일까 2015-12-14
-vvvv
와 함께 SSH하여 로그를 보았을 때,Safari에서 액세스한 경우
debug2: channel 15: dynamic request: socks5 host www.localhost.com port 8000 command 1
channel 15: open failed: administratively prohibited: open failed
debug2: channel 15: zombie
debug2: channel 15: garbage collecting
debug1: channel 15: free: direct-tcpip: listening port 1080 for www.localhost.com port 8000, connect from 192.168.xx.26 port 59393 to 192.168.xx.33 port 1080, nchannels 16
...
Chrome에서 액세스한 경우
debug2: channel 6: dynamic request: socks5 host localhost port 8000 command 1
debug2: channel 6: open confirm rwindow 2097152 rmax 32768
127.0.0.1 - - [14/Dec/2015 08:59:22] "GET / HTTP/1.1" 200 -
debug2: channel 6: rcvd eof
debug2: channel 6: output open -> drain
debug2: channel 6: obuf empty
debug2: channel 6: close_write
debug2: channel 6: output drain -> closed
debug2: channel 6: read<=0 rfd 14 len 0
debug2: channel 6: read failed
debug2: channel 6: close_read
debug2: channel 6: input open -> drain
debug2: channel 6: ibuf empty
debug2: channel 6: send eof
debug2: channel 6: input drain -> closed
debug2: channel 6: send close
debug3: channel 6: will not send data after close
debug2: channel 6: rcvd close
debug3: channel 6: will not send data after close
debug2: channel 6: is dead
debug2: channel 6: garbage collecting
debug1: channel 6: free: direct-tcpip: listening port 1080 for localhost port 8000, connect from 192.168.xx.26 port 59402 to 192.168.xx.33 port 1080, nchannels 7
왜 Safari의 경우
www.localhost.com
에 액세스하겠습니다. . . ?http://localhost.localdomain:8000
와 딱딱하게 지정하면 Safari에서도 갈 수있었습니다.
Reference
이 문제에 관하여(iPhone에서 socks 프록시를 사용하여 개인 서버에 액세스하고 싶습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/uraura/items/44b43334300c0e7673f3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)