=> 셋팅 내용은 링크 참고. https://github.com/Yongdae-Kim/HowToUseSquid
=> PC의 아이피가 자주 변경되시는 분들은 설정에서 모두 개방하신 후 aws의 보안그룹에서 제어하시는게 편하실 겁니다.
sudo su
yum install -y squid
vim /etc/squid/squid.conf
service squid start
4. 파이어폭스 프록시 설정
크롬은 시스템 프록시를 변경해야하지만 파이어폭스는 브라우저만 프록시 적용이 가능.
파이어폭스를 유데미 전용 브라우저로 쓰는걸 추천
파이어폭스 -> 설정 -> 최하단 -> 네트워크 설정 -> 프록시 정보 입력
5. hello world
엄청나게 끊기던 유데미 영상이 나름 유투브급(?)으로 잘 나옵니다!!!! 눙물....
★★ 자세한 설명이 필요하신 분들은 아래 버튼을 눌러주세요! ★★
1. 외국 클라우드 서비스에 VM 만들기
우선, 우린 돈이 없으므로 (...) 혜자로운 AWS의 무료티어 서비스를 사용 합니다. 무려 1년동안 무료로! 제공해줍니다.
사실 aws 이전에 애저에서 프록시 서버를 구성했고 성능도 만족스러웠지만....
aws와 다르게 한달만 무료라는걸 뒤늦게 확인하여 과감히 삭제 해버렸습니다.
그렇게 aws로 왔더니 전 이미 프리티어 구간이 끝나서... 결국은 가장 저렴한 모델 + 스팟서버로 구성하게 되었습니다 --;;
(1). aws 접속하여 계정 생성하기
https://aws.amazon.com/ko/?nc2=h_lg
매우 친절하게 되어 있으니 그냥 만드시면 됩니다. :)
중간에 카드를 등록하는 과정이 있을텐데, 등록하고 바로 $1 이 결제되지만 다시 환불됩니다.
(정상 카드인지 확인)
1년이 지나 프리티어 기간이 끝나면 실제 과금이 될 수 있으니 꼭 잊지 마시고 사용이 끝나면 모든 자원을 삭제하고, 등록된 카드삭제 혹은 계정 삭제를 하시길 권장합니다!
(2). 리전 선택하기 => 캘리포니아
aws는 전세계 다양한 곳에 센터가 존재합니다. 어느 지역에 만드느냐에 따라 환경이 달라집니다.
로그인 하시면 우측 상단에서 리전을 변경할 수 있습니다.
미국 내에서도 동부, 서부로 나뉘며 비지니아 북부, 오하이오, 캘리포니아, 오레곤으로 나뉩니다. 또다른 선택지로 캐나다도 있군요!
어디가 가장 빠를까요?
애저에서 구축했을때 ping테스트를 해봅니다.
- 애저 미국 동부 -
오오오오. 시간이 1.5ms 가 나오네요.
- 한국에서 유데미로 ping을 보냈을때 -
핑이 모든걸 다 말해주지는 않지만, 한국에선 2자리수 이상 나오는것과 비교할때 많이 양호해집니다.
그런데 aws는 미국 동부도 두곳 입니다.
어..........디로 하지....
애저에서 동부는 해봤으니 aws에서는 서부를 해보기로 합니다.
음......일단 직구 하느라 조금 친숙한 오레곤으로 찍고 서버 구성 후 ping 테스트를 해봅니다.
- aws 오레곤 -
애저보다는 못하지만 한국에 비해서는 훌륭합니다.
하.......그러나 애저에서 1.xx ms 를 본 이상 6.xx ms는 용납할 수 없습니다.
잠시 귀차니즘을 이겨내고...... 각 리전마다 인스턴스를 생성해서 어느 리전이 가장 좋은지 노가다를 해봅니다. ㅜ.ㅜ
그래 역시 동부가 빠른가보다...
동부, 오하이오에 생성해봅니다.
- 오하이오 리전 -
"응 아니야"
바로 동부를 버리고 포프님의 기운이 서려있는 캐나다로 넘어가 봅니다.
아무려면 녹화해서 올리시는 곳일텐데 느리겠어?
- 캐나다 리전 -
"응 여기도 느려"
...
다시 서부로 돌아와서 캘리포니아에 만들어 봅니다.
- 캘리포니아 리전 -
찾았다!
2. 프록시 서버 만들기
(1). ec2 생성하기
- 인스턴스 생성
- AMI 선택
Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type 를 사용 합니다.
- 인스턴스 유형
프리티어 사용이 가능한 t2.micro 선택
=> 프리티어가 끝나신 분들은 t3.nano 선택 후 스팟 신청
- 인스턴스 구성
퍼블릭 IP 자동 할당 : '활성화' 선택
=> 프리티어가 아니신 분들은 '스팟 인스턴스 요청' 선택 후 현재 가격보다 아주 쪼끔만 더 높게 적으시고 넘어가시면 됩니다.
==> 만약 시세(?)가 오르면 서버가 자동으로 닫혀버립니다만, 스팟으로 계속 쓸 경우 많이 할인 받을 수 있습니다. 저의 경우도 시간당 $0.002로 사용중입니다.
==> 서버가 닫힐 경우 서버 생성 작업을 다시 해줘야 합니다.
- 스토리지 추가
기본 상태로 통과~
- 태그추가
통과
- 보안 그룹 구성
'새 보안 그룹 생성' 선택, 적절한 이름과 설명 기입
SSH => 소스에 '내 IP'로 변경
'규칙추가' 눌러서 한칸 추가
유형=> 사용자 지정 TCP, 포트=> 3128, 소스=> 내IP
※ 내IP가 변경될 경우 aws 웹에서 보안그룹의 소스 IP만 수정해주시면 됩니다.
※ 이거 제대로 안해두시면 해킹당해서 요금폭탄 맞을 수 있습니다!!!!!
(<- 유 경험자)
- 검토
프리티어 맞는지 확인 후 '시작'
- 키페어
'새 키 페어 생성' 선택
적절한 키 페어 이름 입력 후 키 페어 다운로드
"이거 잃어버리면 망해요. 다시 처음부터 해야합니다."
다운로드 받은 xxxx.pem 파일을 잘 보관해두고 외부에 유출되지 않게 합니다.
=> 인스턴스 시작
(2). putty 로 접속하기
인스턴스가 만들어지는 중에 우리는 putty로 서버에 접속할 준비를 합니다.
- putty와 PuTTYgen을 설치
https://www.putty.org/
- PuTTYgen 실행, 중앙 하단에 있는 Load 버튼을 눌러서 불러오기 팝업을 띄웁니다.
- 기본적으로 .ppk 파일을 찾게 되어 있는데 이를 모든파일로 변경 후 아까 다운로드 받았던 pem 파일을 선택하여 읽어옵니다.
- Save private key 를 눌러 .ppk 파일로 저장합니다.
- 지금쯤 다 만들어졌을 ec2의 정보를 확인합니다. 하단에 IPv4 퍼블릭 IP를 확인합니다.
제 아이피는 34.216.187.x 이군요.
※ 참고로 aws 의 ec2는 정지 후 시작 시키면 퍼블릭IP가 변경됩니다. 자주 껏다 켰다 하실거라면 염두해두세요.
- putty 를 실행시킵니다.
- Host Name에 위에서 확인한 IP주소를 넣어줍니다. 포트는 기본 22번 포트를 씁니다.
- 왼쪽 메뉴 중, Connection->SSH->Auth 클릭. 하단에 Browse를 눌러 위에서 만든 ppk 파일을 넣어줍니다.
- 다시 메뉴 중 최상단에 있는 Session을 눌러 돌아옵니다.
- Saved Sessions에 적절한 이름을 넣고 세이브 시킨 뒤 Open을 눌러 서버에 접속합니다.
- 첫 접속시 경고창이 뜨니까 자연스럽게 예스맨이 되시면 됩니다.
- 로그인 하라고 뜬다면 기본 사용자인 'ec2-user'를 입력해주면 됩니다.
(root 사용 불가)
접속 성공!
(3). 프록시 서버 설치하기
프록시 서버로는 오징어.....를 쓸겁니다.
http://www.squid-cache.org/
자세한 설정 메뉴얼은 https://github.com/Yongdae-Kim/HowToUseSquid 여기를 참고해주세요. 지금 당장 필요한것만 챙깁니다 :)
야매로 빠르게 쓰고 싶은거니... yum 으로 설치 해줍니다 --;;
아래 명령어를 차례 차례 써주시면 됩니다.
sudo su
yum install -y squid
sudo su : root 권한 획득
yum install -y squid : 오징어 설치
설치 완료
(4). squid 환경설정
나의IP주소를 알아야 합니다.
https://www.myip.com/
위 싸이트에 접속하시면 내 아이피주소가 나오니 확인해주세요!
설정 파일을 에디터로 엽니다.
vim /etc/squid/squid.conf
vi 명령어가 익숙하시다면 편히 수정하시면 되고,
쓸 줄 모르시는 분들은 방향키로 이동 후 입력해야할 곳에서 i 를 눌러 '입력모드'로 변경 후 입력해주시고 esc를 눌러서 '보기모드'로 변경한 후 방향키로 이동해주시면 됩니다.
'입력모드'에서 방향키를 누르면 경우에 따라 불상사가 발생할 수 있습니다.
프록시 서버에 들어올 수 있는 ip와 차단할 ip 등등을 설정해줘야 합니다.
이 설정을 잘못할 경우 트래픽 폭탄 => 요금 폭탄으로 이어질 수 있으니 주의해야합니다.
위에 단계에서 aws 보안그룹을 통해 1차적으로 거를테니 여기서는 좀 널널하게 해도 되긴 합니다만, 어쨋든 설정은 정상적으로 합니다. 혹~시나, 만~약에가 있으니까요.
- 방향키로 8번째 줄로 이동하여 i를 누릅니다.
- acl 이름 src 내IP주소/30 입력 후 엔터(줄바꿈)
- esc눌러서 보기모드로 변경
- 32번줄로 이동하여 첫번째 칸에서 i를 누른 후 #을 입력해서 주석처리 합니다. ESC를 눌러 보기모드로 변경합니다.
- 35번줄로 이동하여 i를 눌러 #을 입력해서 주석처리 해준 후 ESC로 보기모드로 나옵니다.
- 55번줄쯤 가서 i를 눌러 다음을 입력합니다.
http_access allow 이름
- 나머지는 그냥둬도 됩니다.
- 보기모드에서 :wq 라고 입력 후 엔터 (저장 후 빠져나감)
※ vi 편집기가 영 불편하시다면, 파일을 여신 후 D 키를 그냥 쭉 누르고 계세요. 그럼 내용이 다 지워질겁니다! 다 지워지면 a 버튼 눌러서 입력모드로 변경하신 후 아래 내용을 복붙해서 넣으세요 (물론 중간에 있는 내PC아이피는 변경하셔야겠죠?) ESC를 누르고 :wq로 빠져나오시면 됩니다.
#
# Recommended minimum configuration:
#
# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl jooho src 119.193.x.x/30 # 내 IP 주소 추가. 나만 접속할 수 있게 하기 위해서.
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7 # RFC 4193 local private network range