글쓰기 메뉴

UFW 방화벽 사용하기 - 우분투 14.04

UFW 는 iptables 의 설정 도구로 Uncomplicated Firewall 이란 뜻이며 문자 그대로 복잡하지 않은 방화벽 설정을 위해 사용된다.


서버는 어떤 목적이든, 공인 IP가 있든 없든 외부에서 접근이 가능하다면 보안 위험에 노출될 수 밖에 없다. IDC 레벨이나 네트워크 구성에서 하드웨어/소프트웨어 방화벽이 이미 사용되고 있을 수 있지만 그런 경우에도 각 서버의 방화벽 설정은 매우 유용하다(고 생각한다)


이런 목적으로 사용하기에 iptables 가 매우 적합하나 설정과 관리가 꽤나 복잡하여 나 같은 사람은 필요할 때 검색으로 룰을 설정했다가 어느 순간 뭔가 동작이 이상하면 iptables 전체를 내려버리는 괴상한 방식으로 운영하게되니 계륵이 아닐수가...


그런 의미로 UFW는 신세계! 방화벽이 미적용된 서버가 있다면 당장 UFW를 올려보자!


설치

$ sudo apt-get install ufw


기본 정책 설정 (들어오는 패킷은 차단, 나가는 패킷은 허용)

$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing


ssh, http, https 허용 (ssh 포트를 변경해서 사용한다면 반드시 직접 포트를 입력하자)

$ sudo ufw allow ssh
$ sudo ufw allow http
$ sudo ufw allow https


포트를 변경해 사용하거나 특정 포트를 허용

$ sudo ufw allow 8080


방화벽 ON!

$ sudo ufw enable

위의 명령을 실행하면 "현재 ssh 연결에 문제가 생길 수 있습니다. 적용하시겠습니까?" 뭐 이런 질문이 나온다. ssh 포트는 허용으로 변경했으니 "y" 를 입력해 진행할 수 있다.


확인

$ sudo ufw status verbose
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
22                         ALLOW IN    Anywhere
80/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
22 (v6)                    ALLOW IN    Anywhere (v6)
80/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)


ufw 가 실행되고 있지 않다면 아래와 같은 결과가 리턴된다.

$ sudo ufw status verbose
Status: inactive


방화벽을 끌 때는 아래와 같은 명령어를 입력한다

$ sudo ufw disable




등록된 규칙을 삭제할 때는 2가지 방법이 있다.

첫번째는 등록 시 사용한 규칙을 그대로 입력하는 방법

$ sudo ufw delete allow ssh
$ sudo ufw delete allow 8080


두번째는 각 규칙의 번호를 확인하고 번호로 지우는 방법

$ sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 443/tcp                    ALLOW IN    Anywhere
[ 4] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 5] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 6] 443/tcp (v6)               ALLOW IN    Anywhere (v6)

등록된 규칙의 번호는 줄 맨앞에 있는 [숫자]


2번 규칙 80/tcp 를 지우려면

$ sudo ufw delete 2


새로운 규칙의 추가는 동일한 방식으로 가능하다

$ sudo ufw allow 21


포트 뒤에 tcp 나 udp 를 지정할 수 있고 지정하지 않는다면 모두 적용된다

$ sudo ufw allow 21/tcp


새로운 설정을 적용하려면 disable > enable 해도 좋고 아래와 같이 reload 가 가능하다

$ sudo ufw reload




특정 IP만 허용할 경우 

$ sudo ufw allow from 192.168.0.101


특정 IP에게 특정 포트만 허용할 경우

$ sudo ufw allow from 192.168.0.101 to any port 8080


포트의 범위를 규칙으로 사용할 경우

$ sudo ufw allow 9200:9300/tcp


특정 아이피에만 일정 범위의 포트를 tcp 패킷만 허용할 경우

$ sudo ufw allow from 192.168.0.101 to any port 9200:9300 proto tcp


서브넷을 특정 포트에 허용할 경우

$ sudo ufw allow from 192.168.0.0/24 to any port 8080


이 정도면 내가 써봤던 명령어는 다 정리한 것 같다.



어디서 왔지?
다른 글들
0 0

Ubuntu 14.04 - Apache Tika 설치

아파치 티카는 PPT, XLS, PDF 등 수천종의 파일에서 텍스트와 메타정보를 추출하는 툴킷이다.
아파치 소프트웨어 재단의 프로젝트이며 아파치 루씬의 서브프로젝트로 시작됐고 현재는 독립되었다.
티카는 Apache Maven2로 빌드가 가능하나 여기서는 바이너리를 사용한다.
소스나 바이너리 다운로드 URL은 다운로드 페이지에서 확인하자
tika-app
콘솔에서도 유틸리티처럼 사용이 가능하고 --server 옵션으로 서버모드로도 사용이 가능하다. NetCat 등의 커맨드를 사용해 처리결과를 받을 수 있다.
tika-server
보다 서버스러운(!) 서버모드로 RESTful API 를 제공한다.
구동
JRE 는 당연히 설치되어 있어야하고 -jar 옵션으로 간단하게 구동된다. 기본 포트는 9998
구동 확인
브라우저에서 9998 포트로 접속하면 URL 정보가 출력된다.

tika-server 는 PUT 메쏘드만 받으며 리퀘스트 body 로 파일만을 받는다.
Meta 
Text
HTML
추가로, 내가 쓰는 Typhoeus 에서는 아래와 같이 사용할 수 있다.
Apache Tika : http://tika.apache.org/
TiakJAXRS Wiki : http://wiki.apache.org/tika/TikaJAXRS
1 2

삼성 9, 엘지 그램, MS 서피스 프로 4
어떤 노트북을 살까!

