- [RFC 1928] SOCKS Protocol Version 5
- [오픈소스] SOCKS Client/Server
장점/단점
SOCKS 통신 인증 과정
클라이언트 사용할 인증 방식 갯수/ 인증 방식 을 서버에게 알려줌
클라이언트 패킷 구조 : VER/ NMETHODS/ METHODS
서버 패킷 구조 : VER / METHODS
METHODS 종류들 (RFC 참고)
o X'00' NO AUTHENTICATION REQUIRED
o X'01' GSSAPI
o X'02' USERNAME/PASSWORD
o X'03' to X'7F' IANA ASSIGNED
o X'80' to X'FE' RESERVED FOR PRIVATE METHODS
o X'FF' NO ACCEPTABLE METHODS
Request
Reply
UDP 기반 클라이언트
클라언트 패킷 구조 : RSV/FRAG/ATYP/DST.ADDR/DST.PORT/DATA
+----+------+------+----------+----------+----------+
|RSV | FRAG | ATYP | DST.ADDR | DST.PORT | DATA |
+----+------+------+----------+----------+----------+
| 2 | 1 | 1 | Variable | 2 | Variable |
+----+------+------+----------+----------+----------+
RSV Reserved X'0000'
[서버] https://github.com/Lozy/danted
[클라이언트] https://github.com/darkk/redsocks
proxy 서버 - 클라이언트 간 통신 테스트
참고자료
[출처] https://www.rfc-editor.org/rfc/rfc1928
[출처] https://github.com/Lozy/danted
[출처] https://github.com/darkk/redsocks