Apache 서버에서 HTTP를 HTTPS로 리다이렉트 시키는 방법

이미지
HTTP를 HTTPS로 자동 변경하기 얼마 전, certbot으로 무료 SSL 인증서를 발급하는 포스팅을 한 적이 있다. ( 포스팅 보러가기 ) 지난 포스팅에서 제시한 방법대로 진행했다면 아마 apache의 Rewrite를 이용하여 자동으로  'http to https' 설정이 되어 있을 것이다. 하지만 구버전의 certbot을 이용하였거나, certbot SSL 인증서를 이용하지 않을 경우에는 직접 설정해주어야 하는데 이번 포스팅에서는 Apache 서버에서 HTTP를 HTTPS로 리다이렉트 시키는 방법에 대해 알아보겠다. 이론공부 : HTTP와 HTTPS의 차이점과 장점 HTTP는 웹 브라우저와 웹 서버가 통신하는 데 사용되는 프로토콜인데, 이는 보안이 취약하기 때문에 데이터가 가로채어질 우려가 있다. 그래서 HTTPS라는 프로토콜이 등장했는데, HTTPS는 HTTP를 암호화하여 보안을 강화하기 위해 TLS/SSL 기술을 적용한 것이다. HTTPS 사용시, 데이터가 양방향으로 암호화되어 중간에 민감한 정보가 유출될 위험이 줄어든다. 또한 대부분의 웹 브라우저에서 HTTPS 사이트가 안전하다는 것을 보여주고 있다. HTTPS를 사용하면 웹 페이지 로딩 속도를 높여주는 HTTP/2라는 성능 개선된 프로토콜을 사용할 수 있으며, 구글은 HTTPS 사이트를 우대한다. (검색 순위에 영향을 줌) Apache 서버에서 리다이렉트 시키기 리다이렉트란 한 URL에서 다른 URL로 자동으로 이동시키는 것으로 Apache 서버에서 HTTP를 HTTPS로 자동 리다이렉트시키는 방법은 여러가지가 있다. 가장 보편적인 방법은, 가상 호스트 설정 파일에 Redirect 명령어를 사용하는 것인데, 이 방법은 가상 호스트 설정 파일에서 다음과 같은 코드를 작성하면 된다. virtualhost파일에 설정하기 <VirtualHost *:80> ServerName example.com ServerAlias www.example.com Redirect permanent

원격데스크톱(RDP)에 대한 무차별 패스워드 대입 공격 차단하기

이미지
원격데스크톱(RDP)에 대한 무차별 패스워드 대입 공격 차단하기 관리하고 있는 서버 중 윈도우서버가 있는데 얼마전부터 원격데스크톱(RDP)에 대한 무작위 패스워드 대입 공격이 들어오기 시작했다. 문제는 이 공격이 지속되면서 서버 리소스를 과도하게 차지하기 시작했고, 이로 인해 서비스 차질이 발생했다는 것이다. 지금은 조치를 취해서 괜찮아졌지만 몇일동안 고생을 했다. 그럼 이 RDP 공격이란 무엇일까? RDP 공격이란? RDP 공격이란 인터넷에 노출된 RDP 서비스에 대해 패스워드를 무차별적으로 시도하거나 취약점을 이용하여 접속하는 공격이다. 일단 접속에 성공하면, 공격자는 해당 컴퓨터의 제어권을 얻고 다른 컴퓨터나 네트워크로 침투할 수 있다. RDP 공격은 샘샘(SamSam), 크립토월(CryptoWall), 리브오프(Revil) 등 여러 랜섬웨어 그룹에 의해 사용된 바 있다. (이때 약 7,000대의 윈도우 PC와 1,900대의 서버가 감염됐다.) RDP 공격을 차단하는 방법 RDP 공격을 차단하기 위해서는 다음과 같은 방법을 적용할 수 있다. 패스워드를 복잡하고 강력하게 설정 RDP의 기본 포트인 3389번을 다른 포트로 변경 (방화벽에서 변경한 RDP 포트를 인바운드 규칙으로 허용) 파워쉘 스크립트를 이용하여 보안 이벤트 로그에서 공격 IP를 추출하고 차단 (이번 포스팅에서 진행할 방법) 이처럼 RDP 공격을 차단하기 위해서는 여러 가지 방법이 있지만, 이번 포스팅에서는 파워쉘 스크립트를 이용하여 간단하게 구현해보도록 한다. 파워쉘은 윈도우에서 사용할 수 있는 스크립팅 언어와 셸 환경으로, 시스템 관리나 자동화 작업에 유용하다. 보통 기본설치 되어 있기 때문에 따로 프로그램을 설치하거나 세팅 할 필요가 없어서 윈도우 서버에서 자주 사용한다. 파워쉘 스크립트는 .ps1 확장자로 저장하고 실행할 수 있으며, 관리자 권한이 필요할 수 있다. 파워쉘 스크립트로 RDP 공격차단 스크립트 만들기 1. 로그 파일 생성 우선 RDP 접속 시도에 대한 로그 파일을 생성하

무료 SSL 인증서 certbot 설치 및 사용법 (설정 스크립트 공유)

