본문 바로가기

보안23

728x90
반응형
[IT 용어] SSH(Secure SHell) 정의 SSH(Secure SHell)는 TCP 위에서 보안 통신을 하는 프로토콜 중 하나이다. SSH는 인증과 기밀성, 무결성, 압축, 다중화, 포트포워딩(터널링)을 제공한다. 참고문서 "시큐어 셸, Secure Shell, SSH", 정보통신용어사전, 한국정보통신기술협회(TTA). @원문보기 "SSH Secure Shell", 정보통신기술용어해설, 2022년 7월 20일. @원문보기 2023. 11. 7.
[우분투 22.04] XRDP 포트 변경 XRDP 서버를 우분투 22.04에서 운용할 때 기본 포트인 3389로 운영하면 공격에 노출될 가능성이 높다. 그래서 XRDP 서비스에서 사용할 포트를 변경하는 것이 좋다. XRDP 포트를 바꾸는 방법은 아래와 같다. XRDP 포트 변경 아래의 명령어를 입력하여 XRDP 설정 파일을 연다. nano /etc/xrdp/xrdp.ini 아래와 같이 화면이 나타나면 'port={포트번호}' 부분을 원하는 포트로 수정하여 저장한다. 아래의 명령어를 입력하여 변경된 포트 번호로 XRDP가 실행되도록 XRDP 서비스를 재시작한다. systemctl restart xrdp 변경된 포트 번호에 맞춰서 방화벽 포트 개방 등의 방화벽 설정을 확인한다. 2023. 11. 6.
[우분투 22.04] SSH(Secure SHell) 설치 일반적으로 컴퓨터를 안전하게 원격 관리하기 위해서 SSH(Secure SHell)을 사용한다. 본 글에서는 우분투 22.04에서 SSH를 설치하는 것을 설명한다. SSH 설치 아래의 명령어를 우분투 터미널에 입력하여 SSH 서버를 설치한다. apt-get install openssh-server SSH 서비스 시작 아래의 명령어를 입력하여 SSH 서비스를 시작한다. systemctl start ssh SSH 설정 수정 포트 번호 등 SSH의 설정을 수정하려면 아래의 명령어를 입력하여 설정 파일을 수정한다. vi /etc/ssh/sshd_config 참고문서 "[CentOS 7] SSH 보안 강화를 위해 포트 번호를 수정하자", 2021년 8월 4일. @원문보기 "[RHEL] SSH root 로그인 허용 .. 2023. 11. 2.
[정보 보안 용어] 연성 워터마킹(Fragile Watermarking) 정의 정보 보안 분야에서 연성 워터마킹(Fragile Watermarking)은 원본 데이터에 식별 무늬를 삽입하여 훼손 여부를 알아내는 방법을 말한다. 원본이 훼손되면 식별 무늬가 훼손 되어 훼손 여부를 알 수 있다. 주로 무결성 보장 기법에 활용한다. 참고문서 "연성 워터마킹, 軟性-, fragile watermarking", 정보통신용어사전, 한국정보통신기술협회(TTA). @원문보기 "디지털 워터마킹, digital watermarking", 정보통신용어사전, 한국정보통신기술협회(TTA). @원문보기 "Watermark, Watermarking, 워터마크, 워터마킹", 정보통신기술용어해설, 2019년 12월 4일. @원문보기 "Fast fragile watermark embedding and ite.. 2023. 9. 19.
[RHEL] PostgreSQL 보안 및 방화벽 설정 다른 시스템에서 PostgreSQL과 통신하기 위해서는 PostgreSQL 보안 설정과 시스템 방화벽 설정이 필요하다. 레드햇 방화벽 허용 설정 PostgreSQL은 기본적으로 5432 포트로 TCP 통신한다. 이 경우에는 아래와 같은 명령어로 방화벽에서 통신을 허용할 수 있다. firewall-cmd --permanent --zone=public --add-port=5432/tcp 아래의 명령어를 입력하여 설정이 적용되도록 방화벽 설정을 다시 불러온다. firewall-cmd --reload 아래의 명령어를 입력하여 설정한 것이 잘 적용되었는지 방화벽 목록을 확인한다. firewall-cmd --list-all PostgreSQL 보안 정책 설정 아래의 명령어를 입력하여 PostgreSQL 설정 파일을.. 2023. 8. 26.
[RHEL] SELinux 허용 포트 확인 및 추가 허용 포트 확인 SELinux가 허용한 포트 목록을 확인하는 명령어는 아래와 같다. semanage port -l 허용 포트 추가 아래의 명령어를 입력하면 허용할 포트를 추가할 수 있다. semanage port -a -p tcp -t http_port_t {포트번호} 참고문서 "Apache + Tomcat 여러대 운영시 SELinux 문제 해결(403 Permission, Port)", MyData, 2021년 11월 5일. @원문보기 2023. 8. 9.
[RHEL] Tomcat Connector(AJP, mod_jk)에서 'secret' 보안 오류 해결 방법 원인 Tomcat Connector(AJP, mod_jk)를 설정할 때 'secretRequired' 키에 값이 없으면 아래와 같은 오류가 발생한다. 30-Jul-2023 19:42:52.692 SEVERE [main] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to start component [Connector[AJP/1.3-8009]] org.apache.catalina.LifecycleException: Protocol handler start failed at org.apache.catalina.connector.Connector.startInternal(Connector.java:1042) at org.apach.. 2023. 7. 31.
[RHEL] SELinux 상태 확인 명령어 RHEL(Red Hat Enterprise Linux)에서 아래의 명령어를 입력하면 SELinux 상태를 확인할 수 있다. sestatus -v 참고문서 "Chapter 2. Changing SELinux states and modes", 레드햇 고객포털. @원문보기 2023. 7. 29.
[RHEL] SSH root 로그인 허용 설정 RHEL(Red Hat Enterprise Linux)의 SSH(Secure Shell)은 기본적으로는 root 계정 로그인이 차단되어 있다. 처음에 RHEL을 설치하는 과정에서 허용을 할 수 있지만 이 과정을 놓친 경우 아래의 과정을 통해 SSH 접속시 root 계정 로그인을 허용할 수 있다. SSH 설정 수정 아래의 명령어를 입력하여 SSH 설정 파일을 텍스트 에디터로 연다. vi /etc/ssh/sshd_config 아래의 설정 값을 입력하여 root 계정으로 로그인을 허용한다. 'yes'는 비밀번호로 로그인이 가능한 상태를 말하며 'prohibit-password'는 키 값으로 로그인이 가능하다. PermitRootLogin yes SSH 서비스 재시작 아래의 명령어를 입력하여 SSH 서비스를 재.. 2023. 7. 26.
제6회 삼성 보안 기술 포럼 시청 중입니다. 2022년 8월 23일 화요일 10시부터 15시까지 진행되는 제6회 삼성 보안 기술 포럼을 시청 중입니다. 여러 주제를 이렇게 한 날에 발표하니 한 번에 볼 수 있어서 좋습니다. 휴식 시간에 즐길 수 있는 게임도 있습니다. 2022. 8. 23.
Git에서 "SSL certificate problem: self signed certificate" 해결 방법 사설 SSL(Secure Sockets Layer) 인증서로 HTTPS(Hypertext Transfer Protocol Secure) 통신을 하고 있다면 아래의 사진처럼 "SSL certificate problem: self signed certificate" 라는 문구로 Git이 통신을 거부할 수 있다. 이 경우 사설 SSL 인증서도 통신에 사용할 수 있도록 설정하면 해결할 수 있다. 윈도우 환경을 이용 중이라면 아래의 사진처럼 Git Bash를 켜고 리눅스라면 터미널에 접속한다. 아래의 명령어를 입력하여 HTTPS 인증서 유효성 검사를 비활성화하는 옵션을 전역(Global)으로 선언한다. git config --global http.sslVerify false 2022. 8. 22.
[CentOS 7] Fail2Ban에서 SSH 정책 설정하기 Fail2Ban 정책을 조정해야하는 이유 무작위 대입 공격(Brute foce, 브루트포스)은 가장 단순하고 시간이 오래걸리지만 시간만 있다면 언젠가는 해킹이 가능한 것이 특징이다. 그런 관점에서 무작위 대입 공격에 필요한 비용을 최대한 올리는 것이 중요하다. 지난 글에서는 CentOS에서 Fail2Ban을 설치하는 방법을 다루었고 기본 정책만으로는 무작위 대입 공격을 방어하기에는 부족하기 때문에 Fail2Ban 정책을 손보는 것이 좋다. Fail2Ban 정책 설정 아래의 명령어를 입력하여 Fail2Ban 정책 파일을 수정한다. vi /etc/fail2ban/jail.conf 아래의 사진처럼 각종 설정 화면이 나타날텐데 SSH에 적용할 것이고 로그인 관련 시도 허용 횟수와 밴 시간을 적절하게 조절한다. .. 2022. 8. 22.
[CentOS 7] Fail2Ban 설치 본 글에서는 CentOS 7.8을 기준으로 Fail2Ban을 설치한다. Fail2Ban은 SSH(Secure SHell)를 통한 무차별대입공격(Brute Force) 등의 계정 탈취를 막기 위해 접근 시도를 제한하는 프로그램이다. Fail2Ban 설치 아래의 명령어로 Fail2Ban을 설치한다. yum install fail2ban Fail2Ban 자동 실행 설정 아래의 명령어로 Fail2Ban이 CentOS가 기동하면 자동으로 실행되도록 설정한다. systemctl enable fail2ban Fail2Ban 실행 아래의 명령어로 Fail2Ban을 실행한다. systemctl start fail2ban Fail2Ban 상태 확인 아래의 명령어로 Fail2Ban이 잘 실행되었는지 확인한다. systemc.. 2022. 8. 3.
[CentOS 7/8] HTTPS 서비스를 위해 사설 SSL 인증서 생성하기 HTTPS 등 SSL을 이용한 암호화 통신을 생성하기 위해서는 SSL 인증서가 필요하다. 공인된 SSL 인증서를 쓰는 방법이 가장 좋겠지만 비용이 발생하고 굳이 공인된 SSL이 필요하지 않은 경우 사설(Private) SSL 인증서를 생성하여 사용하는 것이 편리하다. 이 글에서는 CentOS에서 OpenSSL을 이용한 사설 SSL 인증서를 생성하는 법에 대해서 다룬다. 편의를 위해서 아래의 경로에서 작업을 수행한다. 작업 경로: /etc/pki/tls/certs 1. OpenSSL을 설치한다. 아래의 명령어를 입력하여 OpenSSL을 설치한다. yum install openssl openssl version 2. 루트 인증서 키를 생성한다. 아래의 명령어를 입력하여 루트 인증서 키를 생성한다. opens.. 2022. 5. 28.
[GitLab] 보안 향상을 위해 reCAPTCHA를 활성화하자 reCAPTCHA를 활성화 하는 이유 GitLab을 운영하다보면 로그인을 무차별 대입(Brute Force)으로 시도하는 봇이 굉장히 많은 것을 알 수 있다. 안전한 해결방법은 GitLab에 접속가능한 IP 주소를 제한하는 것이겠지만 고정 IP를 사용하는 환경이 아니기에 IP 주소 목록 관리를 위한 지속적인 노력이 발생하므로 사용하기가 어렵다. 대안 중 하나로 로그인할 때 reCAPTCHA를 사용하는 것을 활성화하면 무차별 대입 공격을 어느 정도 막을 수 있다. reCAPTCHA 설정은 'Menu - Admin - Settings - Reporting - Spam and Anti-bot Protection'에서 진행할 수 있다. 2022. 3. 16.
[윈도우 10] L2TP/IPSec VPN 연결 중에 보안 계층 오류가 발생했을 때 나의 경우 원격지에서 내 컴퓨터로 연결하는 일이 많아서 안전한 통신 방법인 VPN(Virtual Private Network)을 자주 사용하는데 어느 날 원격지에서 사용하는 PC에서 "보안 계층에서 원격 컴퓨터와 초기 협상 동안 처리 오류를 발견했기 때문에 L2TP 연결 시도에 실패했습니다"라는 오류가 떠서 내가 원하는 VPN에 접속하지 못 하는 문제가 발생했다. 구글링을 하다보니 2022년 1월 12일에 배포된 윈도우10 KB5009543 패치가 문제라고 하는데 현재는 해결됬기 때문에 업데이트만 하면 해결된다고 한다. 최신으로 업데이트하니 해결되었다. 정확히 말하면 윈도우10 KB5010793 패치가 적용되었기 때문에 해결된 것이다. 관련 문서 [1] "KB5009543, KB5009566 패치로 인한.. 2022. 1. 30.
[CentOS 7/8] 파일(폴더) 소유주와 소속그룹 변경 파일에 접근하기 위해서는 접근 권한이 있어야 한다. 권한을 부여하는 방법 중 하나는 해당 파일의 소유주와 소속그룹을 변경하는 방법이 있다. 파일 권한 확인 아래의 명령어를 입력하여 파일의 소유주와 소속그룹을 확인한다. ls -al 여기서는 www 폴더의 소유주와 소속그룹을 변경할 것이다. 명령어가 실행된 결과를 보면 소유주와 소속그룹이 나타나 있는데 유저 "root"와 그룹 "root"에 소속되어 있음을 알 수 있다. 파일 소유주 및 그룹 변경 아래의 명령어처럼 입력하여 파일의 소유주와 그룹을 변경한다. chown -R 유저명:그룹명 대상파일(폴더) ls -al 폴더의 소유주와 소속그룹이 apache로 변경된 것을 확인할 수 있다. 아파치 웹서버의 경우 권한이 없으면 파일을 읽고 쓰지 못 하고 이 경우 .. 2021. 11. 25.
[운영체제] seL4 소개 아래는 seL4 홈페이지에서 seL4를 소개하는내용을 번역한 것이다. seL4는 고보증(High-Assurance), 고성능(High-Performance)의 운영체제 마이크로커널이다. seL4는 성능저하 없는 정형검증(Formal verification)으로 인해 특별하다. seL4는 안전필수(Safety-Critical) 시스템과 보안필수(Security-Critical) 시스템을 구축하기 위해 신뢰할 수 있는 기반이다. seL4는 seL4 재단이 지원하고 Github에서 오픈소스로 제공된다. 커널이 된다는 것은 소프트웨어 시스템의 핵심에서 소프트웨어 조각이 실행되고 리소스에 대한 모든 액세스를 제어하는 ​​소프트웨어라는 의미이다. sel4는 세밀한 접근제어를 Capability-based secur.. 2021. 11. 17.
[CentOS 7] Openssl을 최신 버전으로 업데이트하기 CentOS 7에서는 Openssl이 yum으로 자동 업데이트 되는 최신버전이 낮다. 나의 경우 1.0.2k였는데 이로 인해 openssl을 참조하는 패키지를 설치할 때 오류가 발생했었다. 본 글에서는 Openssl을 1.1.1k로 컴파일 설치하는 것을 설명한다. 1. 기존 Openssl 1.0.2k 삭제 아래의 명령어를 입력하여 기존 Openssl 1.0.2k를 삭제한다. yum remove openssl 2. Openssl 1.1.1k 다운로드 아래의 명령어를 입력하여 Openssl 1.1.1k를 다운로드 한다. wget https://www.openssl.org/source/openssl-1.1.1k.tar.gz 3. Openssl 1.1.1k 압축해제 아래의 명령어를 입력하여 다운받은 Openss.. 2021. 8. 7.
[CentOS 7] 워드프레스 설치 중 'Permission denied'가 발생하는 경우 워드프레스를 설치 중에 '데이터베이스 연결을 구축하는 중 오류입니다'라는 메시지가 떠서 'wp-config.php'파일을 수동으로 생성하고 디버그 옵션을 활성화시키니 'Permission denied'라는 메시지가 나타났다. 나의 경우는 데이터베이스 서버를 별도로 두고 있었기 때문에 SELinux에서 데이터베이스로 연결을 차단하여 발생하는 문제였다. 1. 아파치 웹서버 네트워크 연결 권환 활성화 아래의 명령어를 입력하여 네트워크 연결 권한을 활성화한다. setsebool httpd_can_network_connect_db=1 2. 워드프레스 설치 진행 잘 적용이 되면 워드프레스 설치화면을 새로고침한다. 아래처럼 워드프레스 설치화면이 나타나면 잘 된 것이다. 2021. 4. 18.