2019/12/09

보안장비 초기 구성 및 설정

고급 서비스 사용자 정의
모듈 기능을 확장 할 수 있음.
프레임 워크에 제공하는 추상화, 자동화 및 컨텍스트에서 여전히 이점을 얻을 수 있는 두 개의 메커니즘이 있다.

stubs: 데몬이 사용하는 구성 파일을 생성하는 데 사용되는 탬플릿.
stubs을 수정하거나 작성하면, proxy(http 프록시) 구성에 안전한 포트 추가와 같은 모든 모듈의 동작을 사용자 정의 할 수 있다.

모든 모듈의 구성 파일을 제 설정을 통해 모듈 마다 동작 방식을 사용자가 정의 할 수 있으며,
설정 방법으로는 stub 수정 한 다음 템플릿 생성시(HTTP 프록시) 구성을  프록시가 포트를 추가 할 수 있다.

hooks: 방화벽 규칙을 새로 만들고 방화벽에서 특정 유형의 트래픽을 표시하는 규칙을 추가.
예들 들어 모듈의 수명 주기는 스크립트의 특정 체크 포인트 중에 발생된다.

Stubs 방식.
활성화된 모듈은,
자신이 관리하는 서비스에 대한 시스템 구성파일을 덮어 쓴다.
모듈은 기본적으로 서비스에 구성 파일에 대한 구조를 포함하는 템플릿을 통해 제어 방식을 설정한다.
결과 파일의 일부는 프레임 워크에서 제공 한 변수를 통해 매개 변수화 된다.