1) 애플의 맥북을 사지 않는 이유가 있고
2) 작업용 메인 노트북이지만 휴대가 필요하고
3) CPU 기준으로 i7 정도를 알아보고 있다면
현 시점에서 대부분 아래 3가지 모델로 압축되는 것 같다.
그리고 머리 쥐나게 고민하겠지.
오늘 특별히 형이 셋 중 무엇을 골라야할지 알려주겠다!
스펙빠 : MS 서피스 프로 4
가성비 : 엘지 그램
어중간 : 삼성 9
특별히 설명도 해주겠어.
서피스가 셋 중에 유일하게 6세대 i7 (그램과 나인은 5세대)
서피스가 셋 중에 유일하게 메모리 16GB 모델이 있음 (235만원)
서피스가 셋 중에 가장 가벼움 - 786g
서피스는 OS 가 Windows 10 Professional
필기감 괜츈하고 노트와 메모 용도로 아주 적합한 펜 있음
전원 어댑터에 충전용으로 사용할 수 있는 USB 포트 하나 있음 
But...

본체에 USB 포트가 단 하나
OS 미포함 구매가 가능함
OS 포함해도 온라인으로 150만원 정도면 OK. 
그냥 쌈.
개무난
스펙만큼 성능나옴
디자인과 마감 무난함
셋 중에선 제일 무겁지만 휴대하기 무난한 무게 (1.2~1.3)
서비스센터 좋음
4 0

피들리

최근 봐야할 사이트가 많아서 피들리를 처음 써봤는데 정말 편하고 좋다.
(피들리는 rss서비스라고 하네요. )
분류도 쉽고 효율성도 올라가고 피들리를 쓰고나서 플립보드 앱은 바로 지웠다. 설치하고 사용을 거의 안했는데 
피들리는 많이 쓸거 같은 느낌.
feedly.com

인터넷 검색 많이 하시는 분은 한번 사용해보세요.
저는 인터넷 하면 창에 기본탭이 10개 이상입니다. ㅋㅋ 중독인가봐여
0 0

Rails4, Elasticsearch
관계 모델 및 Method 인덱싱

searchkick 이나 tire(retire) 등을 사용하지 않고 elasticsearch-model 을 사용하는 경우 mapping 을 사용해 인덱스를 설정할 수 있다.
내 경우엔 다국어 사용을 위한 store 컬럼들과 관계모델의 컬럼들, 그리고 일부 메쏘드를 인덱스에 포함시켜야했다. - 아마 모두가 비슷하겠지.
간단하게 as_indexed_json 을 오버라이드하고 인덱스 재성성 ㄱㄱ
해시와 배열이 뒤섞여 있어 좀 거지같아 보이지만 직접 해보면 이해가 쉽다.
1 3

가방

가방 들고 다니는거 너무 귀찮다.
옛날 커피숍 "보디가드"에 있던 하이텔 단말기처럼 아무데서나 사용할 수 있는 디바이스들이 있으면 좋겠다.
음.. 환경설정이 너무 오래걸리려나?
음.. 그냥 스마트폰 성능이 좋아지면 끝인가?
으음.. 당분간은 그냥 가방을 들고 다녀야겠군.
으으음.. 나 초딩같다 ㅋㅋㅋ
1 0

파비콘 만들기

파비콘 관련해서는 소프트웨어도 많고 웹서비스도 엄청 많아서 대충 골라도 무난하게 작업되긴하더라.
그래도 근래에 몇번 유용하게 사용한 파비콘(및 아이콘) 제작 웹서비스라 Donate 는 힘들더라도 링크를 거는것으로 마음의 짐을 덜어보자.
"파비코메틱" - http://www.favicomatic.com/
1 0

수줍게 물든 참꽃이
노랗게 피어난 개나리가
흩날리는 민들레가


봄이 왔다고
세상에 봄이 왔다고 세상을 물들이기 시작했다
나풀나풀 흰나비가
오밀조밀 토끼가
지저귀는 새들이


봄이 왔다고
세상이 봄이 왔다고 세상을 노래하기 시작했다
0 0

기분 안좋으면

글쓰고 싶은듯...
공격적인 말투..
니네가 좀 잘하지.. 니네팀 진짜 문제 많어...
왜케 퇴사하는것같니... 팀원 3명 남은게 정상이냐.. 몇명이었는데.. 으이그..
정신차려 남얘기 옮기지 말고
0 0

안녕, 레이나.

친애하는 레이나.
가끔은 비가 와도 우산없이 뛰쳐나가고 싶어하는 날이있어. 그건 나에게 충동에 불과했지만 너에게는 현실가능한 것이였지. 차갑게 내리는 비에도 너는 우산도 없이 맨발로 뛰쳐 나갔어.
그래 너의 발끝이 붉게 물들었다가 이내 하얗게 되는 것, 밝은 갈색의 머리카락이 비에 젖어들며 검게 변하는 것, 하얀 원피스가 곧 너의 살결을 내비치도록 젖어가는 것.
그것들 중에서 나는 어느 하나 놓치지 않았어.
사랑하는 레이나.
너의 웃음소리가 빗속에 잦아드며 골목을 울릴때, 그때 내 마음을 너의 비가 톡톡 두드렸단다. 너는 멍하니 서있는 나를 향해 뛰어오며 젖은 머리를 귀뒤로 넘겼지. 그리고 입김을 뿜는 붉은 입술로 속삭였어.
나만의 레이나.
너의 붉은 입술에 따라 나도 우산 없이 너만의 골목에 접어들었고, 너는 나에게 잊을 수 없는 비오는 날을 안겨줬어.
나만의 레이나, 나만의 레이나.
비가 이세상을 잠식하고 홍수로 만들어 버릴지언정, 그 어느 한방울의 비도 미워하지 않으리, 사랑하며 기꺼이 온몸으로 세차게 맞으리.