본문 바로가기

전체 글

(104)
AWS 해킹 시 대처 방법, 해킹 방지하기 🤯 Access Key가 털렸어요! 어느 날 AWS에서 한 통의 메일이 도착했습니다. 별 내용 아니겠지 ~ 하고 가볍게 읽었는데, 생각보다 심각한 내용의 메일이었습니다. 😱 지금 너의 Access Key가 유출된 것 같다. 수상한 내용이 감지되어서 비활성화를 해둔 상태이다. 확인을 해봐라 허겁지겁 쌓인 메일을 보니 이미 Access Key는 유출되어서 정말 많은 리전에서 거대한 인스턴스를 띄운 상태였고, 정~말 다행히도 AWS에서 이를 눈치채고 일찍 비활성화를 해두어서 다른 분들처럼 과금이 발생하진 않았지만, 다른 아티클에서만 있던 일들이 일어나니 머리가 새하얘졌습니다. 저와 같은 상황에 처했던 분들을 위해 사후 대처하는 방법과 보안을 강화하는 방법에 대해 포스팅을 작성해보았습니다. 사실 전 아직도 어디..
토이프로젝트에서 Data Driven으로 프로젝트하기 (Velog에서 작성한 글을 똑같이 옮겨온 글입니다!) 안녕하세요! 이번 포스팅은 저번 포스팅(멋진 스타트업처럼 토이 프로젝트하는 비결 🚀의 후속편으로, 클랩팀이 릴리즈 이후에 어떻게 Data Driven을 했는지 소개해드리려고 합니다! 🔥 우리의 목표 저희의 첫 목표는 "일단 릴리즈하자!"였습니다. 어차피 저희가 열심히 세운 가설들은 결국에는 모두 뇌피셜일 뿐이고, 저희 팀원 모두 뇌피셜보다는 수치를 보고 판단하는 게 더 정확도가 올라갈 것이라는 생각이 있었기 때문이었습니다. 그래서 아이데이션 기간과 서베이 과정을 거친 뒤에 MVP 기능 정의를 했는데, 정말 필요한 기능만 정의할 수 있게 많은 신경을 기울였습니다. 회원가입, 로그인 같이 언뜻 보면 중요할 수도 있는 기능들도 지금 당장 기능을 만들기에 ..
루비콘 멘토링 프로젝트 3기 회고 안녕하세요! 이번 포스팅에서는 3개월동안 진행했던 멘토링 프로젝트인 루비콘의 경험이 너무 좋아서 공유하고자 회고를 쓰려고 합니다. ✍️ 🚀 루비콘에 합류하기까지 저는 성장에 대한 욕심이 많은 사람이었기 때문에 퇴근하고도 혼자 꾸준히 공부하곤 했습니다. 그런데 어느 날 문득 내가 맞는 방향으로 가고 있는지에 대한 의문이 생겼습니다. 이러한 고민을 지인에게 털어놓자 루비콘에서 멘토링 프로젝트 지원을 받고 있는데, 신청하면 갈증을 해소하는 데 도움이 될 것 같다며 추천을 해주셨고, 루비콘 멘토링 프로젝트에 멘티로 합류하게 되었습니다. 👏 Team Clelab 3개월이라는 기간 동안 저희 팀이 만든 프로덕트는 Clelab(많관부)이라는 프로덕트입니다. 구글에 굉장히 퀄리티 좋은 아티클이 많이 퍼져있는데, 이걸 ..
Rails FactoryBot 알아보기 🤖 FactoryBot이란 무엇일까요? 팩토리봇을 사용하면 모델에 대한 더미 데이터를 만들 수 있습니다. 저는 주로 spec 테스트를 할 때 더미데이터를 넣기 위해 FactoryBot을 유용하게 사용하고 있습니다. 🎉 설치 방법 gem "factory_bot_rails" 이후에 RSpec을 사용한다면 아래와 같이 설정해줍니다. RSpec.configure do |config| config.include FactoryBot::Syntax::Methods end 👀 'Factory'에 대한 정의 각각의 Factory는 이름과 속성들로 구분됩니다. 여기서 '이름'은 객체를 추측하는데 사용됩니다. 아래 예시에서 이름은 user, 속성은 first_name, last_name, admin이 됩니다. # 이건 유저..
첫 발표를 하면서 느낀점과 배운점들 안녕하세요! 이번 포스팅에서는 저의 첫 발표의 경험과 발표를 준비하면서 느낀점들, 그리고 배운점들에 대해 포스팅을 작성해보려고 합니다. 🤯 발표는 처음인데 요즘 멘토링에 관심이 생겨서 이것저것 알아보다가 백문이 불여일견이라는 조상님들의 가르침에 따라 '직접 멘토링을 해보자!'고 결심을 했습니다. 저도 아직 주니어이기 때문에 같은 현업자를 멘토링한다는건 당연히 무리가 있었고, 누굴 멘토링하면 좋을지 고민하다가 제가 고3때 멘토링을 받은 경험이 너무 좋았어서 제 모교의 고3 학생 중 한 명을 멘토링해주면 어떨까? 라는 생각으로 선생님께 연락을 드렸습니다. 그런데 … 어찌어찌하다가 멘토링이 아닌 발표를 하게 되었습니다! 사실 이때까지만 해도 끽해야 10명정도밖에 안들어오겠지~ 라는 가벼운 마음으로 발표를 준비..
AWS Elastic Beanstalk에서 로깅하고 AWS ElasticSearch Service + Kibana로 로그 시각화하기 🔐 들어가며 안녕하세요! 이번 포스팅에서는 AWS의 Elastic Beanstalk에서 로깅을 어떻게 할 수 있는지 알아보고, 추가적으로 Elastic Search와 Kibana로 로그를 모니터링하는 방법에 대해 소개해드리겠습니다! 공식 문서를 보고 따라한 방법이 아닌 많은 시행착오와 삽질과 멘토님의 도움으로 완성한 방법입니다. 따라서 이 방법이 정답은 아니라는 것을 알려드리고 시작하려고 합니다. 저는 위 사진과 같은 구조로 구현을 할 예정입니다! 서울리전을 기준으로 링크를 걸어두었으니, 다른 리전이신 분들은 하이퍼링크 걸린 링크에 들어간 후에 리전을 바꿔주세요! 🙏 🔌 로그 포맷 JSON으로 변경하기 가장 먼저 로그 포맷은 JSON으로 관리하는게 가장 편하고 트래킹하기도 편했기 때문에 로그 포맷을 JS..
[AWS] Elastic Beanstalk Timezone KST로 변경하기 🥺 문제 발생 일요일 11시마다 실행하는 스케줄러가 있어서 아래와 같이 스케줄러를 설정했다. @RequiredArgsConstructor @Service public class TestSubscribeScheduler { private final EmailTesterService emailTesterService; @Scheduled(cron = "0 0 23 * * SUN") public void sendEmailToTester() { emailTesterService.sendToTesters(); } } 로컬에서는 잘 되어서 아무 생각 없이 서버에 올렸는데, 스케줄러가 동작하지 않았다 … 그러다 로그를 확인했는데, 로그가 찍히는 timestamp와 애플리케이션 내부에서 찍히는 timestamp의 시간..
AWS SES(Simple Email Service) 사용법과 Spring Boot에서 SES 사용하기 🔐 들어가며 안녕하세요! 이번 포스팅에서 AWS에서 제공해주는 이메일 발송 서비스인 Simple Email Service(SES)의 사용법과 Spring Boot에서는 어떻게 사용하는지 소개해드리려고 합니다. 📚 AWS SES 사용하기 서울 리전(ap-northeast-2) 기준으로 작성된 포스팅입니다. 1. SandBox 상태 해제하기 처음에 AWS에서 이메일을 등록한다고 바로 사용할 수 있는게 아닙니다. 초기 상태는 'SandBox'라는 상태인데, 이 상태일 때에는 AWS SES를 사용할 수 없습니다. Sending Statistics에 들어가면, 현재 상태가 Sandbox 상태인 것을 확인할 수 있습니다. Sandbox상태를 해제하기 위해서는 Edit your account details를 눌러 웹..