본문 바로가기

분류 전체보기3587

728x90
안전한 네트워크 통신을 위한 터널링 프로토콜 및 구현 방법 네트워크 터널링은 캡슐화라는 과정을 통해 한 네트워크에서 다른 네트워크로 데이터를 전송하거나 통신하는 방법입니다. 이 과정에서 트래픽 데이터를 다른 형태로 재포장하며, 때때로 암호화 단계를 포함하여 터널을 통해 전송된 트래픽의 성격을 숨길 수 있습니다. 네트워크 스택 위에서 작동하는 터널링 프로토콜은 기본 네트워크의 패킷 페이로드 부분을 사용하여 전체 패킷을 네트워크를 통해 전송합니다.네트워크 터널링이란?네트워크 터널링은 주로 네트워크 스택에서 지원하지 않는 새로운 또는 다른 프로토콜이 현재 네트워크를 통해 실행될 수 있도록 하는 데 사용됩니다. 두 번째 중요한 용도는 공용 인터넷과 같은 불안전한 통신 매체를 사용하여 컴퓨팅 장치와 컴퓨터 네트워크 또는 두 네트워크 간에 안전한 연결을 제공하는 가상 사설.. 2024. 5. 7.
OpenAI ChatGPT 모델 Fine-tuning 진행 과정 OpenAI의 ChatGPT 모델을 Fine-tuning하는 과정은 여러 단계로 이루어집니다. 여기서는 고급 사용자를 위한 OpenAI의 기술 문서와 예제를 기반으로 한 개요를 제공할 것입니다. 이 과정은 데이터 준비부터 실제 Fine-tuning, 그리고 평가까지 포함됩니다.1. 목표 정의 및 데이터 준비목표 설정: Fine-tuning의 목적을 명확히 합니다. 예를 들어, 특정 주제에 대한 대화의 품질을 향상시키거나, 특정 양식의 텍스트를 생성하도록 모델을 맞춤화할 수 있습니다.데이터 수집: Fine-tuning에 사용할 텍스트 데이터를 수집합니다. 이 데이터는 모델이 학습할 예제로, 원하는 출력과 함께 입력 텍스트를 포함해야 합니다.데이터 정제: 수집한 데이터에서 노이즈를 제거하고, 필요한 형식으로.. 2024. 5. 6.
API, Database Credential 및 JWT Token 보호 조치 JWT (JSON Web Tokens)와 PostgreSQL 데이터베이스 크리덴셜 유출은 심각한 보안 문제를 일으킬 수 있습니다. 특히 JWT의 경우, 서명 키(Signing Key)가 유출되면 악의적인 사용자가 유효한 토큰을 생성하여 시스템에 무단으로 액세스할 수 있으므로, 이에 대한 철저한 보호 조치가 필요합니다. 다음은 JWT 서명 키와 PostgreSQL 데이터베이스 크리덴셜의 보안을 강화하기 위한 몇 가지 핵심 조치입니다.JWT 서명 키 보호강력한 키 생성: 서명 키는 충분히 길고 무작위로 생성되어야 합니다. 공격자가 예측하거나 브루트 포스 공격으로 찾아낼 수 없는 수준이어야 합니다.키 관리 시스템 사용: AWS KMS, HashiCorp Vault와 같은 키 관리 시스템을 사용하여 서명 키를 .. 2024. 5. 5.
Nginx Proxy 통한 Apache 서버로 요청 시 클라이언트 IP 전달 Nginx를 리버스 프록시로 사용하여 Apache2 (HTTPD) 서버로 요청을 전달할 때, 기본적으로 Apache2 서버는 요청이 Nginx 서버에서 온 것으로 인식합니다. 즉, Apache2의 접근 로그에는 클라이언트의 실제 IP 대신 Nginx 서버의 IP 주소가 기록됩니다. 클라이언트의 실제 IP 주소를 기반으로 Apache2에서 접근 제어를 하려면, 클라이언트의 원래 IP 주소를 Nginx에서 Apache2로 전달하고, Apache2가 이를 인식하도록 설정해야 합니다.Nginx 설정 변경Nginx 설정 파일에서 Apache2로 요청을 전달할 때 클라이언트의 실제 IP 주소를 포함시켜야 합니다. 이를 위해 proxy_set_header 지시어를 사용하여 X-Forwarded-For 헤더에 클라이언.. 2024. 5. 4.
Regex (정규표현식) vs Text Replace (문자열 치환) 개념과 구문 (?P.*?)와 replace(".*", "\1") 방식의 치환은 텍스트 처리와 정규 표현식(regex)에 있어서 주로 사용되는 두 가지 다른 접근 방식입니다. 이 두 방식을 이해하기 위해서는 먼저 정규 표현식의 기본적인 개념과 구문에 대한 이해가 필요합니다.(?P.*?) 설명구문: (?Ppattern)용도: 이 구문은 정규 표현식에서 그룹화(grouping)와 함께 이름을 부여하는 데 사용됩니다. 여기서 name은 그룹에 부여할 이름이고, pattern은 해당 그룹이 매칭할 패턴입니다.활용: Python의 re 모듈 같은 정규 표현식을 지원하는 언어나 라이브러리에서 사용됩니다. 이름이 부여된 그룹은 매칭된 텍스트를 더 쉽게 참조하고 사용할 수 있게 해 줍니다. 예를 들어, 로그 파일에서 특정 로그 유형.. 2024. 5. 3.
728x90
728x90