티스토리 뷰
서비스 개발 중 한국 AWS ip 주소 영역이 막혀있는 경우가 있어 어떻게 할까 고민해 보았습니다.
서비스 리전 변경을 변경하는 건 속도 문제도 있고 기존 설정을 모두 이동해야 하므로
다른 리전에 proxy 서버를 설정하여 우회하기로 결정하였습니다.
EC2에 설정할 proxy 우회 프로그램은 tinyproxy(로컬 테스트용)와 squid(운영환경용) 두가지로 결정하였으며
아래와 같이 셋팅하였습니다.
EC2 인스턴스 추가 및 권한 설정 등의 설명은 제외합니다.
■ Tinyproxy
1. 설치
sudo su
apt-get update
apt-get install tinyproxy
2. Configuration
nano /etc/tinyproxy/tinyproxy.conf
(우분투 14에 설치할 경우 /etc/tinyproxy.conf)
- Allow section 찾아서 local ip 접속 허용 문구 추가 (EC2에 설치하는 경우 EC2 ip)
: Allow xxx.xxx.xxx.xx
- 유동 ip 사용하는 경우 영역대로 설정 가능 ( 예. 91.*.*.* 영역대인 경우 )
: Allow 91.0.0.0/8
- 또는 아래와 같이 한 level 아래로도 설정 가능
: Allow 91.120.0.0/16
- tinyproxy의 기본 port 는 8888 이며 원할 경우 설정파일에서 찾아서 변경
: Port 8888
- 설정 저장 후 (ctrl+O, ctrl+X) 서버 restart
/etc/init.d/tinyproxy restart
3. 크론탭 설정
- 메모리 부족을 방지하기 해 주기적으로 proxy service를 restart함
crontab -e
0 2 * * * /etc/init.d/tinyproxy restart
- EC2 보안그룹에서 tinyproxy가 사용하는 port를 개방한다. (default: 8888)
- 위치무관으로 개방할 경우 악용되어 요금폭탄을 맞을 수 있으므로 안심할 수 있는 주소 또는 보안그룹에만 개방한다.
■ Squid
1. 설치
sudo su
apt-get update && apt-get install squid aparche2-utils -y
2. Configuration
nano /etc/squid/squid.conf
- http deny all 찾아서 http allow all 로 변경 (파일 내용이 매우 많으므로 winscp 로 line 찾는 것을 추천)
- ctrl+O로 저장 ctrl+X 로 수정 끝내기
3. 특정 domain 을 block 할 경우 아래와 같이 처리
nano /etc/squid/blocked_sites.acl
- 파일에 차단할 도메인 추가 ( .google.com )
- 저장 후 수정 끝내기
nano /etc/squid/squid.conf 후 아래 문구 입력
acl blocked_url dstdomain "/etc/squid/blocked_sites.acl"
http_access deny blocked_url
- 저장 후 edit 모드 끝내기
- (서버 restart)
service squid restart
4. proxy user 설정
touch /etc/squid/passwd
htpasswd /eetc/squid/passwd 사용자ID
- pw 입력
nano /etc/squid/squid.conf 후 아래 문구 입력
: auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
acl squid_users proxy_auth REQUIRED
http_access allow squid_users
- 저장 후 서버 restart
5. port 변경
- 기본 port 는 3128
nano /etc/squid/squid.conf
- #http_port 3128 찾아서 http_port XXXX 로 변경
- 저장 후 서버 restart
6. 크론탭 설정
- 메모리 부족을 방지하기 해 주기적으로 proxy service를 restart함
crontab -e
0 2 * * * service squid restart
7. EC2 보안그룹에서 tinyproxy가 사용하는 port를 개방한다. (default: 3128)
- id/pw 가 설정되어 있으므로 위치무관으로 개방해야만 하는 경우 유용
'dev > aws' 카테고리의 다른 글
AWS S3와 CloudFront로 정적 파일 배포하기 (0) | 2019.12.09 |
---|---|
AWS codedeploy 를 사용하여 ECS blue/green 배포하기 (0) | 2019.11.28 |
AWS EC2 FTP 설정 (0) | 2019.11.26 |
RDS maria db 생성시 추가해야할 설정 (0) | 2019.03.19 |
AWS 에서 non-www 를 www 로 리다이렉트 (0) | 2019.03.19 |
- Total
- Today
- Yesterday
- aws
- MariaDB
- vue android
- 한글 like
- 긴급재난지원금
- Vue 다국어
- vuex-persistedstate
- vs code flutter
- 로그
- ag grid
- ec2
- i18n
- Android Studio Emulator
- v-iterator
- vue mobile
- vs code fultter debug
- 갤럭시 에뮬레이터
- ag-grid
- AVD
- 다국어
- nativescript-vue
- 경로 초기화
- dynamic component
- vue ios
- vue
- session stroage
- 에뮬레이터
- Add AVD
- 플러터 디버그
- Galaxy Emulator
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |