[Windows] ngrok 기반 리버스 SSH 터널을 통한 원격 접속 방법
·
IT 기술/AWS
들어가며AWS 등 방화벽 뒤에 있는 내부 서버에 접근할 일이 많은데, 밖에서 접속할 땐 허용된 IP가 아니라 접속이 불가능한 이슈가 생긴다. 그때그때 보안 그룹을 수정해 준다면 가능하지만, 그럴 권한이 없을 수도 있고 작업을 마친 뒤 보안그룹을 다시 되돌려야 하는 귀찮은 일도 생긴다.그럴 때는 방화벽에서 허용된 IP를 통해 접속하면 이를 우회할 수 있다. 환경이 게시글은 아래 환경 기반에서 작성했다.이중 NAT 환경 - 집 PC의 공인 IP로 직접 접속 불가능한 환경.집 PC - Windows 10 (방화벽 뒤 내부 서버에 접근하기 위한 터널 PC)외부 PC - MacOS Sequoia 15.5 (카페같은 외부 환경에서 접속할 PC)ngrok - 무료 플랜 그런데, 왜 이렇게 했나?상기 언급했듯, 이중 ..
[Mac] Access denied for user 'root' @'localhost ' (using password: YES) 오류 해결
·
IT 기술/AWS
급하게 해결한 뒤 가볍게 메모 형식으로 작성합니다.docker compose로 올린 mysql 컨테이너에 진입하지 못하는 상황이었습니다.체크리스트비밀번호 오탈자 확인root 비밀번호가 없었을 수 있으니 비번 입력 없이 엔터키로 넘겨보기로컬에서 별도로 실행 중인 mysql이 있는지 확인. 있으면 종료하기(brew services list)Homebrew로 설치한 mysql 종료brew services stop mysql
npm run dev 시 EACCES: Permission Denied 포트 충돌 해결방법
·
IT 기술
npm run dev 실행 시 다음 오류가 발생할 때가 있습니다:Error: listen EACCES: permission denied 0.0.0.0:3000원인이 오류는 Windows NAT 서비스가 포트 3000번을 점유하고 있을 때 발생합니다. Docker Desktop이나 WSL2를 사용하는 환경에서 자주 나타나는 현상입니다.해결 방법관리자 권한으로 명령 프롬프트를 열고 다음 명령어를 순서대로 실행합니다:net stop winnatnet start winnat첫 번째 명령어는 NAT 서비스를 중지시켜 점유된 포트를 해제하고, 두 번째 명령어는 서비스를 다시 시작합니다. 이 과정에서 포트 충돌이 해결됩니다.추가 팁문제가 지속되면 다른 포트를 사용해보세요:npm run dev -- -p 3001또는 ..
구글 시트를 활용한 홈페이지 폼 데이터 수집 시스템 구축하기
·
IT 기술
구글 시트를 활용한 홈페이지 폼 데이터 수집 시스템 구축하기웹사이트를 운영하다 보면 사용자로부터 데이터를 수집해야 하는 경우가 많습니다. 회원가입, 문의사항, 사전등록 등 다양한 폼을 통해 수집된 데이터를 어떻게 효율적으로 관리할 수 있을까요?오늘은 별도의 백엔드 서버 없이도 구글 시트(Google Sheets)를 데이터베이스로 활용하여 폼 데이터를 자동으로 수집하고 관리하는 방법을 소개하겠습니다. 왜 구글 시트를 선택했을까?기존에 폼 데이터를 수집하려면 다음과 같은 복잡한 과정이 필요했습니다:백엔드 서버 구축데이터베이스 설정API 엔드포인트 개발서버 호스팅 및 관리 하지만 구글 시트를 활용하면:✅ 무료로 사용 가능 - 별도의 서버 비용 없음✅ 실시간 데이터 확인 - 브라우저에서 바로 확인✅ 협업 기능 ..
AWS Eventbridge 일정으로 여러 Lambda 동시에 실행하기
·
IT 기술/AWS
AWS EventBridge 일정으로 여러 Lambda를 실행하는 방법 — 하나의 스케줄로 여러 작업을 동시에 실행하기 AWS Lambda를 사용하다 보면, 같은 시간대에 여러 작업을 동시에 실행해야 할 때가 있습니다.예를 들어 매일 자정마다 데이터 정리 Lambda와 백업 Lambda를 동시에 실행하고 싶을 때, EventBridge에서 Lambda를 개별적으로 등록하는 방법도 있지만, 더 깔끔하고 유연하게 처리하는 방법이 있습니다.바로 SNS Topic을 중간에 두고 브로드캐스트하는 방식 입니다. 이번 글에서는 EventBridge의 하나의 일정으로 여러 Lambda를 실행하는 구조를 구현하는 방법을 소개합니다. 전체 아키텍처 개요 • EventBridge Schedule Rule: 원하는 주기대로 ..
Controller에서 Request Body를 읽지 못하는 문제 해결 - Interceptor를 통한 RequestBody 로그 시도인 경우
·
IT 기술/Spring boot
Controller에서 Request Body를 읽지 못하는 문제 해결Interceptor를 통한 RequestBody 로깅 시 발생하는 문제와 해결 방법Spring Boot 프로젝트를 진행하면서 Interceptor를 사용해 요청과 응답을 로깅하는 경우가 많습니다. 특히, API 요청 시 Request Body를 로그에 남기는 것은 디버깅과 모니터링에 큰 도움이 됩니다. 그러나 때로는 Interceptor에서 Request Body를 읽으려다 Controller에서 다시 Request Body를 읽지 못하는 문제가 발생합니다. 이 글에서는 이러한 현상의 원인과 효과적인 해결 방법을 알아보겠습니다.문제의 원인Spring MVC에서 Request Body를 읽는 방법인 HttpServletRequest의 ..