인터넷을 개인적으로 탐색하거나, 지역 제한 콘텐츠에 액세스하거나, 네트워크가 적용 중인 중간 방화벽을 무시하려는 경우가 있습니다.
한 가지 옵션은 VPN을 사용하는 것이지만 이 옵션을 사용하려면 컴퓨터에 클라이언트 소프트웨어를 설치하고 자신의 VPN 서버를 설정하거나 VPN 서비스에 가입해야 합니다.
더 간단한 대안은 암호화된 SOCKS 프록시 터널을 사용하여 로컬 네트워크 트래픽을 라우팅하는 것입니다. 이렇게 하면 프록시를 사용하는 모든 애플리케이션이 SSH 서버에 연결되고 서버가 모든 트래픽을 실제 대상으로 전달합니다. ISP(인터넷 서비스 공급자) 및 기타 타사에서 사용자의 트래픽을 검사하고 웹 사이트에 대한 액세스를 차단할 수 없습니다.
이 튜토리얼은 암호화된 SSH 터널을 만들고 SOCKS 프록시를 사용하도록 Firefox 및 Google Chrome 웹 브라우저를 구성하는 프로세스를 안내합니다.
필수 조건
-모든 종류의 Linux를 실행하는 서버로, SSH 액세스 권한을 통해 트래픽을 라우팅합니다.
- 웹 브라우저
- SSH 클라이언트
SSH 터널 설정
포트 9090의 로컬 시스템에서 포트 22의 SSH 서버로 트래픽을 안전하게 전달하는 SSH 터널을 생성합니다. 1024보다 큰 포트 번호를 사용할 수 있으며, 권한 있는 포트에는 루트만 포트를 열 수 있습니다.
리눅스 및 macOS 참조
로컬 시스템에서 리눅스, macOS 또는 기타 유닉스 기반 운영 체제를 실행하는 경우 다음 ssh 명령을 사용하여 SSH 터널을 쉽게 시작할 수 있습니다.
ssh -N -D 9090 [USER]@[SERVER_IP]
사용되는 옵션은 다음과 같습니다.
-N - SSH에 원격 명령을 실행하지 말라고 합니다.
-D 9090 - 지정된 포트 번호에 SOCKS 터널을 엽니다.
- [USER]@[SERVER_IP] - 원격 SSH 사용자 및 서버 IP 주소입니다.
- 백그라운드에서 명령을 실행하려면 -f 옵션을 사용합니다.
- SSH 서버가 22(기본값) 이외의 포트에서 수신 대기 중인 경우 -p [PORT_NUMBER] 옵션을 사용합니다.
명령을 실행하면 사용자 암호를 입력하라는 메시지가 표시됩니다. 입력하면 서버에 로그인되고 SSH 터널이 설정됩니다.
SSH 키 기반 인증을 설정하고 암호를 입력하지 않고 서버에 연결할 수 있습니다.
Windows
윈도우즈 사용자는 PuTTY SSH 클라이언트를 사용하여 SSH 터널을 생성할 수 있습니다. PuTTY를 다운로드할 수 있습니다.
Putty를 시작하고 Host name(또는 IP 주소) 필드에 서버 IP 주소를 입력합니다.
연결 메뉴에서 SSH를 확장하고 터널을 선택합니다. 소스 포트 필드에 포트 9090을 입력하고 동적 라디오 버튼을 확인합니다.
아래 이미지에 표시된 대로 Add 버튼을 클릭합니다.
세션 페이지로 돌아가 설정을 저장하여 매번 입력할 필요가 없습니다. [저장된 세션] 필드에 세션 이름을 입력하고 [저장] 단추를 누릅니다.
저장된 세션을 선택하고 Open 버튼을 클릭하여 원격 서버에 로그인합니다.
사용자 이름과 암호를 묻는 새 창이 나타납니다. 사용자 이름과 암호를 입력하면 서버에 로그인되고 SSH 터널이 시작됩니다.
공용 키 인증을 설정하면 암호를 입력하지 않고도 서버에 연결할 수 있습니다.
프록시를 사용하도록 브라우저 구성
이제 SSH SOCKS 터널을 열었으므로 마지막 단계는 선호하는 브라우저를 사용하도록 구성하는 것입니다.
파이어폭스
다음 단계는 윈도우즈, macOS 및 리눅스의 경우와 동일합니다.
01. 오른쪽 상단 모서리에서 햄버거 아이콘을 클릭하여 Firefox의 메뉴를 엽니다.
02. ⚙ Preferences 링크를 클릭합니다.
03. Network Settings(네트워크 설정) 섹션으로 스크롤하고 Settings...(설정...)를 클릭합니다. 단추를 누르십시오.
04. 새 창이 열립니다.
- 수동 프록시 구성 라디오 버튼을 선택합니다.
- SOCKS Host 필드에 127.0.0.1을 입력하고 Port 필드에 9090을 입력합니다.
- SOCKS v5를 사용할 때 프록시 DNS 확인란을 선택합니다.
- OK(확인) 버튼을 클릭하여 설정을 저장합니다.
이 때 Firefox가 구성되고 SSH 터널을 통해 인터넷을 검색할 수 있습니다. google.com을 열고 "내 IP란 무엇인가"를 입력하면 서버 IP 주소가 표시됩니다.
기본 설정으로 되돌리려면 네트워크 설정으로 돌아가려면 시스템 프록시 설정 사용 라디오 버튼을 선택하고 설정을 저장합니다.
또한 Firefox의 프록시 설정(예: FoxyProxy)을 구성하는 데 도움이 되는 여러 플러그인도 있습니다.
구글 크롬
Google Chrome은 기본 시스템 프록시 설정을 사용합니다. 운영 체제 프록시 설정을 변경하는 대신 SwitchyOmega 같은 추가 기능을 사용하거나 명령줄에서 Chrome 웹 브라우저를 시작할 수 있습니다.
새 프로파일과 SSH 터널을 사용하여 Chrome을 실행하려면 다음 명령을 사용합니다.
Linux
/usr/bin/google-chrome \
--user-data-dir="$HOME/proxy-profile" \
--proxy-server="socks5://localhost:9090"
macOS
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--user-data-dir="$HOME/proxy-profile" \
--proxy-server="socks5://localhost:9090"
Windows
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^
--user-data-dir="%USERPROFILE%\proxy-profile" ^
--proxy-server="socks5://localhost:9090"
프로필이 없는 경우 프로필이 자동으로 생성됩니다. 이렇게 하면 여러 개의 Chrome 인스턴스를 동시에 실행할 수 있습니다.
SSH 터널이 제대로 작동하는지 확인하려면 google.com을 열고 "What is my ip"를 입력합니다. 브라우저에 표시된 IP는 서버의 IP 주소여야 합니다.
'일상 > IT' 카테고리의 다른 글
WordPress : 죽은 흰색 화면 고치는 방법, 예제, 명령어 (0) | 2023.01.31 |
---|---|
Window : PuTTYgen으로 SSH 키 생성 방법, 예제, 명령어 (0) | 2021.08.24 |
모바일 장치에서 로컬 호스트 사이트보기 (0) | 2020.08.08 |
Local, Session, Cookie Storage의 차이점 (0) | 2020.08.07 |
FPGA에 텐서 코어를 구축할 수 있을까요? 그렇다면 현재 GPU 솔루션과 어떻게 비교될까요? (0) | 2019.12.31 |