!mas_file!
보안장비의 경우 모듈에 대한 설정 파일을 구성할때,
시스템에 존재 하는 파일을 제어하는게 아니라,
mas 확장자 파일을 설정후 다시 시스템에 작용합니다.
/usr/share/lhtdns/stubs/모듈이름/*.mas
/etc/모듈설정 파일 이름/*conf

mas 파일을 읽어 들여
conf 파일에다가 저장하는 방식.

템플릿을 처리 할 때마다.
파일을 덮어 쓰므로 구성 파일을 직접 수정하는 것은 아무런 소용이 없다.
보안장비의 자체 구성 템플릿은 /usr/share/nemoos/stubs 에서 확인 할 수 있다.
그 이름은 원레 구성 파일에 확장자 .mas룰 사용한다.
이러한 템플릿을 수정하는 것은 소프트웨어 패키기가 업데이트되거나 다시 설치되는 경우 덮어 쓰기 때문에 좋은 방법이 아니며, 유지 보수 하기 힘들어진다.

따라서 변경 사항을 영구적으로 유지하기 위해 원래 템블릿 파일을 모듈 이름으로 /etc/nemoos/stubs/ 디렉토리에 복사 할 수 있다.

예제:
mkdir /etc/lhtdns/stubs/dns
cp /usr/share/lhtdns/stubs/dns/named.conf.options.mas /etc/lhtdns/stubs/dns

파일 변경사항 정보 생성
diff /etc/lhtdns/stubs/dns/named.conf.options.mas /usr/share/lhtdns/stubs/dns/named.conf.options.mas

원본 템플릿에 대해 수행 한 수정 사항을 계속 제어 할 수 있다.
diff 명령어를 사용하여 이러한 차이점을 확인할 수 있다.


내부 네트워크에서 신뢰 할 수 없는 DMZ 네트워크가 DNS 전체 영역 전송을 수행하지 못하게 한다고 가정한다.

디렉토리 구조를 만들고, 설정 파일을 복사한다.
mkdir /etc/lhtdns/stubs/dns
cp /usr/share/lhtdns/stubs/dns/named.conf.options.mas /etc/lhtdns/stubs/dns
cp /usr/share/lhtdns/stubs/dns/named.conf.local.mas /etc/lhtdns/stubs/dns

named.conf.local.mas 네트워크 범위를 정하고 DMZ 그룹을 추가한다.
acl "DMZ" {
    192.168.200.0/24;
    192.168.201.0/24;
};

named.conf.options.mas 개체에 설정한 영역에 전송을 금지한다.
allow-transfer { !DMZ; internal-local-nets; };

모듈을 재시작 한다.
service lhtdns dns restart

Hooks 방식
모듈 실행 상태의 특정 시점에서 특정 추가 작업을 수행해야 할 수도 있다.
예를 들어 보안장비의 방화벽과 관련된 변경 사항을 저장하면 방화벽 모듈이 가장 먼저하는 일은 기존의 규칙을 모두 제가 한 다음,
보안 장비에 구성된 규칙을 추가하는 것이다.
보안장비 인터페이스에서 다루지 않는 사용저 정의 iptables 규칙을 수동으로 추가하면 방화벽 모듈 변경 사항을 저장할 때 정의한 규칙이 사라진다.
이러한 동작을 제어하기 위해 보안장비을 사용하여 변경 사항 저장 프로세스가 수행되는 동안 스크립트를 실행 할 수 있다.
프로세스 중 hooks 라고 하며, hooks 기반의 스크립트를 실행 할 수 있는 6가지 위치가 있다.
그중 2개는 일반적이며 나머지 4개는 모듈 단위이다.

모듈 실행 상태에 따라 추가 작업을 수행 할 필요가 있다.
보안장비의 방화벽과 관련된 변경 사항을 저장할때
예를 들어, 방화벽 모듈이 수행하는 첫 번째 일은 기존의 모든 규칙을 제거하고
lhtdns 사용자가 구성한  방화벽 규칙을 추가하는 것이다.

lhtdns 수동 인터페이스에 포함되지 않는 규칙을, 사용자 iptables 규칙을 통해 추가하면
방화벽을 재 시작하면은 이에 대한 규칙 정보가 없어진다.

이 정보를 유지 시키기 위해서는 변경사항을 저장하는 프로세스가 수행되는 동안 스크립트를 실행에 정보를 추가 할 수 있는 방식이다.

변경 사항 저정하기 전:
/etc/lhtdns/pre-save 에 실행권한이 있는 스크립트 파일이 존재하면은 방화벽 프로세스가 동작 하기 전에 실행 됩니다.

변경 사항 저장 후:
프로세스가 완료되면 /etc/lhtdns/post-save 디렉토리에 실행 권한이 있는 스크립트를 실행됩니다.

모듈 구성 저정하기 전:
/etc/lhtdns/hooks/<modules>.presetconf 설정.
보안장비에서 기본적인 설정 정보를 가지고와 실행 한다.
<module>로 제어 하려는 모듈 이름을 사용해 쓰면, 모듈 구성을 덮어 쓰기 전에 hooks가 실행된다.
- 사용자 정의 방화벽 규칙 추가
- 보안장비 기본적인 방화벽 규칙 추가

모듈 구성 저장 후:
/etc/lhtdns/hooks/<modules>.postsetconf 설정.
보안장비에서 기본적인 설정이 끝난후
<modules>.postsetconf 파일 구성정보 확인후 저정 한 후 실행 됩니다.

1. 사용자 방화벽 규칙이 존재 하면은 추가
2. 보안장비 기본적인 방화벽 규칙 추가
3. 1번 2번 규칙이 추가하고 난후 사용자 방화벽 규칙 추가.

서비스 다시 시작하기 전:
/etc/lhtdns/hooks/<module>.preservice 실행됩니다.
이 스크립트는 예를들어, 아파치 모듈을 로드하는데 유용할 수 있습니다.

서비스 다시 시작한 후:
/etc/lhtdns/hooks/<modules>.postsrvice 실행됩니다.
방화벽의 경우,
모든 여분의 규칙이 여기에 추가 할 수 있습니다.


예제>
투명 프록시 설정.
HTTP 연결이 자동 경로 재 지정에서 특정 네트워크 세그먼트를 제외하고 싶을때.
/etc/lhtdns/hooks/firewall.postservice를 만들어 제어한다.

HTTP 연결의 자동 리다이렉션에서 특정 네트워크 세그먼트를 제외하고 싶을때.
/etc/lhtdns/hooks/firewall.postservice를 만들어 제어한다.

cd /etc/lhtdns/hooks/
vi firewall.postservice
#!/bin/bash
iptables -t nat -l premodules -s 192.168.200.0/24 -p tcp -m tcp --dport 80 -j ACCEPT

파일 실행 권한을 주고 서비스 재 구동.
chmod +x firewall.postservice
service lhtdns firewall restart

3. 새로운 모듈 개발 환경
보안 장비는 확정성을 염두해 설계하고, 새로운 모듈을 만들기 위해서는 비교적 간단하게 작성 할 수가 있다.
perl 언어 지식이있는 사람은 보안장비의 개발 프레임워크를 활용하여, 웹 인터페이스를 작성하고 나머지 모듈 및 통합된 보안장비 라이브러의 common 과 통합 할 수 있다.

보안장비의 디자인은 객체 지향적이며 모델 - 뷰어 - 제어(MVC) 디자인 패턴를 이용한다.
MCU 때문에 개발자는 데이터 모델에서 요구하는 기능을 정의 하면, 나머지 부분은 보안장비에 의해 자동으로 생성된다.

MVC 객체 설계 사이트 설정: http://en.wikipedia.org/wiki/Model_View_Controller

설정 파일 정리 확인
http://redmine.linuxlee-ftp.lan/boards/3/topics/590  ---> 현재 이 사이트가 어디에 있는줄 모르겠음.
예전 개발시 만들어 놓은 사이트인데... 로컬 서버에 어딘가 존재 할 듯. 나중에 찾기로 한다.

4. MVC : Model-View-Controller
프로그램 로직을 3개의 상호 연결된 요소라 나누어 사용자 인터페이스를 개발하는 데 일반적으로 사용되는 소프트웨어 디자인 패턴이다.
소프트웨어 설계에서 세 가지 구성 요소인 모델(Model) 뷰(View), 컨트롤러(Controller)를 이용한 설계방식.
이것은 정보가 사용자에게 제시되고 수용되는 방식과 정보의 내부 표현을 분리하기 위해 수행된다.
MVC 아키텍처 패턴에 따라 이러한 주요 구성 요소가 분리되어 코드 재사용 및 병렬 개발이 가능하다.

일반적으로 데스크탑 그래픽 사용자 인터페이스 GUI에 사용되는 이 패턴은 웹 응용 프로그램 설계에 널리 사용된다.

1. 구성요서
모델:
패턴의 중심 구성 요소이다.
사용자 인터페이스의 독립 애플리케이션의 동적 데이터 구조이다.
데이터, 로직 및 애플리케이션 규칙을 관린한다.

뷰어:
차트, 다이어그램 또는 테이블과 같은 정보 표현 관리를 위한 막대 도표, 회계사를 위한 표 형식보기와 같은 동일한 ㅈ어보의 표현 보기가 가능함.

제어장치:
입력을 적용하고 모델이나 뷰에 대한  명령으로 변환한다.
응용 프로그램을 이러한 구성 요소로 나누는 것 외에도 모델 뷰 컨트롤러 디자인은 이들 간의 상호 작용을 정의한다.
- 모델은 응용 프로그램의 데이터를 관리한다. 컨트롤러에서 사용자 입력을 받는다.
- 뷰어는 특정 형식으로 모델을 표현하는 것을 의미한다
- 제어기는 사용자 입력에 응답하고 데이터 모델 오브젝트에서 상호 작용을 수행한다.
- 컨트롤러는 입력을 수신하고 선택적으로 입력을 확인한 다음 입력을 모델로 전달한다.

다른 소프트웨어 패턴과 마찬가지고 MVC는 각 솔루션에 적용 할 수 있도로고 "core"을 문제로 표현한다.


모델은 소프트웨어 내에서 데이터를 의미하고, 뷰는 사용자에게 보이는 화면 내용을 의미한다.
이러한 모델과 뷰의 상호 작용을 관리하는 것이 콘트롤러이다.

예를 들어, 사용자의 입력이 컨트롤러로 들어오면 컨트롤러는 모델에서 데이터를 불러오고, 해당 데이터를 뷰를 통해 화면으로 출력한다.
모델, 뷰, 컨트롤러가 기능별로 독립적으로 분리되어 있어서 여러 명의 개발자가 동시에 각각의 기능을 개발할 수 있고,
일부 기능이 추가될 경우도 기존의 구성 요소를 재사용할 수 있어 코드 재사용성이 향상된다.

노르웨어 컴퓨터 과학자인 트리베 린스카우그가 1970년에 최초로 MVC 개념을 제안했다.
당시에는 PC용 소프트웨어를 개발하기 위한 모델로 제시되었지만, 현재는 웹 애플리케이션을 개발하는데에도 상당히 많이 사용된다.

MVC 모델을 웹 애플리케이션에 쉽게 적용할 수 있는 라이브러리로는 앵귤러자바스크립트(AngularJS),
엠버자바스크립트(EmberJS), 자바스크립트에브이시(JavaScriptMVC), 백본자바(BackoneJS) 등이 있다.

MVC의 변형 형태로 모델.뷰: 프리젝터(MVP: Model-View-Presenter),
모델 뷰, 뷰모델(MVVM: Model-View-ViewModel)등이 있다.
MVC 유형에서 뷰와 모델은 정확히 분리되지만, 컨트롤러가 뷰의 구성에 상당 부분 관여하는 경우가 있어 각각의 독립성이 떨어지는 문제가 발생할 수 있다.
이를 해결하기 위해 컨트럴러의 뷰 구성 기능은 모듀 뷰 자체에 맡기고 프리젠터(presenter)가 모델과 뷰 사이의 인터페이스 역할만을 하도록 하는 것이 MVP이고,
데이터 바인딩 기반으로 뷰가 뷰모델과 인터페이스 하도록 제한을 두는 것이 MVVM이다.

5. 구성 키
보안장비을 사용하면 웹 인터페이스를 통해 대부분의 기능 구성을 할 수 있다.
/etc/nemoos의 파일을 사용하여 일부 서비스의 고급 설정을 할 수 있다.

이 .conf 파일을 수정하기 위한 기본 지침은 각 파일의 시작 부분에 설명된다.

Captive Portal:
/etc/nemoos/captiveportal.conf

#
#
# 다음 줄을 주석을 제거하면 활서화 도니다.
# 보조 LDAP 구성:
#captive_secondary_ldap = yes
COMMON

/etc/nemoos/nemoos.conf


# 사용자 [필수]. 보안장비을 실행할 사용자
# 필요한 모든 작업을 수행하기 위해 sudo 권한이 있어야 한다.
user = ebox
#
# 그룹 [필수]. 보안징바을 실행할 그룹
egroup = ebox
#
# 디버깅 모드  [필수]. yes|no
# Note: 적용하려면 변경 한 후 아래 명령을 실행. :
# /etc/init.d/nemoos apache restart
debug = yes
#
# 인터페이스 덤프 예외.
# 개발자에게 유용하며 베타 기간 동안에 만 사용할 수 있다.
#dump_exceptions = yes

6. nemoos.core
/etc/nemoos/core.conf
# core.conf - configuration file for Nemoos core.
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다. :
#
# key = value # this is ignored

# Redis 서버 포트
# 이 값을 변경하면 redis 서버를 수동으로 다시 시작해야 한다.
# 두 단계 :
#    $ /etc/init.d/nemoos webadmin restart # 새로운 구성 적용
#    $ restart nemobox.redis                 # redis 서버 재 시작.
redis_port = 6380

# 데시 보드 위젯에서 시스템 업데이트 무시
#widget_ignore_updates = yes

# 블랜드 변경을 위한 맞춤 접두사.
#custom_prefix = nemoos

7 dns
cat /etc/nemoos/dns.conf
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다. :
#
# key = value # this is ignored
# 내부 네트워크는 nemoBox DNS 캐싱 서버에 재귀 쿼리를 수행 할 수 있다.
# 로컬 네트워크는 이미 허용되어 있으며 이 설정은 고정 경로를 통해 네트워크에 도달 할 수 있도록하기 위한 것이다.
# Example: intnets = 192.168.99.0/24,192.168.98.0/24
intnets =

# 이 키는 자동 리버스 존 생성을 제어한다.
# 비활성화 하렴ㄴ no로 설정한다.
generate_reverse_zones = yes

# 이 키는 쿼리 IP를 기준으로 결과를 정렬할지 여부를 정의한다.
sortlist = yes

8 backup
/etc/nemoos/backup.conf

# 백업 메뉴 사용. (yes or no)
ebackup_menu_enabled = yes
#
# Volume size in Mb (default: 25)
# 로컬 파일 시스템으로 백업하는 경우: 600을 선택하거나
# 파일이 적을수록 커짐.
volume_size = 25
#
# 임시 디렉토리  (default: /tmp)
temp_dir = /tmp
#
# 보관 디렉토리  (default: /var/cache/nemoos/duplicity)
# 첫 실행 후 이 값을 변경하면 저장소를 다시 작성해야 한다.
# 오래된 것은 자동으로 삭제되지 않음.
archive_dir = /var/cache/nemoos/duplicity
#
# 구성 재시도
# 이 값 세트는 업로드가 완료되고 백업을 완료하기 위해 일부 재 시도가 필요할 때 설정됩니다.
# timeout_n = initial_value * scale_factor ^ (n-1)
# 예를 들어 initial_value = 60s, scale_factor = 2, n_tries = 4
# 백업은 포기하기 전에 60, 120, 240 초 후에 4 번 시도됩니다
# 이 값은 초 단위로 설정된다.
initial_value=60
scale_factor=2
n_tries=4
#
# 이중성 타임 아웃
# 기본값은 5 분이지만 주석을 해제하고 다른 값을 초 단위로 설정할 수 있습니다
#duplicity_timeout = 300
#
# 예약 된 백업 우선 순위
# 0에서 19 사이의 양의 정수 여야합니다.
# 0은 보통 우선 순위이고 높은 숫자는 _less_ 우선 순위입니다
ebackup_scheduled_priority=10

9 firewall
cat /etc/nemoos/firewall.conf
# firewall.conf - configuration file for nemoos-firewall
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored

# 분당 기록 된 패킷 수 제한
iptables_log_limit = 50

# 파괴
iptables_log_burst = 10

# 로그 기록
iptables_log_drops = yes

# 로드 할 추가 iptables 모듈
# 각 모듈은 쉼표로 구분해야하며 모듈 매개 변수를 포함 할 수 있습니다
#iptables_modules = nf_conntrack_ftp, nf_nat_ftp, nf_conntrack_h323, nf_nat_h323, nf_conntrack_pptp, nf_nat_pptp, nf_conntrack_sip, nf_nat_sip

iptables_modules = ipt_MASQUERADE, ipt_CLUSTERIP, nf_nat_tftp, nf_nat_snmp_basic, nf_nat_sip, nf_nat_pptp, nf_nat_irc, nf_nat_h323, nf_nat_ftp, nf_nat_amanda, nf_conntrack_amanda, nf_conntrack_tftp, nf_conntrack_sip, nf_conntrack_proto_sctp, nf_conntrack_pptp, nf_conntrack_proto_gre, nf_conntrack_netlink, nf_conntrack_netbios_ns, nf_conntrack_irc, nf_conntrack_h323, nf_conntrack_ftp, xt_helper, xt_state, xt_connmark, xt_conntrack, iptable_nat, nf_nat, nf_conntrack_ipv4, nfnetlink_queue


# 라우터가 NAT를 사용하는 경우 소스 NAT를 사용하도록 설정.
nat_enabled = yes

# 외부에서 내부로 섹션을 표시하려면 다음을 주석 해제.
show_ext_to_int_rules = yes

# Nemoos 서비스에서 추가 한 규칙을 표시하려면 다음을 주석 해제
show_service_rules = yes

10 ips
# ips.conf - configuration file for nemoos-ips
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored
#
# IPS 인라인 방화벽 규칙 위치 설정
# 'behind'(default)로 설정되면 허용 된 입력 또는 전달 된 트래픽 만 분석한다.
#
# 'front'로 설정되면 모든 입력 및 전달 된 트래픽이 분석한다.
# 이 두 번째 옵션은 더 안전하지만 네트워크 트래픽이 많은 네트워크에서 CPU를 많이 사용합니다.
#
# 설정을 수정하면 다음 명령을 실행하여 적용해한다.
#
# $ sudo service nemoos ips restart
# $ sudo service nemoos firewall restart
# (잠금을 피하기 위해 IPS 모듈을 비활성화 및 활성화하는 것이 더 안전합니다)
#
# ips_fw_position = front|behind

11 network
# network.conf - nemoos-network 구성 파일.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored

# 인터페이스에서 무시할 인터페이스
# (default : sit, tun, tap, lo, irda, ppp, virbr, vboxnet, vnet)
ifaces_to_ignore = sit,tun,tap,lo,irda,ppp,virbr,vboxnet,vnet

# 인터페이스에 대한 사용자 정의 mtu를 정의하려면 mtu_ <interface> = <MTU>를 사용할 수 있습니다.
#mtu_eth0 = 1400

이더넷 MTU는 1500 바이트이므로 이더넷 프레임에 포함 할 수있는 가장 큰 IP 패킷 (또는 다른 페이로드)은 1500 바이트이다.
이더넷 헤더에 26 바이트를 추가하면 최대 프레임 (MTU와 동일하지 않음)이 1526 바이트가 됨.
넷기어 장비는 이더넷 헤더를 기본으로 잡는다. 그래서 1526으로 되어있음.

"MTU"라는 용어는 계층 3에서 패킷의 최대 크기만을 정의하기위한 것마은 아니다.
계층 2 MTU를 참조한다.
IP 패킷 (계층 3)의 길이는 IP 헤더에서 16 비트 총 길이 필드의 최대 값으로 제한된다.
IPv4의 경우 최대 페이로드 크기는 65515이다.(= 2^16 - 1 - 20 bytes header).

결국 dhclinet로 적용되는 외부 아이피는, 그 값을 dhcpd에서 주기 때문에. 수동으로 설정해줘야 한다.
처음 정보를 변경할 때는 수동으로 명령을 입력해줘야 한다.
dhcp 상위망 연동 때문에.

ip link show eth0
ip link set eth0 mtu 9000
ip link show eth0

만약 보안장비에서 dhcpd 설정시
템블릿 파일을 수정해 값을 변경할 수가 있다.

subnet 192.168.0.0 netmask 255.255.255.0 {
  option broadcast-address 192.168.0.255;
  option routers 192.168.0.1;
  option interface-mtu 9000; ---> 이 값으로 변경.
}

subnet.mas 파일 수정
option interface-mtu 9000; 추가.

12 openvpn
# openvpn.conf - configuration file for nemoos-openvpn
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored

# insecure_rip_conf [필수]. yes로 설정하면 안전하지 않은 ripd 구성을 사용한 nemoBox openVPN과의 하위 호환성을 활성화 한다.
# 확시하게 이해하지 못했으면 사용 않하는게 좋음.

insecure_rip_conf = no

# mssfix를 사용하여 UDP 연결이있는 일부 네트워크에서 MTU 검색 문제 해결 모든 VPN 클라이언트에 적용됩니다.
# 하고있는 일이 확실한 경우에만 활성화하십시오
# mss_fix = 1300

13 nemoos remote
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored
#
# 퍼블릭 DNS 서버
nemobox_services_nameserver = ns.cloud.nemoos.com

# 퍼블릭 API
rs_api = api.cloud.nemoos.com

# 클라우드 서버 확인
# 값 : yes | no
rs_verify_servers = yes
#
# 'yes'값으로 설정하면 Nemoos QA 업데이트의 우선 순위가 다른 패키지 소스의 우선 순위가 가장 낮으며 사용되지 않습니다.
# 이 값을 변경하면 다음 명령을 실행해야합니다.
#  sudo /usr/share/nemoos-software/rewrite-conf
# (Default: yes)
qa_updates_exclusive_source = yes

# Nemoos QA 업데이트를 사용하는 경우 'yes'값으로 설정하면 신뢰할 수있는 소스에서 시스템을 항상 업데이트하도록 자동으로 업데이트됩니다.
# 이 값을 변경하면 다음 명령을 실행해야합니다.
#  sudo service nemoos remoteservices restart
# (Default: yes)
qa_updates_always_automatic = yes

# 'yes'값으로 설정하면 모니터링 통계가 VPN을 사용하여 전송됩니다.
# 이 방법은 더 안전하지만 서비스가 중단되는 경향이 있습니다.
# 이 값을 변경하면 /etc/init.d/nemoos monitor restart를 실행하여 변경 사항을 적용하십시오.
# (Default: no)
monitoring_inside_vpn = no

14 samba
# samba.conf - configuration file for nemoos-samba
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored

# -- s4sync settings --
s4sync_debug = yes

# -- 파일 서버 --
# 사용할 파일 서버를 선택하십시오. samba4에 포함 된 새로운 'ntvfs'또는 samba3의 기존 's3fs'
# 'ntvfs'를 선택하면 휴지통, 감사 또는 바이러스 백신과 같은 프린터 및 vfs 플러그인이 작동하지 않습니다.

# values: ntvfs | s3fs
samba_fs = s3fs

# --휴지통 설정--

# 휴지통 디렉토리 이름 /tmp/foo와 같은 전체 경로를 입력하면 모든 공유에 동일한 휴지통이 사용됩니다.
repository = RecycleBin

# 휴지통 디렉토리의 권한
directory_mode = 0700

# 디렉토리 구조 유지
keeptree = Yes

# 파일이 두 번 이상 삭제 된 경우 사본 보관
versions = Yes

# 휴지통에서 디렉토리를 작성할 때 상위에서 NT ACL 상속
inherit_nt_acl = Yes

# 파일을 저장소로 옮길 때 파일의 액세스 날짜를 업데이트해야하는지 여부를 지정합니다.
#touch = Yes

#이 매개 변수로 지정된 바이트 수보다 작은 파일은 저장소에 저장되지 않습니다.
#minsize = 0

#이 매개 변수로 지정된 바이트 수보다 큰 파일은 휴지통에 저장되지 않습니다. (0 = 비활성화)
maxsize = 0

# 삭제시 저장하지 말고 정기적으로 삭제해야하는 파일 목록.
#exclude = *.tmp|*.temp

#이 디렉토리의 파일을 삭제하면 휴지통에 들어 가지 않고 정기적으로 삭제됩니다.
excludedir = /tmp|/var/tmp

# 버전 관리를 사용하지 않아야하는 경로 목록 (* 및?와 같은 와일드 카드가 지원됨)을 지정합니다.
# 버전이 활성화 된 경우에만 유용합니다.
#noversions = *.foo|*.bar

# -- 휴지통 설정 끝 --

# -- 안티바이러스 설정 --

# 소켓, 장치 및 fifo (모두 바이러스를 검사하지는 않음)가 사용자에게 표시되어야하는지 여부
show_special_files = True

# 사용자가 디렉토리를 제거하려고하면 보이지 않는 파일 (.scanned : files, .failed : files 및 .virus : files)을 삭제해야하는지 여부입니다.
# false이면 "디렉토리가 비어 있지 않습니다"라는 오류가 발생합니다.
rm_hidden_files_on_rmdir = True

# 스캔되지 않은 파일이 열리면 vfs 모듈은 스캔 데몬이 .scanned : 파일을 생성하기 위해 recheck_time_open 밀리 초 동안
# recheck_tries_open 시간을 기다립니다.
# 시간 (시도 * 시간) 내에 데몬이 스캔 한 작은 파일의 경우 동작은 온 액세스 검색과 같습니다.
recheck_time_open = 50

# recheck_time_open을 참조하십시오.
recheck_tries_open = 100

# 스캔되지 않은 파일에 대한 액세스를 허용합니다.
# 그러나 데몬에 .scanned : 파일과 같은 특수 파일이 통지됩니다. .virus : 파일 및 .failed : 파일이 나열되지 않습니다.
allow_nonscanned_files = True

# 파일 검사에 사용 된 스레드 수
scanning_threads = 4

# -- 바이러스 설정 끝 --

# UI에 텍스트 상자를 표시하여 도메인에 가입 할 때 서버를 추가 할 사이트를 선택하십시오
show_site_box = no

# ACL을 수동으로 설정하고 Nemoos가 덮어 쓰는 것을 피하려면 주석 처리를 제거하십시오
#unmanaged_acls = yes

# 전체 감사 로깅 비활성화
# Allowed values = [yes|no]
# Default value = no
# 전체 감사를 사용하지 않으려면 다음 옵션의 주석 처리를 제거하십시오.
#disable_fullaudit = yes

# Samba 4 버그에 대한 임시 해결 방법입니다.
#
#   https://bugzilla.samba.org/show_bug.cgi?id=9866
#   https://bugzilla.samba.org/show_bug.cgi?id=9867
#
# 게스트 공유가 활성화되어 있고 Windows Vista 컴퓨터를 도메인에 가입 시키려면 주석 처리를 제거하십시오.
# 유효한 도메인 자격 증명을 제공하지 않으면 최소한 익명으로 액세스 할 수는 있지만 가입 할 수는 없습니다.
#join_vista_with_guest_shares = yes

# 변경 사항을 저장하는 동안 사용자의 홈 디렉토리 설정을 건너 뛰려면 주석 처리를 제거하십시오
#unmanaged_home_directory = yes

15 proxy
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored
#
# cache_mem [required]. Amount of memory to be used by squid (in MB)
cache_mem = 128

# maximum_object_size [필수]. 캐시 할 최대 개체 크기 (MB)
maximum_object_size = 300

# max_fd이 값을 설정하면 porxy를 시작할 때 필요한 경우 최대 파일 설명자 수가 늘어납니다. 설정하지 않으면 변경되지 않습니다.
#max_fd= 167140

group = proxy

## 성능 조정 ##
# 정확하게 이해하지 못하면 손대지 않는게 좋습니다.

# DansGuardian 매개 변수
maxchildren = 120
minchildren = 8
minsparechildren = 4
preforkchildren = 6
maxsparechildren = 32
maxagechildren = 500

# 분류 된 목록에서 url 목록을로드합니다.
# url_regex ACL 유형을 사용하므로 메모리 및 CPU 소비로 인해 기본적으로 비활성화되어 있습니다.
#load_url_lists = yes

# TAG: 인증 모드

# key: auth_mode
#이 키는 porxy 인증 모드를 제어합니다.
# internal로 설정하면 proxy는 Nemoos 내부 LDAP에 대해 인증하고,
# external_ad로 설정하면 proxy는 외부 Active Directory에 대해 사용자를 인증합니다.
# values:
#   - internal
#   - external_ad (상용판에만 해당)
auth_mode = internal

# key: auth_ad_skip_system_groups
# 외부 Active Directory 인증을 사용하는 경우
# 'isSystemCriticalObject'속성이 설정된 그룹이있는 ACL을 허용하지 않습니다 (거의 모든 내장)
auth_ad_skip_system_groups = no

# key: auth_ad_acl_ttl
#   ACL 캐시 결과에 대한 TTL (초) (음수 및 양수).
auth_ad_acl_ttl = 3600
auth_ad_negative_acl_ttl = 30

16 traffic shaping
# trafficshaping.conf - configuration file for nemoos-trafficshaping
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored
#
# 보장 된 유효한 값 범위의 R2Q 값. 값은 다음과 같이 계산됩니다.
#
#    Maximum: 60000 * r2q * 8 / 1000
#    Minimum: MTU * r2q * 8 / 1000
#
# 자세한 내용 확인.: http://www.docum.org/docum.org/faq/cache/31.html

17 User Cornet
# usercorner.conf - nemoos-usercorner 구성 파일
#

# 사용자 코너 redis 서버 포트
redis_port_usercorner = 6381

18 Users
# users.conf - configuration file for nemoos-users
#
# 이 파일에는 가장 기본적인 설정이 포함된다.
# 대부분의 다른 항목의 웹 인터페이스를 사용하여 구성된다.
#
# 모든 공백은 무시된담.
#
# 구성 키는 다음과 같이 설정된다 :
#
# key = value
#
# 끝에 주석이 포함 될 수 있다.
# key = value # this is ignored
#
# 지원되는 암호 형식 : sha1, md5, lm, nt, digest (base64) 및 realm (hex)

# 사용자 홈을 만들지 여부
mk_home = yes

# 홈 디렉토리의 기본 모드 (umask 모드)
dir_umask = 0077

# 할당량 지원 활성화
enable_quota = yes

# LDAP 슬레이브와의 동기화 빈도
slave_time = 5

댓글 없음:

댓글 쓰기