Linux Ubuntu 시스템에 MySQL을 설치하고 로컬 데이터베이스에 대한 공용 네트워크 연결 실현 [인트라넷 침투]

머리말

이 기사에서는 주로 Docker를 사용하여 MySQL을 배포하고 이를 cpole 인트라넷 침투 도구와 결합하여 로컬 데이터베이스에 대한 원격 액세스를 달성하는 방법을 소개합니다.

Docker는 데이터베이스 배포 프로세스를 더욱 단순화할 수 있는 경량 컨테이너화 솔루션을 제공합니다. MySQL 데이터베이스를 더 쉽고 빠르게 생성하고 관리할 수 있습니다. 구체적인 배포 프로세스를 공유하고 주의가 필요한 몇 가지 사항과 인트라넷 침투 도구를 사용하여 공용 네트워크 IP 없이 로컬 데이터베이스에 액세스하는 방법을 제시하겠습니다.

1.도커 설치

본 튜토리얼의 운영 환경은 Linux Ubuntu 시스템이며, 시작하기 전에 Docker를 설치해야 합니다.

터미널에서 다음 명령을 실행합니다.

Docker 소스 추가

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

도커 패키지 설치

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

이미지를 실행하여 Docker 엔진 설치가 성공했는지 확인하세요.

sudo docker run hello-world

2. Docker를 사용하여 MySQL 이미지 가져오기

sudo docker pull mysql:latest

이미지-20240124151745320

그런 다음 이미지 보기 명령을 실행합니다.

sudo docker images

이미지-20240124151856092

MySQL 이미지가 성공적으로 가져온 것을 확인할 수 있습니다.

3. MySQL 컨테이너 생성 및 시작

MySQL 이미지를 성공적으로 가져온 후 해당 이미지를 사용하여 MySQL 컨테이너를 생성하고 실행할 수 있습니다.

터미널에서 다음 명령을 실행합니다.

sudo docker run -itd -p 3308:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_DATABASE=mydb mysql

이 명령에서는 mysql1이라는 MySQL 컨테이너가 생성되어 백그라운드에서 실행되고, 컨테이너에서 실행 중인 MySQL은 로컬 호스트의 3308 포트(작성자의 호스트 포트 3306이 사용됨)에 매핑되며, MySQL 루트 비밀번호는 다음과 같습니다. 123456 으로 설정하고 mydb라는 데이터베이스를 생성했습니다.

이미지-20240124170748184

그런 다음 다음 명령을 실행하여 컨테이너가 실행 중인지 확인합니다.

sudo docker ps

1706087320684

방금 생성된 MySQL 컨테이너가 실행 중인 것을 확인할 수 있습니다.

4. 로컬 연결 테스트

4.1 MySQL 그래픽 인터페이스 도구 설치

이제 MySQL 컨테이너를 Docker에 로컬로 배포했으므로 로컬에서 연결을 테스트하려면 다음을 수행하세요.

MySQL 그래픽 인터페이스 도구인 MySQL Workbench를 다운로드할 수 있습니다.

다운로드 주소: MySQL::MySQL Workbench

이미지-20240124171209127

여기서는 Windows 시스템 버전을 선택했습니다. 필요에 따라 다른 버전을 선택하고 클릭하여 다운로드할 수 있습니다.

이미지-20240124171339905

4.2 MySQL Workbench 연결 테스트 사용

다운로드 및 설치 후 더하기 기호를 클릭하고 팝업 창에 연결하려는 MySQL 데이터베이스에 대한 정보를 추가하세요.

이미지-20240124171506886

호스트 이름은 로컬 IP 주소(192.168.184.128)로 입력해야 하며, 포트는 로컬 포트(3308)로 입력해야 하며, 실제 동작 시에는 자신의 호스트 IP 주소와 포트를 참조해야 합니다. 그런 다음 루트 사용자로 로그인하고 비밀번호 123456을 입력한 후 확인을 클릭합니다.

이미지-20240124171956809

정보를 입력하신 후, 우측 하단의 연결 테스트 버튼을 클릭하세요.

이미지-20240124171924947

MySQL 연결 성공 메시지 상자가 보이면 연결에 성공한 것입니다.확인을 클릭하여 프롬프트 상자를 닫은 후 정보 상자 오른쪽 하단의 확인 버튼을 클릭하면 로컬 MySQL 데이터베이스에 공식적으로 연결됩니다.

이미지-20240124172259142

데이터베이스 인터페이스에 성공적으로 들어가려면 여기에서 생성된 연결 방법을 클릭하십시오.

이미지-20240124172424006

5. 공용 네트워크에서 로컬 MySQL에 원격으로 액세스

그러나 현재는 방금 docker에 배포한 MySQL 데이터베이스에만 로컬로 연결할 수 있습니다.다른 장소에 있고 로컬로 배포된 MySQL 컨테이너에 원격으로 액세스하고 싶지만 공용 IP가 없는 경우에는 어떻게 될까요?

공용 네트워크 IP가 없는 환경에서 원격 액세스 요구 사항을 충족하기 위해 cpole 인트라넷 침투 도구를 사용할 수 있습니다.

5.1 인트라넷 침투 도구 설치

cpole을 설치하는 단계는 다음과 같습니다.

cpole 공식 홈페이지 주소: https://www.cpole.com

  • 원클릭 스크립트 설치 명령 사용
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 시스템에 서비스 추가
sudo systemctl enable cpolar
  • c폴라 서비스 시작
