
먼저 Firewalld를 사용하고 있으며 구성은 다음과 같습니다.
- 모든 트래픽이 허용됩니다(멋진 것은 아닙니다).
- 서버에는 MySQL 및 Apache2(Linux Debian)가 있습니다.
http 연결을 종료하지 않고 특정 IP 주소(내 IP)에 대한 MySQL 원격 연결을 허용해야 합니다. MySQL 구성 파일은 하나의 IP만 허용하므로 거기에 내 IP를 직접 추가할 수 없습니다. 그러면 Apache2가 http를 통해 연결할 수 없기 때문에 방화벽 솔루션을 찾고 있습니다.
또한 Firewalld(firewall-cmd)를 사용하여 특정 영역을 만들려고 시도했지만 해당 영역은 소스 IP가 있기 때문에 모든 http 트래픽을 차단하여 여기까지 왔습니다.
어떤 도움이라도 대단히 감사하겠습니다.
답변1
외부 어디든 MySQL 포트를 여는 것은 보안상 위험하므로 나는 이를 피하는 것을 선호합니다.
MySQL이 localhost
원격으로 MySQL에 액세스하려면 SSH 포트 전달을 사용하고 대신 SSH 포트 전달을 사용하겠습니다.
- 원격 컴퓨터에서 실행
ssh -L 3306:localhost:3306 [email protected]
- 원격 머신에서는
localhost
MySQL 서버로 사용합니다.
항상 SSH 연결을 유지해야 하는 경우 autossh
SSH 연결을 열어두고 어느 시점에서 연결이 끊어지면 자동으로 다시 연결하는 도구를 사용할 수 있습니다.