RadarURL

유닉스/리눅스
2014.05.26 10:28

안전한 CentOS를 위한 방화벽, 보안 설정

조회 수 1868 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

Putty를 사용하여 서버에 SSH에 접속하고, 방화벽 초기 설정을 마치고, 서버 보안 설정을 다루겠습니다.

1. 서버에 SSH 로 접속하기

APM 운영을 위한 CentOS 설치가 완료되었으니 서버 앞을 떠나,  사용중인 PC에서 SSH 로 서버에 접속 해봅시다.  SSH 로 접속하기 위한 무료 SSH 클라이언트 프로그램에는 PuTTy 한글 버전이 있습니다.

PuTTY 설치에 관한 내용도 열심히 써볼려고 했으나,  능력자분들이 너무 많아 링크로 또 대체합니다.

* PuTTY설치후 SSH 접속시 주의사항.
CentOS 6.4 는 기본 UTF-8 입니다.  따라서 PuTTY 설정 화면의 [창 - 변환 - 수신한 데이터를 이 문자셋으로 가정]항목을 기본 CP949 에서 UTF-8 로 변경해주셔야 화면상의 한글이 깨지지 않습니다.

 

2. 방화벽 설정하기

먼저 방화벽 설정파일을 확인합니다.

cat /etc/sysconfig/iptables

만약 위 파일에 아무런 내용이 없을 경우에만 다음 작업을 진행합니다.
  (OS 설치시 방화벽 활성화에 체크하지 않은 경우임)

A. ‘방화벽 설정’화면을 띄웁니다.

system-config-firewall-tui

B. ‘방화벽 : [*] 활성화’에 체크합니다.

system-config-firewall.png



C. ‘사용자 설정’을 눌러 ‘SSH’항목에 체크하고 ‘종료’를 누릅니다.

system-config-firewall_2.png



D. 다시 방화벽 설정 첫화면에서 ‘OK’를 누르면  /etc/sysconfig/iptables 파일에 설정이 저장됩니다.

system-config-firewall_3.png



  주의) /etc/sysconfig/iptables 파일에 미리 추가해둔 내용이 있는 상태에서, 위 ‘방화벽 설정’을 띄워 ‘사용자 설정’을 진행하면, /etc/sysconfig/iptables 파일의 내용이 초기화됩니다.   따라서 iptables 파일이 내용이 없는 경우에만 실행해야 합니다.

이제 iptables 파일을 열어 외부에서 접근할 서비스의 포트를 허용합니다.

vi /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

기본 SSH 인 22번 포트만 허용된 상태인데, 웹서비스(www)를 위해 22 설정 아래에 TCP 80 을 추가합니다.  (다른 라인에 넣으면 제대로 동작 안합니다.)

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

22, 80 외에 서비스 범위에 따라 추가해야하는 주요 포트들입니다.

- 웹서버에 SSL 인증서가 설치되어 https 주소로 서비스하는 경우 TCP 443 추가

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

- 메일서버를 직접 운영하여, SMTP/POP3 를 이용하는 경우, TCP 25, TCP 110, TCP 587 추가
참고1) 메일을 수신하지 않고, PHP mail()함수 등을 통해 발송하는 용도로만 사용된다면 25, 110, 587 포트는 열 필요가 없습니다.
참고 2) 110 포트는 아웃룩이나 스마트폰 등에서 ‘메일 받기’시 사용되므로, 사용하지 않는다면 열 필요가 없습니다.
  참고 3) 설정에 따라 SMTP, POP3 에 SSL을 적용하는 경우 포트가 달라질 수 있습니다.

-A INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 587 -j ACCEPT

방화벽 설정이 완료되면, 방화벽을 재시작해줍니다.

/etc/init.d/iptables restart

재시작후, 중요한 체크 포인트!
Putty 에서 기존 SSH 연결을 절대 종료하지 말고, 새 접속을 하나 더 열어 정상적으로 서버에 SSH로 접속되는지 확인해야 합니다.  만약 기존 SSH 연결이 끊어져버린 상태에서 방화벽 설정 문제로 SSH 연결이 안될 경우, 서버 앞으로 가서 작업해야 하므로 원격지일 경우 특히 위험합니다.

