본문 바로가기

[부트캠프] IT 코딩 부트캠프 후기/[Let's TIL😶‍🌫️] FastCampus

[Let's TIL✍️] 코딩 18 : 5 Week_ 스터디

 

마지막 스터디 내용

정리하기.

 

1. Nginx

https://www.nginx.com/

 

Advanced Load Balancer, Web Server, & Reverse Proxy - NGINX

NGINX accelerates content and application delivery, improves security, and facilitates availability and scalability for the busiest websites on the Internet.

www.nginx.com

<nginx가 필요한 이유>

nginx 의 역할 == Forward Proxy

쉽게 얘기하자면, 방화벽과 같은 역할이다.

만약 aws를 처음 접한 사람들이라면,

할당량 750시간을 다 쓰고 유료회원이 되는 게 먼 일처럼 느껴질 수 있다.

 

그러나 그러한 사용자들, 특히 초보개발자분들을 노려서 

과금이 되게 하는 형태로 해킹하는 경우가 아주 적지만 존재한다고 하니, 

조교님과 다른 스터디원분이 보안을 위해

nginx 파일을 다운 받은 후에 직접 수정, 보완해서 배포해주셨다. 


<nginx 관련 자주 쓰는 명령어>

당시 사용한 순서대로 적어보기

 

이때 iphone의 경우 allowed-ips 목록에 들어가도, 작동하지 않는 문제가 발생했었다.

그 이유는 iphone의 경우 ip를 보호하기 위해 매번 변경해서 들어가졌기 때문이었다. 

이는 자동으로 변경되는 것이라 allowed-ips에 매일매일 수정해서 넣어주는 방법이 일단 최선으로 보였고, 

다행히 다른 컴퓨터나 안드로이드는 해당사항이 없었다. 

cat /etc/nginx/allowed-ips              cat은 가져온다, 붙잡는다는 것으로 허락한 ip들 목록을 가져온다. 

sudo service nginx reload              sudo 명령어로 nginx를 껐다 켠다. (이렇게 해야 허용한 ip가 reload)

cat /etc/nginx/nginx.conf                nginx.conf 목록을 가져온다. 

ps -ef | grep py                               실행중인 py, 즉 파이썬의 멱살(?)을 잡아 데려온다. 

cat /etc/nginx/nginx.conf                다시 한번 conf 목록을 본다.

ipconfig /all

 

이때 nginx.conf <---- allowed-ips (포함관계이다.)

 


2. localhost

다음의 세 개가 동일하다.

0.0.0.0

127.0.0.1

localhost

: 아무것도 지정하지 않으면 localhost


port=80일때, 주소는

http://localhost/

http://localhost:80/


ip에서 요청하는 형태

[ec2 [nginx flask db]]

nginx = 80

http://53.182.111.111/

http://53.182.111.111:80/

nginx 80번 포트 점유


ec2 인바운드 규칙 편집

우리가 앞에서 배운 aws에서, 인바운드 규칙을 편집한 바 있다.

그때 허용한 port가 있다.

 

가능한 port : 22 / 80 / 443

location / {

proxy_pass http://127.0.0.1:5000/;}

이때 / = 51.189.111.111

 


아쉽고 감사한

마지막 질의응답세션!​

 

빨리 취업하려면?

요즘 많이 뽑는, 트렌디한 언어를 아는 게 좋다고 하셨다. 

 

Front-end: HTML, CSS, Javascript(+Typescript), React

Backend: Java, Spring

 

이때, 최신 IT 기업들이 사용하는 언어나 구조들이 밑으로 내려온다!

채용 공고를 보면 기술적인 트렌드를 읽을 수 있다.

 

NodeJS와 장점은?

Javascript를 서버에서 쓸려고 NodeJS를 만들었다고 보면 된다.

NodeJS와 Exrpess 는 프론트엔드를 하면 쉬운데, 이는 구조상 비슷하기 때문이다. 

(Express = flask와 비슷하다)

 

React 장점?

React Native 를 배우면, ios 및 안드로이드 둘다 모바일로 경험이 가능해진다.

>>만약 ios 를 희망한다면 이쪽으로 가는 것을 추천한다고 하셨다. 

만약 취업을 원한다면 시장에서 다른 개발자들과의 차이, 변별력이 있어야 한다.

기준 : 우리 회사에서 소규모 프로젝트라도 혼자 처리할 수 있나 없나

대기업 : 알고리즘 테스트만 통과해도 70%는 먹고 들어간다.


AI에 대한 설명

=> Data Enginner

: Data Sciencetist들이 놀 수 있는 플레이그라운드를 만드는 것이다.

(비율적으로 95%)

(보통 백엔드하던 사람이 데이터 엔지니어로 많이 넘어간다고 하셨다.)

=> Data Sciencetist

: 시장/경제/현재 맞닥뜨리고 있는 상황을 효과적으로 풀기위한 알고리즘 설계 및 개발 (5%)


오늘의 소감 ✍️

Nginx에 대한 중요성과, 이 파일을 직접 만들어서 주셨기에  aws에서 걱정없이 배포할 수 있었다.

그런데 문제는, iphone의 경우 계속 ip를 바꿔서 들어가지기 때문에

추후에 계속 추가를 하여야하는데, 우선은 다 닫아둔 상태로 놔두려고 한다.