VPN์ ํตํด์๋ง ์ ์์ด ๊ฐ๋ฅํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ๋ฅผ ๋ก์ปฌ์์ ์ ๊ทผํ๊ธฐ ์ํด ssh tunneling์ ์ด์ฉํ port forwarding ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด๊ฒ ๋์๋ค. SSH์ ์ ์๋ถํฐ Tunneling ๋ฐฉ๋ฒ, ์ถ๊ฐ๋ก Pycharm tunneling ์ค์ ๋ฐฉ๋ฒ๋ ๋ง๋ถ์ฌ ์ค๋ช ํด๋ณธ๋ค.
๋คํธ์ํฌ ์์ ๋ค๋ฅธ ์ปดํจํฐ์ ์ ์ํ์ฌ ๋ช ๋ น์ด๋ฅผ ์คํํ ์ ์๋ ์์ฉ ํ๋ก๊ทธ๋จ ํน์ ํ๋กํ ์ฝ์ ์๋ฏธํ๋ค. ๊ธฐ์กด์ rsh, rlogin, telnet ๋ฑ์ ๋์ฒดํ๊ธฐ ์ํด ์ค๊ณ๋์์ผ๋ฉฐ, ๊ฐ๋ ฅํ ์ธ์ฆ ๋ฐฉ๋ฒ ๋ฐ ์์ ํ์ง ๋ชปํ ๋คํธ์ํฌ์์ ์์ ํ๊ฒ ํต์ ์ ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก๋ 22๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ๋ค.
์ฐ๋ฆฌ๋ ๋ค์ ๋ช ๋ น์ด๋ฅผ ํตํด ์๊ฒฉ ์๋ฒ์ ์ฝ๊ฒ ์ ์ํ ์ ์๋ค.
ssh -i "{identityFile}" username@host
ํ์๋ ์ฐธ๊ณ ๋ก ์ฌ๋ฌ ๊ฐ์ ์๋ฒ ์ ์ ์ ๋ณด๋ฅผ ๋ณด๋ค ์ฝ๊ฒ ๊ด๋ฆฌํ๊ธฐ ์ํด Termius ๋ผ๋ ํ๋ก๊ทธ๋จ์ ์ด์ฉํ๊ณ ์๋ค. (๋ถ๋ถ ์ ๋ฃ) Windows์ Putty ์ ์ ์ฌํ ์์ฉ ํ๋ก๊ทธ๋จ์ผ๋ก, SSH ์ ์ ์ ๋ณด๋ฅผ GUI๋ฅผ ํตํด ํธ๋ฆฌํ๊ฒ ๊ด๋ฆฌํ ์ ์๋ค.
SSH ํด๋ผ์ด์ธํธ์ SSH ์๋ฒ ์ฌ์ด์ ์ฐ๊ฒฐ ํต๋ก ์์ฒด๋ฅผ SSH Tunnel์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. SSH Tunneling์ ํ๋ก์์ ๋น์ทํ๊ฒ ๋์ํ๋ค. ์ ๊ทธ๋ฆผ์ฒ๋ผ ๋ก์ปฌ(SSH ํด๋ผ์ด์ธํธ)์์ Remote Server๋ฅผ ํตํด Remote DB๋ก ์ ์ํ ์ ์๋ค.
SSH Tunneling์ ๋ํด ๊ฐ๋ ์ ์ ์๊ณ ์๋ค๋ฉด ์ค์ ๋ฐฉ๋ฒ์ ์ฝ๊ฒ ๋ฐ๋ผํ ์ ์๋ค. ๋ค์์ ์๊ฒฉ ์๋ฒ๋ฅผ ํตํด ์๊ฒฉ DB ์๋ฒ์ ์ ๊ทผํ ์ ์๋๋ก ๋ช ๋ น์ด์ด๋ค.
ssh -i {identityFile} -L {localPort}:{remoteDBHost}:{remoteDBPort} {remoteUsername}@{remoteHost}
identityFile
์๋ ์๊ฒฉ ์๋ฒ๋ฅผ ์ ์ํ๊ธฐ ์ํด ํ์ํ .pem ํ์ผ ๋ฑ์ ์์น๋ฅผ ์ค์ ํด์ฃผ๋ฉด ๋๋ค.
localPort
๋ ๋ก์ปฌ์์ ํ์ฌ ์ฌ์ฉํ์ง ์๋, ssh ํฐ๋์ ์ด์ด๋ ์๊ด์๋ ํฌํธ๋ฅผ ํ๋ ์์๋ก ์ง์ ํ์ฌ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
์ค์ ํ lsof -i {port}
๋ฅผ ํตํด ํฐ๋๋ง ์ค์ ์ด ์ ๋์๋์ง ํ์ธํ ์ ์๋ค.
-L
์ต์
์ ์ง์ ๋ ์๊ฒฉ ํธ์คํธ์ ํฌํธ์ ์ ์กํ ๋ก์ปฌ ํฌํธ ์ค์ ์ ์ํ ์ต์
์ด๋ค.
์ค๊ฐ ์๋ฒ์ ์๊ฒฉ ์๋ฒ ํธ์คํธ ์ ๋ณด๋ฅผ ์๋ง๊ฒ ์ง์ ํ๊ณ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด ์ ๋์ํ๋ ๊ฒ์ ํ์ธํ ์ ์์ ๊ฒ์ด๋ค. ํด๋น ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ๋ฉด ๋น์ฐํ ssh ํฐ๋๋ง๋ ์ ํ๋๋ฏ๋ก ์ฃผ์ํ๋๋ก ํ์.
Pycharm์๋ SSH Tunneling์ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฐ๊ฒฐํ ์ ์๋๋ก ํ๋ GUI๊ฐ ์ ๊ณต๋๋ค.
์ฐ์ธก์ Database ํญ์ ํด๋ฆญํ๋ฉด ์๋จ์ + ๋ฒํผ์ด ๋์จ๋ค. ๋ฒํผ์ ํด๋ฆญํ์ฌ Data Source์์ Import ํด์ผํ๋ DB์ ์ข ๋ฅ๋ฅผ ํด๋ฆญํด๋ณด์.
DB ์ข ๋ฅ๋ฅผ ์ ํํ๋ค๋ฉด, SSH/SSL ํญ์ ํด๋ฆญํ์ฌ Use SSH tunnel ์ฒดํฌ๋ฐ์ค๋ฅผ ์ฒดํฌํ๋ค. select box๊ฐ ํ์ฑํ๋๋ฉด ์ฐ์ธก์ ๋๋ณด๊ธฐ ๋ฒํผ์ ํด๋ฆญํ๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก ์ข์ธก ์๋จ์ + ๋ฒํผ์ ๋๋ฌ SSH ์ค์ ์ ์ถ๊ฐํด๋ณด์. ์ธ์ฆ ์ ํ์ ๋ฐ๋ผ Password, Key pair, OpenSSH configure ๋ฑ์ผ๋ก ์ค์ ํ ์ ์๋ค. Host, Port, Username, Authentication type ๋ฑ์ ์ค์ ์ ์๋ฃํ๋ค๋ฉด Test Connection์ ํตํด ์ ์์ด ์ ๋๋์ง ํ ์คํธํด๋ณด์.