이제 ntsysv 를 실행하여, ‘iptables‘항목이 부팅시 자동 시작하도록 체크되어 있는지 확인하면 방화벽 작업이 완료됩니다.

/usr/sbin/ntsysv

 

3. 보안 설정

A. root 비밀번호를 ‘영문 소문자 + 대문자 + 숫자 + 특수문자’ 조합으로 최소 10자리 이상으로 설정하십시 오.  아직도 처음 설치한다고 123456 을 사용하는 경우가 있는데, 인터넷이 연결된 상태에서는 실시간  해킹됩니다.

B. Fail2Ban 을 설치하면, SSH 로그인 시도 횟수가 초과하면 IP를 자동으로 차단해주므로 비밀번호 입력 공격에 효과적입니다.

yum update
 
rpm -ivh http://ftp.neowiz.com/fedora-epel/6/i386/epel-release-6-8.noarch.rpm
yum update epel-release
yum install fail2ban jwhois
/sbin/chkconfig fail2ban on
/etc/init.d/fail2ban start

이상으로 서버에서 기본적인 보안 설정이 모두 완료되었습니다.

참고1) SSH 포트를 22 대신 다른 포트로 변경하는 방법도 있으나 일단 생략합니다.  더 자세히 알고 싶으신 분들은  구글에서 ‘centos ssh 포트 변경’으로 검색해보시면 자료를 찾으실 수 있습니다.

참고2) 최근 추세인 웹페이지의 보안 취약점을 통한 공격들은 주요 PHP 솔루션별로 설치 및 보안 조치들을 정리해볼 예정입니다.


출처 : http://www.php79.com/59

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 936013
2526 연애 대한민국 결정사 직업 등급표 file JaeSoo 2026.01.09 7
2525 생활 알아두면 유용한 향수 향 종류 모음 JaeSoo 2026.01.09 7
2524 업무 로그인 구글 드라이브 안 쓰고 시놀로지 드라이브 쓰는 이유, 설정 방법 & 활용팁 JaeSoo 2026.01.08 8
2523 네트워크 SMB 다중 채널 관리 JaeSoo 2026.01.08 2
2522 네트워크 Synology NAS SMB 3.0 Multichannel 이용하기 JaeSoo 2026.01.08 3
2521 네트워크 어떻게 SSH를 통해 root 권한으로 DSM/SRM에 로그인할 수 있습니까? JaeSoo 2026.01.08 4
2520 네트워크 시놀로지 나스 SMB 3.0 멀티채널 구성하는법 JaeSoo 2026.01.08 5
2519 경제 RWA(Real-World Assets): 실물자산 토큰화 이해 JaeSoo 2026.01.05 7
2518 생활 그루밍성범죄와 가스라이팅 차이점, 처벌 수위 알아보기 JaeSoo 2025.12.23 60
2517 건강 전문의가 추천하는 자위 횟수 file JaeSoo 2025.12.23 65
2516 모바일 일상에 쉽게 적용할 수 있는 수면 관리 앱 5가지 JaeSoo 2025.12.18 106
2515 건강 매일 밤에 머리 감으면 일어나는 일ㅣ탈모 전문가가 알려주는 충격적인 진실ㅣ김주용 원장 1편ㅣ닥터딩요 JaeSoo 2025.12.11 100
2514 건강 다친 손가락에 끼우는 실리콘 손가락 file JaeSoo 2025.12.11 97
2513 연애 성적 취향에 대하여... JaeSoo 2025.12.09 215
2512 연애 fwb(Friends with Benefits)에 대해 JaeSoo 2025.12.09 179
2511 건강 자위가 잠자는 데 도움이됩니까? 알아봅시다! JaeSoo 2025.12.09 171
2510 건강 야동 실태보고서 JaeSoo 2025.12.09 166
2509 건강 불면증 해결을 위한 자위 활용 JaeSoo 2025.12.09 222
2508 연애 변호사가 보아온 상간남들의 공통점 file JaeSoo 2025.11.25 264
2507 윈도우즈 윈도우11 비밀번호 분실시 설정 변경방법 (Windows10 포함) JaeSoo 2025.11.06 331
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 127 Next
/ 127


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너