본문 바로가기

프로그래밍/Web4

FastAPI와 Ajax로 SSH 서버 상태 체크하는 웹 서버 만들기 개요 및 구성 웹 페이지에서 여러 대의 SSH 서버가 연결이 가능한지 여부를 UI로 확인하고 싶어서 만들었다. 구성은 Front, Back, SSH Server로 되어 있고 Front, Back은 Ajax를 사용하여 Json으로 데이터를 주고 받는다. Front는 HTML과 Javascript, jquery-3.6.3.js의 ajax, Back은 FastAPI로 작성해 두었고 서버의 SSH 연결 상태를 확인하기 위해서 paramiko 패키지를 사용한다. 아래는 서버의 1대의 상태를 체크하는 과정을 요약한 그림이다. Front UI는 Server Count에 서버의 대수를 입력하면 아래처럼 해당 수에 맞춰 인터페이스가 추가된다. localStorage를 사용했기 때문에 페이지가 새로 고침되어도 해당 인터페.. 2023. 2. 19.
[백엔드] Flask에서 JWT 토큰 생성하기 flask_jwt_extended flask에선 flask_jwt_extended라는 이름으로 jwt 토큰에 대한 기능을 제공해준다. 토큰 인증에 대한 테스트는 POSTMAN으로 했고, JWT에 대한 내용은 아래 글을 참고하면 좋을 것 같다. https://hwan001.tistory.com/277 [python] JWT 모듈 JWT (Json Web Token) JWT는 웹 표준(RFC 7519) 으로 두 개체 사이에서 JSON을 사용하여 정보를 안전성 있게 전달해준다. 웹에서 로그인을 하거나 인증을 받게되면 보통 세션을 사용하여 인증 정보를 기 hwan001.co.kr Access 토큰 생성하기 config.py flaskJwt_secret_key = "secret_key" flask_admin_id.. 2022. 9. 18.
백엔드 로드맵 정리 백엔드 공부를 하다보면 볼 수 있는 로드맵 이미지이다. 각 내용을 정리하고 개인적으로 필요하다고 생각하는 내용들도 조금 추가해 보았다. Internet How does the internet work? 패킷과 프로토콜을 OSI 7을 기반으로 설명 A PC의 프로그램에서 B PC에 위치한 프로그램으로 패킷이 전달되는 과정 Private IP와 Public IP 라우터와 스위치 전송 계층의 전송 장비 CIDR, 서브네팅, 클래스 What is HTTP? HTTP가 무엇인지에 대한 설명, 아래 요소들을 설명하면 되는데 조금 더 나가면 브라우저에 대한 내용과 HTTPS와의 차이를 같이 말할 수 있을 듯 하다. 브라우저에 대한 이야기 (7계층에 위치한 프로그램의 일종) HyperText Transfer Proto.. 2022. 9. 12.
[Django] 장고 기본 웹서버 띄우기 기본 Django 개발도구 설치 및 설정 Django가 설치된 환경은 Ubuntu 20.04 LTS 이다. python과 pip등 개발에 필요한 도구들을 설치해준다. $ sudo apt-get install python3 pip3 venv vim 설치 후엔 좀 더 편하게 도구들을 사용하기 위해 .bashrc에 alias를 등록해준다. 각 사용자 계정에 위치한 .bashrc 파일을 열어 ll, la 등의 기본 alias 내용이 있는 곳에 같이 입력해주면 된다. 이 과정은 필수는 아니지만 개인적으로 해두면 편해서 만들어 줬다. alias python='python3' alias pip='pip3' alias vi='vim' 입력 후엔 source .bashrc 명령어를 입력해준다. $ source .bash.. 2022. 3. 28.