sudo systemctl start cpolar

cpole이 성공적으로 설치되면 외부 브라우저에서 Linux의 9200 포트에 접속합니다: [http://server's LAN IP:9200] cpole 계정을 사용하여 로그인합니다. 로그인 후 cpole 웹 구성 인터페이스를 볼 수 있습니다. 결과는 웹에 있습니다. 관리 인터페이스만 구성하면 됩니다.

이미지-20230831171159175

5.2 원격 연결을 위한 공용 네트워크 주소 생성

cpole 웹 UI 관리 인터페이스에 로그인한 후 왼쪽 대시보드에서 Tunnel Management - Create Tunnel을 클릭합니다.

  • 터널 이름: 사용자 정의할 수 있습니다. 기존 터널 이름과 중복되지 않도록 주의하십시오. 이 예에서는 mysql을 사용합니다.
  • 프로토콜:TCP
  • 현지 주소: 3308
  • 포트 유형: 무작위 임시 TCP 포트
  • 지역: 중국 상위 선택

딸깍 하는 소리创建

이미지-20240124173330127

생성이 성공한 후 왼쪽의 온라인 터널 목록을 열어보면 터널이 생성되면서 방금 공용 네트워크 주소가 생성된 것을 확인할 수 있습니다.다음에는 해당 주소와 포트 번호를 다른 컴퓨터(오프사이트)의 MySQL Workbench에 복사하면 됩니다. ) 연결합니다.

이미지-20240124173511412

아래 그림과 같이 IP 주소 위치를 17.tcp.cpole.top으로 입력하고 포트 번호를 12878로 입력한 후 링크를 ​​클릭하여 테스트하세요.

이미지-20240124173719740

테스트 연결이 성공한 것을 확인할 수 있습니다.

이미지-20240124173808836

공용 네트워크 주소를 사용하여 로컬 MySQL 데이터베이스 인터페이스에 대한 원격 액세스를 성공적으로 달성했습니다.

이미지-20240124173943769

요약

시연의 편의를 위해 위 작업 과정에서 cpole이 생성한 TCP 공용 네트워크 주소 터널을 사용했으며 공용 네트워크 주소는 무작위로 생성되었습니다.

이 랜덤 주소의 장점은 빠르게 설정되어 즉시 사용할 수 있다는 점입니다. 하지만 URL이 무작위로 생성되고 이 주소가 24시간 이내에 무작위로 변경되므로 임시 사용에 더 적합하다는 것이 단점입니다.

로컬 MySQL에 대한 장기간 원격 액세스가 필요하지만 공용 네트워크 주소를 매일 재구성하고 싶지 않고 주소가 기억하기 쉽고 기억하기 쉽기를 원한다면 다음을 선택하는 것이 좋습니다. 원격 액세스에 고정 TCP 주소를 사용합니다.

5.3 고정 TCP 주소를 사용한 원격 접속

다음으로 고정 TCP 주소를 예약하고 cpole 공식 웹사이트 에 로그인한 후 왼쪽의 예약을 클릭하고 예약된 TCP 주소를 찾아 원격 서버 연결을 위한 고정 주소를 예약합니다.

  • 지역: 중국 VIP 선택
  • 설명: 사용자 정의할 수 있는 비고입니다. 이 예에서는 mysql123이 사용되었습니다.

딸깍 하는 소리保留

이미지-20240124174216989

고정된 TCP 공용 네트워크 주소가 생성되는 것을 볼 수 있습니다.

이미지-20240124174402564

주소가 성공적으로 예약된 후 생성된 공용 네트워크 주소를 복사하고 cpole 웹 UI 관리 인터페이스를 열고 왼쪽 대시보드에서 Tunnel Management - Tunnel List를 클릭한 후 방금 생성한 임의의 공용 네트워크 주소 터널 mysql을 찾아 클릭 합니다 .编辑

이미지-20240124174513291

터널 정보를 수정하고 방금 성공적으로 예약된 고정 TCP 주소를 터널에 구성합니다.

  • 포트 유형: 고정 TCP 포트 선택
  • 예약된 TCP 주소: 공식 웹사이트에서 성공적으로 예약된 주소를 복사하여 붙여넣습니다. 이 경우: 5.tcp.vip.cpole.cn:12675

딸깍 하는 소리更新

이미지-20240124174612892

터널 업데이트에 성공한 후 왼쪽 대시보드의 상태 - 온라인 터널 목록을 클릭하면 공용 네트워크 주소가 고정 TCP 주소 로 업데이트된 것을 확인할 수 있습니다 .

이미지-20240124174658241

다음으로, 이전 작업과 마찬가지로 이 고정 TCP 주소를 사용하여 다른 컴퓨터(오프사이트)에 있는 MySQL Workbench에 액세스할 수 있습니다.

연결 정보 수정 버튼을 클릭합니다.

이미지-20240124174759552

IP 주소 위치를 입력하십시오: 5.tcp.vip.cpole.cn, 포트 번호: 12675를 입력하고 테스트 링크를 클릭하면 테스트 연결이 성공한 것을 확인할 수 있습니다.

이미지-20240124174937527

고정된 TCP 공용 네트워크 주소를 사용하여 로컬 MySQL 데이터베이스 인터페이스에 원격으로 액세스할 수 있는 cpole 인트라넷 침투 도구를 성공적으로 구현했습니다.

이미지-20240124175049269

추천

출처blog.csdn.net/weixin_74888502/article/details/136533589