이미지
무료 SSL 인증서 certbot를 사용해보자. 서버 엔지니어를 하다보면 웹개발자들이 많이 요청하는 것들 중 SSL 인증서를 설치해 달라는 것이 있다. 그럼 이 SSL 인증서는 무엇일까? SSL 인증서란 무엇인가? SSL 인증서는 웹 사이트와 사용자 간의 통신을 암호화하여 보안을 강화하는 기술이다. SSL 인증서를 사용하면 웹 사이트의 주소가 http에서 https로 바뀌고 자물쇠 🔒 아이콘이 표시된다. 이렇게 하면 중간자 공격이나 데이터 유출 등의 위험을 줄일 수 있는 장점이 있다. 예전에는 SSL 인증서를 설치하기 위해서 많은 절차가 필요했다. comodo와 같은 SSL 인증서 발급을 해주는 곳에 비용을 지불하면서 인증서 발급을 요청해야했고, 즉시 발급도 되지 않아 몇일을 기다려야 받을 수 있었다. 그 후 SSL인증서를 도메인에 적용시켜야 하는데 무슨 오류가 그렇게 많이 나는지 오류가 날때마다 고생했던 기억이 새록새록하다. 뭐 이제는 추억이 됐지만 말이다. certbot이란? certbot은 Let’s Encrypt라는 비영리 기관에서 제공하는 무료 SSL 인증서를 자동으로 발급하고 갱신해주는 프로그램이다. certbot은 다양한 OS와 웹 서버를 지원하며 쉽고 빠르게 SSL 인증서를 적용할 수 있어서 현재 가장 많이 쓰이는 무료 SSL 인증서 발급 프로그램이라고 할 수 있다. certbot 설치하기 certbot은 snap이라는 패키지 관리 도구를 통해 설치하는 것을 권장한다. snap은 Ubuntu 16.04 이상에서 기본적으로 제공되므로 별도로 설치할 필요가 없지만 update는 반드시 해주어야 한다. 다음 명령어로 snap을 업데이트 해준다. sudo snap install core; sudo snap refresh core 만약 snap이 설치되어 있지 않다면 아래 명령어로 설치한다. sudo apt-get update sudo apt-get install snapd sudo apt-get install snapd 실행 그런 다음 다음 명령어로

와이프와 함께한 창녕 드라이브 (화왕산 군립공원, 비화가야 고분군 탐방기)

이미지
화왕산 군립공원에서 봄을 만끽하다. 일요일 날씨가 정말 좋다. 아침에 일어나 커피한잔 하면서 거실창밖을 바라보는데 완연한 봄기운이 느껴지더라. 평소보다 조금 이른 시간에 주말 드라이브를 가기 위해, 떡볶이와 냉동피자로 점심을 먹은 다음 늘 가던 카페에서 아이스 아메리카노 2잔을 주문한 후 드라이브를 시작했다. 화왕산 군립공원 늘 그렇듯이 목적지 없이 드라이브를 하다가 우연히 화왕산 군립공원으로 향하는 표지판을 발견했다. 화왕산은 경상남도 창녕군에 있는 높이 756m의 산으로 옛날에는 화산활동이 활발하여 불뫼, 큰 불뫼로 불리기도 했다. 1984년 1월 11일 군립공원으로 지정되었으며, 정상부에는 5만여 평의 억새밭이 펼쳐져 있다. 원래는 매년 정월대보름에 '억새태우기' 라는 행사를 진행했는데 지난 2009년 화재로 인한 인명사고가 발생한 후 중지됐다고 한다. 봄에는 진달래와 철쭉이 만발하고 가을에는 억새가 장관을 이루는 명산인데, 아직 이른 봄이라 그런지 진달래와 철쭉이 만개하지는 않았다. 간간히 보이는 정도?로 보면 될 듯. 가까이서 사진 못찍고 멀리 옥천지에서 찍은 화왕산 사진 화왕산은 선사시대 화산으로 지금 3개의 연못(용지)은 화산의 분화구가 있고 정상 둘레에는 화왕산성(사적 제64호)이 있다. 화왕산성은 가야시대(5~6세기)에 축조된 것으로 추정되며, 임진왜란 때 곽재우 장군이 의병의 거점으로 사용했다고 한다. 성 안쪽에는 창녕조씨 시조가 여기서 탄생했다는 득성비가 있다. 이 모든 걸 구경하고 왔으면 좋았겠지만, 등산할 계획없이 무작정 나온거라 내 신발은 슬리퍼. 신발 때문에 산에 오르지는 못했고 차를 타고 산 주변만 구경 했다. 아직 꽃들은 안보였지만 산 곳곳에 푸릇푸릇한 기운이 느껴지는 것이 완연한 봄의 느낌이다. 이름 모를 들꽃이 봄이 왔음을 알려준다. 근처에 옥천지라는 큰 저수지가 있는데 너무 이뻐서 사진을 여러장 찍었다. 옥천지와 잔디밭 옥천지 앞에 보이는 산 저기 멀리 보이는 화왕산 잘 정리된 작은 잔디밭이 공원처럼 있는데,