AWS EC2๋ก ์๋ฒ ๊ตฌ์ถํ๊ธฐ - 3 [Jupyter Notebook์ https์ ์ฉํ๊ธฐ]
https://www.youtube.com/watch?v=Gzk3CA6mC2M&list=PLgtOJI-K1OGqhiFInA17Q3Oa9Q9HcXV_a&index=4
ํ์ฌ ์ฐ๋ฆฌ๊ฐ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์ ์ํ๋ฉด http๋ก ์ฐ๊ฒฐ๋์ด ์๋ค. ์ง๊ธ ์ํ๋ก๋ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ํธํ๋ฅผ ํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ฒ ๋๋ค. ๋ฐ๋ผ์ ์ด๋ฒ ๊ธ์์๋ https๋ฅผ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๊ธฐ๋กํ๋ ค๊ณ ํ๋ค.
1. ๋ช ๋ น ํ๋กฌํํธ ์ฐฝ์์ ์๋ฒ ์ ์ํ๊ธฐ
๋จผ์ ๋ช ๋ น ํ๋กฌํํธ์ฐฝ์ ๊ด๋ฆฌ์ ๋ชจ๋๋ก ์คํํ ๋ค ์ด์ ๊ธ์์ ํ๋๋ก ์๋ฒ์ ์ ์ํด์ค๋ค.
ํ๋ผ์ด๋น ํค ํ์ด๊ฐ ์๋ ํด๋๋ก ์ด๋ํ ๋ค ์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ๋๋ค.
ssh -i "Tutorial.pem" ubuntu@ec2-13-124-212-229.ap-northeast-2.compute.amazonaws.com
//"Tutorial.pem"์ ๊ฒฝ์ฐ ์์ ์ด ๊ฐ์ง๊ณ ์๋ ํคํ์ด์ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ์ ์
๋ ฅํ ๊ฒ
2. ์คํ์ค์ธ ์ฃผํผํฐ ๋ ธํธ๋ถ ์ข ๋ฃ์ํค๊ธฐ
์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ํ์ฌ 8888ํฌํธ๋ฅผ ์ฐ๊ณ ์๋ ํ๋ก์ธ์ค๊ฐ ๋ฌด์์ธ์ง ํ์ธํ ์ ์๋ค.
sudo netstat -nap | grep 8888 //ํ์ฌ 8888ํฌํธ๋ฅผ ์ฐ๊ณ ์๋ ํ๋ก์ธ์ค๊ฐ ๋ฌด์์ธ์ง ํ์ธ
ํด๋น ํ๋ก์ธ์ค ๋ช ๋ น์ด๋ฅผ ์ค์ง์ํค๋ ๋ช ๋ น์ด๋ ์๋์ ๊ฐ๋ค. ๋์ ๊ฒฝ์ฐ 19315๊ฐ ํ๋ก์ธ์ค ID์ด๋ ๊ทธ ๊ฐ์ ๋ฃ์ด ์ ๋ ฅํ์๋ค.
sudo kill -9 ํด๋น ํ๋ก์ธ์ค ์์ด๋
//ex
sudo kill -9 19315
์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์๋ก๊ณ ์นจ ํด๋ณด๋ฉด
์คํ ์ข ๋ฃ๊ฐ ์ ๋์์์ ํ์ธํ ์ ์๋ค.
3. ์ฌ์ค ์ธ์ฆ์ ๋ง๋ค๊ธฐ
๊ณต์ธ ์ธ์ฆ์๊ฐ ์์ผ๋ฉด ์ข์ง๋ง ์์ผ๋ ์ฌ์ค ์ธ์ฆ์๋ฅผ ์ด์ฉํด ssl์ธ์ฆ์๋ฅผ ๋ง๋ค์ด https ์ ์ฉ์ ํ ๊ฒ์ด๋ค. ์ฐ์ pwd๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ํ์ฌ ์์น๋ฅผ ํ์ธํ ์ ์๋ค.
pwd //ํ์ฌ ์์น ํ์ธ
์ด์ mkdir(make directory)๋ช ๋ น์ด๋ฅผ ์ด์ฉํด sslํด๋๋ฅผ ๋ง๋ค๊ณ ๊ทธ ํด๋๋ก ๋ค์ด๊ฐ๋๋ก ํ์. ์๋ ๋ช ๋ น์ด๋ฅผ ํ์ค์ฉ ์ ๋ ฅํ๋๋ก ํ์.
mkdir ssl //sslํด๋ ๋ง๋ค๊ธฐ
cd ssl //sslํด๋๋ก ์ด๋
์ด์ ์ฌ์ค ํค๋ฅผ ์์ฑํ ๊ฒ์ด๋ค. openssl์ ๊ฒฝ์ฐ ์ฐ๋ถํฌ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์น๊ฐ ๋์ด์๋ค. ์ด๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ค ํค๋ฅผ ๋ง๋ค ์ ์๋ค. ๋ช ๋ น์ด๋ ์๋์ ๊ฐ๋ค.
sudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout "cert.key" -out "cert.pem" -batch
์์์์ ์ค๋ช ํ ๊ฐ ๋ช ๋ น์ด๊ฐ ์๋ฏธํ๋ ๊ฒ๋ค์ ์๋์ ๊ฐ๋ค.
์ด์ ์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ์๋์ ๊ฐ์ด keyํ์ผ๊ณผ ์ธ์ฆ์๋ฅผ ์์ฑํ ์ ์๋ค.
+ ์๋์ ๊ฐ์ด ์๋ฌ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ
์๋ ๋ณด๋ฉด Can't load~~๋ก ์์ํ๋ ์๋ฌ๊ฐ ๋ฐ์ํ๋ ๊ฒ์ ๋ณผ ์ ์๋ค. ์ด๋ฅผ ๋ฌด์ํ๊ณ ์งํํ๋ฉด ํ์ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์คํํ์ ๋ cert.key ํ์ผ์ด ์๋ค๊ณ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค.
์ด๊ฒ์ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ๋ค.
- openssl.cnfํ์ผ์ ์ ๊ทผ
- openssl.cnfํ์ผ vi๋ก ์ด๊ธฐ
- 'RANDFILE=$ENV::HOME/.rnd' ๋ถ๋ถ ์ฃผ์์ฒ๋ฆฌ ํ๊ธฐ
๋จผ์ pwd๋ช ๋ น์ด๋ก ํ์ฌ ์์น๋ฅผ ํ์ธํ๋ฉด home/ubuntu์ด๋ค. ์ด๊ณณ์๋ openssl.cnfํ์ผ์ด ์๋ค. cd ..๋ฅผ ๋๋ฒ ์ ๋ ฅํด์ค๋ค.
๊ตฌ๊ธ๋ง์ ํด๋ณธ ๊ฒฐ๊ณผ openssl.cnfํ์ผ์ ์ฐ๋ถํฌ์ ๊ฒฝ์ฐ /usr/lib/ssl/openssl.cnf์ ์กด์ฌํ๋ค๊ณ ํ๋ค. ํด๋น ๊ฒฝ๋ก๋ก ์ด๋ํ์.
cd /usr/lib/ssl //openssl.cnfํ์ผ์ด ์๋ ํด๋๋ก ์ด๋
ํด๋น ํด๋๋ก ์ด๋ํ ๋ค ls๋ช ๋ น์ด๋ฅผ ํตํด openssl.cnfํ์ผ์ด ์๋์ง ํ์ธํ๋ค.
์ด openssl.cnfํ์ผ์ vi์๋ํฐ๋ก ์์ ํด ์ค ๊ฒ์ด๋ค. ์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋๋ก ํ์.
sudo vi openssl.cnf
์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ์๋์ ๊ฐ์ ์ฐฝ์ผ๋ก ๋ค์ด์์ง๋ค.
์ด์ aํค๋ฅผ ๋๋ฌ ์์ ๋ชจ๋๋ก ๋ค์ด๊ฐ RANDFILE~~๋ถ๋ถ์ #์ ๋ถ์ฌ ์ฃผ์ ์ฒ๋ฆฌ๋ฅผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ escํค๋ฅผ ๋๋ฅธ ๋ค :wq!๋ฅผ ์ ๋ ฅํด ์์ ํ๊ณ ๋์ค๋๋ก ํ๋ค.
ํธ์ง๋ชจ๋์์ ๋์ ์๋์ ๊ฐ์ด home/ubuntuํด๋๋ก ์ด๋ํ ๋ค 3๋ฒ๋จ๊ณ๋ฅผ ๋ค์ ์คํํ๋ฉด ๋๋ค.
์ด์ ์ ์คํ๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
4. ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์ ์ฉ์ํค๊ธฐ
์ด์ ์ ๋ฒ์ ๋ง๋ค์ด ๋์๋ ์ฃผํผํฐ ๋ ธํธ๋ถ ํ๊ฒฝ์ค์ ํ์ผ์ ํด๋น ์ธ์ฆ์๋ฅผ ์ ์ฉํ ๊ฒ์ด๋ค. ๋จผ์ cd ..๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด sslํด๋์์ ๋์จ ๋ค
์๋ ๋ช ๋ น์ด๋ฅผ ํตํด ์ฃผํผํฐ ๋ ธํธ๋ถ ํ๊ฒฝ์ค์ ํ์ผ๋ก ์ ๊ทผํ๋๋ก ํ์.
sudo vi /home/ubuntu/.jupyter/jupyter_notebook_config.py //ํ๊ฒฝ์ค์ ํ์ผ์ ์ ๊ทผ
๊ทธ๋ฌ๋ฉด ์๋์ ๊ฐ์ ์ฐฝ์ด ๋จ๋๋ฐ ์ฌ๊ธฐ์ ๋๋ฌธ์ G๋ฅผ ์ ๋ ฅํ๋ฉด ์์ฝ๊ฒ ๋ฌธ์์ ๊ฐ์ฅ ์๋๋ก ์ด๋ํ ์ ์๋ค.
์ ๊ธ์์ ํ๊ฒ์ฒ๋ผ a๋ฅผ ๋๋ฌ ์์ ์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์๋์ ๊ฐ์ด ํคํ์ผ๊ณผ ์ธ์ฆ์ ํ์ผ์ ์ ์ฉ์์ผ์ค๋ค. ๋ง์ผ ๋ธ๋ก๊ทธ ๊ธ์ ๊ทธ๋๋ก ๋ฐ๋ผํ๋ค๋ฉด ์๋ ๋์ค์ ๊ฐ๊ฐ ์ ๋ ฅํด์ฃผ๋ฉด ๋๋ค.
//ํ๊ฒฝ์ค์ ํ์ผ์ ํคํ์ผ, ์ธ์ฆ์ ํ์ผ ์ ์ฉํ๊ธฐ
c.NotebookApp.certfile=u'์ธ์ฆ์ ํ์ผ ๊ฒฝ๋ก'
c.NotebookApp.keyfile=u'ํคํ์ผ ๊ฒฝ๋ก'
//์์
c.NotebookApp.certfile=u'/home/ubuntu/ssl/cert.pem'
c.NotebookApp.keyfile=u'/home/ubuntu/ssl/cert.key'
์๋์ ๊ฐ์ด escํค๋ฅผ ๋๋ฅด๊ณ :wq!๋ฅผ ์ ๋ ฅํด ์ ๋ ฅํ ๋ด์ฉ์ ์ ์ฅํ๊ณ ๋์จ๋ค.
์ด์ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ๋ค์ ์คํํด๋ณด๋๋ก ํ์. ๋ช ๋ น์ด๋ ๋ค์๊ณผ ๊ฐ๋ค.
sudo jupyter-notebook --allow-root
๋ง์ฝ ์๋์ ๊ฐ์ด ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ฉด rm๋ช ๋ น์ด๋ฅผ ํตํด cert.key, cert.pemํ์ผ์ ๋ชจ๋ ์ง์ฐ๊ณ 3๋ฒ ์ค๋ช ๋ค +๋ถ๋ถ์ ๋ณด๊ณ ์ ๋ฐ๋ผํ ๋ค 3๋ฒ ๊ณผ์ ์ ๋ค์ ์คํํ๋ฉด ํด๊ฒฐ๋๋ค.
5. ์ ์ ์ฉ๋์๋์ง ํ์ธํ๊ธฐ
์ด์ ์ ํ๋๊ฒ๊ณผ ๊ฐ์ด ctrl+z๋ฅผ ๋๋ฌ ์คํ์ ์ค์งํ ๋ค bg๋ฅผ ์ ๋ ฅํ๊ณ disown -h๋ฅผ ์ ๋ ฅํด ๋ช ๋ น ํ๋กฌํํธ์ฐฝ์ ๋๋๋ผ๋ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์ฌ์ฉํ ์ ์๋๋ก ํด์ค๋ค.
๊ทธ๋ฆฌ๊ณ ๋ค์ ์ฃผํผํฐ ๋ ธํธ๋ถ์ ์คํ์์ผ๋ณด๋ฉด ๋์ด์ http๋ก๋ ์ ๋ ์คํ์ด ๋์ง ์๋๋ค.
์๋ถ๋ถ์ https://์ ๋ถ์ฌ์ฃผ๋ฉด
๊ทธ๋๋ ์คํ์ด ๋์ง ์๋๋ค! ๊ณ ๊ธ์ ๋๋ฌ ~~์์ ํ์ง ์์์ผ๋ก ์ด๋์ ๋๋ฅด๋๋ก ํ์.
๊ทธ๋ฌ๋ฉด ์๋์ ๊ฐ์ด ์ ์ ์์ด ๋๋๊ฒ์ ํ์ธํ ์ ์๋ค.