프록시 프로토콜 · Clash 문서

ShadowsocksR (SSR)

현재 Mihomo 필드를 기준으로 Clash 생태계의 ShadowsocksR 아웃바운드를 설정합니다. 스트림 암호화, Protocol, Obfs, 이전 노드와의 호환 범위를 다룹니다.

  • cipher
  • protocol
  • protocol-param
  • obfs
  • udp
프록시 프로토콜

SSR과 Shadowsocks의 설정 차이

ShadowsocksR은 이전 SSR 서버에서 사용하는 호환 아웃바운드 유형입니다. 클라이언트는 SSR 난독화, 스트림 암호화 및 SSR Protocol을 차례로 적용하므로 설정에는 SS의 cipher와 password 외의 필드도 포함됩니다.

기존 SSR 노드는 서버나 신뢰할 수 있는 구독에서 제공한 전체 필드를 기준으로 설정해야 합니다. 최신 Shadowsocks 노드에서 다음 항목만 바꾼 뒤 type SSR로 사용해서는 안 됩니다.

최소 필수 필드

SSR 노드에는 일반 주소 필드 외에도 비밀번호, 스트림 암호화 방식, 난독화 방식 및 SSR Protocol이 모두 필요합니다.

name필수
현재 설정 안에서 고유해야 하는 노드 이름입니다.
type필수
고정값 ssr
server필수
SSR 서버 도메인 또는 IP입니다.
port필수
SSR 서버 수신 포트입니다.
cipher필수
SSR에서 사용하는 스트림 암호화 방식이며 서버와 일치해야 합니다.
password필수
SSR 노드 비밀번호입니다.
obfs필수
연결 형태의 처리 방식을 결정하는 SSR 난독화 이름입니다.
protocol필수
인증 및 데이터 캡슐화를 결정하는 SSR Protocol 이름입니다.

Cipher, Obfs 및 Protocol은 한 세트로 일치해야 합니다

현재 SSR 구현은 지원되는 스트림 암호화 방식을 받아들이며 다음 값도 호환합니다: nonenone 내부에서는 다음 방식으로 dummy 처리합니다. 최신 SS AEAD cipher는 SSR에 직접 사용할 수 없습니다.

SSR 핵심 필드의 역할
필드역할설정 요구 사항
cipherSSR 데이터 스트림 암호화SSR 서버에서 제공한 스트림 암호화 방식을 사용해야 하며 AEAD 이름으로 바꿀 수 없음
password암호화 키 파생현재 SSR 노드의 비밀번호와 정확히 일치
obfs연결 형태 처리서버에서 지원하는 이름이어야 함
protocol인증 및 패킷 캡슐화 처리서버에서 지원하는 이름이어야 함

매개변수, UDP 및 범용 연결 옵션

매개변수 필드는 해당 서버 설정에서 요구할 때만 입력합니다. 구독에 매개변수가 포함되어 있다면 그대로 보존하고 다른 SSR 노드를 기준으로 추측하지 마세요.

obfs-param필요한 경우
SSR 난독화 모듈에 전달하는 매개변수이며 일반적인 내용은 서버 설정에 따라 달라집니다.
protocol-param필요한 경우
SSR Protocol에 전달하는 매개변수이며 서버에서 요구하는 형식을 유지해야 합니다.
udp필요한 경우
이 노드의 UDP 처리를 허용합니다. 서버, Protocol 및 네트워크도 이를 지원해야 합니다.
ip-version필요한 경우
도메인 형식의 서버 주소에서 IPv4, IPv6 또는 듀얼 스택 사용을 제어합니다.
dialer-proxy필요한 경우
다른 노드나 정책 그룹을 통해 SSR 서버에 연결합니다.
  • SSR 노드에는 Shadowsocks의 plugin 와 함께 사용하는 plugin-opts 필드가 없습니다.
  • SSR 노드에는 프로토콜 수준의 최상위 TLS 필드도 없으므로 다음을 추가하지 마세요: tls: true
  • UDP 옵션으로 잘못된 cipher, obfs 또는 protocol 조합을 해결할 수 없습니다.

SSR 노드 예시 및 문제 해결

이 예시는 공식 설정의 기본 필드를 보여 줍니다. 서버에서 다음 항목도 제공한다면 obfs-param 또는 protocol-param같은 계층에 추가해야 합니다.

  • cipher 초기화 오류가 발생하면 SSR에서 지원하는 스트림 암호화 방식을 사용했는지 확인하세요.
  • 연결은 되지만 데이터를 전송할 수 없다면 다음을 우선 확인하세요: protocol 와 함께 사용하는 protocol-param
  • 핸드셰이크 형태가 일치하지 않으면 다음 항목을 확인하세요: obfsobfs-param 그리고 서버 주소와 포트도 확인하세요.
YAML
proxies:
  - name: ssr-node
    type: ssr
    server: server.example.com
    port: 443
    cipher: chacha20-ietf
    password: your-password
    protocol: auth_sha1_v4
    obfs: tls1.2_ticket_auth