[강좌] PC/모바일 Ubuntu 18.04에서 Shadowsocks chacha20-ietf-poly1305로 구축하기

*이 글은 제 블로그에도 포스팅되어있습니다*

https://blog.naver.com/cvdf95/221409037959


기존에 올렸던 https://www.clien.net/service/board/lecture/12513866CLIEN 로 잘 사용 하던 도중


갑자기 새벽에 중국 만리장성 방화벽에 의해 제 VPS가 차단되어버렸습니다 ㅠㅠ

비용을 지불하여 IP를 바꿨지만 차단 문제에 대한 근본적인 해결이 필요하다고 느꼈고

그 때문에 기존에 사용하던 AES-256-cfb보다 더 암호화된 방식을 찾았습니다

가장 최근에 나온 두 암호화 방식으로는 chacha20-ietf-poly1305 와 AES-256-GCM 이 있습니다
(참고 : https://shadowsocks.org/en/spec/AEAD-Ciphers.html)


그래서 기존 서버에 설정파일을 수정하여 chacha20-ietf-poly1305로 바꿔볼려했으나

이상하게 지원이 되질않아 다른 방법으로 시도하였고 십수번의 시도 끝에 성공했습니다


그 결과 남은 초기화 완료 메일들....jpg



서버로는 중국에 전용선을 두고 있는 BandwagonHost 의 중국 CN2서버 DC8라인을 사용하였습니다

Ubuntu 18.04환경에서 작업을 진행합니다

먼저 sudo su로 관리자 권한을 획득한 후



# 설치

apt update && apt upgrade
apt install shadowsocks-libev

로 설치를 먼저 진행하고



# 설정파일 삽입


tee /etc/shadowsocks-libev/config.json > /dev/null<<EOF
{
"server":"0.0.0.0",
"server_port":8389,
"local_port":1081,
"password":"{원하는 비밀번호}",
"timeout":60,
"method":"chacha20-ietf-poly1305"
}
EOF

위 파일에서 포트번호와 비밀번호만 원하는것으로 바꾼 후 tee부터 EOF까지 복사후 그대로 붙여넣어줍니다



# 서비스 시작
systemctl restart shadowsocks-libev
systemctl start shadowsocks-libev.service
systemctl enable shadowsocks-libev.service

# 서비스 실행 확인
systemctl status shadowsocks-libev.service

# 추가오류발생 방지
apt-get install rng-tools
rngd -r /dev/urandom

위에서 설정한 포트번호로 포트포워딩하는것 잊지마세요!


여기까지 따라오셨다면 설정 끝입니다!

# OS별 클라이언트

iOS는 Quantumult https://itunes.apple.com/us/app/quantumult/id1252015438?mt=8


Android 는 Shadowsocks https://play.google.com/store/apps/details?id=com.github.shadowsocks


Windows는 https://github.com/shadowsocks/shadowsocks-windows/releases


이 방법도 만리장성방화벽에 막히지않는다는 확신은 없습니다
제대로 막아준다는 V2ray+Websocket+TLS 방법을 성공하고 싶었으나
너무 어려운 설정방법+도메인, SSL인증서가 필요하여 포기하였습니다
성공하신분 있으시면 꼭 알려주세요! (한국인중엔 없을것같지만...)


참고 : http://blog.zedyeung.com/2018/08/14/Ubuntu-18-04-set-up-Shadowsocks-server-with-fail2ban/



November 29, 2018 at 10:18PM