2019/12/09

보안장비 6.0
가상 머신 관리자.
================
KVM 스위치(입력, 출력, 디바이스를 공유하는 스위치)와 혼동하면 안된다.

단어 용약 정리.
1. 하이퍼바어저
hypervisor는 호스트 컴퓨터에서 다수의 운영 체제(operating system)를 동시에 실행하기 위한 논리적 플랫폼(platform)을 말한다.

하나의 컴퓨터 시스템에서 여러 개의 운영 체계(OS)를 가동할 수 있게 하는 가상화 엔진.
하이퍼바이저 방식에는 물리 컴퓨터의 하드웨어상에서 하이퍼바이저를 직접 동작시키는 네이티브(native) 또는 베어메탈(bare-metal) 방식이 있고,
호스트 OS 위에 하이퍼바이저를 설치하고 그 위에서 게스트 OS를 동작시키는 호스트형이 있다.

2. 라이센스
GPL 코드를 일부라도 사용하게 되면 그 프로그램은 GPL이 된다.
유료 판매는 가능하나, 코드를 공개해야 한다.

GPL 코드를 사용한 SW는 내부적인(개인, 기관, 단체 등)목적으로 사용시 소스코드 공개할 필요능 없다.
외부에 공개 할 때는 전체 소스를 공개해야 함.(유료, 무료)

프로그램의 특정 부분이 GPL 코드로 부터 패생된 것이 아닌 독립적인 저작물일 경우에는 독립 저작물 모듈의 개별적인 배포에는 GPL 적용되지 않는다.
(즉, 코드를 공개할 필요가 없다)
코드를 공개 할 때는 GPL을  따라서 전체코드 공개.

GPL과 관련디지 아니한 부분만 독립적으로 판매, 배포하는 경우는 관계 없다.
GPL 코드를 일부라도 사용한 프로그램 전체를 배포할 때에는 GPL을 적용(전체코드 공개)해야 한다.

GNU LGPL(Lesser General Public License)
LGPL 코드를 정적(static) 또는 동적(dynamic) 라이브러리로 사용한 프로그램을 개발하여 판매/배포할 경우에 프로그램의 소스코드를 공개하지 않아도 된다
LGPL 코드를 사용했음을 명시만 하면됨.

LGPL 코드를 단순히 이용하는 것이 아니라 이를 수정한 또는 이로부터 파생된 라이브러리를 개발하여 배포하는 경우에는 전체 코드를 공개

BSD (Berkeley Software Distribution) License
소스코드 공개의 의무가 없으며 상용(상업적) 소프트웨어에서도 무제한 사용 가능한 라이센스
OpenCV는 BSD 라이센스.

MIT License
MIT license는 copyright와 license에 대한 정보만 표기하면 자유롭게 사용할 수 있는 라이센스인데, 상업적인사용, 배포, 수정 및 개인적인 사용이 모두 가능.

3. 커널 가성 머신
Kernel-base Virtual Machine, KVM은 리눅스 커널 하이퍼바이저로 변환하기 위한 가상화 인프라스트럭처의(기반 구조)의 하나이다.
2007년 2월 5일에 출시된 커널 버전 2.6.20의 리눅스 커널 메인라인에 병합되었다.
KVM은 하드웨어 가상화 확장을 갖춘 프로세서가 필요하다.
KVM은 적재 가능한 커널 모듈의 형태로 FreeBSD, 알루모스에도 포팅되었음.

3.1 라이선스
KVM의 일부는 다양한 GNU 라이선스로 구성되어 있다:[5]

KVM 커널 모듈: GPL v2
KVM 사용자 모듈: LGPL v2
QEMU 가상 CPU 코어 라이브러리 (libqemu.a) 및 QEMU PC 시스템 에뮬레이터: LGPL
리눅스 사용자 모드 QEMU 에뮬레이터: GPL
BIOS 파일 (bios.bin, vgabios.bin, vgabios-cirrus.bin): LGPL v2 이상

3.2 Feautres(특징)
- Over-committing : 시스템에서 사용 가능한 리소스보다 더 많은 가상화 된 CPU 또는 메모리를 할당하는 것을 의미
- Thin provisioning : 유연한 스토리지를 할당하고 모든 게스트 가상 머신에 사용 가능한 공간을 최적화
- Disk I/O throttling : 가상 시스템에서 호스트 시스템으로 전송되는 디스크 I / O 요청에 대한 제한을 설정하는 기능을 제공
- Automatic NUMA balancing : NUMA 하드웨어 시스템에서 실행되는 응용 프로그램의 성능을 향상
- Virtual CPU hot add capability : 실행중인 가상 머신에서 필요에 따라 처리 능력을 향상 시킨다.

interl 하드웨어 가상화 확장 체크
grep -e 'vmx' /proc/cpuinfo

amd 하드웨어 가상화 확장 체크
grep -e 'svm' /proc/cpuinfo

메세지가 없으면 BIOS 가상화 체크 확인.
kvm 모듈 사용 체크(기본적 로드 됨)

4. 보안장비 가상 머신.
사용자 추가 해 줘야 함. (AD)
그래야 schema object present가 동작한다.

4.1 가상 머신 생성
4.1.1 가상 머신 생성 테이블
4.2 설정
4.2.1 운영체제 선택
4.2.2 32bit, 64bit
4.3.3 RAM
- 기본값 512MB

4.2 가상머신 네트워크 설정
4.3 가상머신 하드웨어 설정
- cd/dvd
- hard Disk

4.4 가상 머신 디렉토리 경로
/var/lib/fairline/machines/test

4.5 vpn 인증서
보안장비 관리자 웹 인터페이스
클라이언트 인증 속성 파일 VPN/Servers/Configuration 위치.

비 활성화 하면 보안장비에서 생성 한 인증서를 가진 모든 클라이언트는 연결할 수 있다.
활성화 하면 CN 에서 선택한 인증서 내용으로 연결 할 수 있다.

이 필드를 비활성화로 설정하면 보안장비에서 발급한 인증서를 사용해 OpenVPN 클라이언트와 연결된다.

재현 하기.
보안장비 로그인 및 VPN 모듈 활성화.

VPN 로깅 사용 가능한지 확인.

인증기관 -> 일반 이동 -> 새 인증서 발생.
SomeExamplePrefix

또다른 인증서 발생.
SomeExamplePrefixForSomeClient

VPN -> Server 이동
보안장비 하위 네트워크를 알리는 단일 서버 구성.
서버의 구성에서 일반 이름으로 클라이언트 권한 부여 후 SomeExamplePrefixForSomeClient 인증서 선택.
(다른 필드에 값들은 필요에 따라 설정한다)

SomeExamplePrefixForSomeClient를 클라이언트의 인증서로 사용하여 클라이언트 번들 다운로드 한다.
(다른 필드에 값들은 필요에 따라 설정한다)

클라이언트 OpenVPN을 설치하고 다운로드 한 클라이언트 번들을 사용해 보안장비 관리하는 네트워크 말고 다른 네트워크 망에서 연결한다.

연결할 수 없음.
보안장비 보고서 (VPN 로그)를 확인.
인증서 공통 이름이 인증되지 않음.
(참고: 현 테스트 국가 코드 C=US로 원격 인증서를 식별, 보안장비에서 잘못된 속성을 보고 할 수 있음.)

VPN -> 서버 -> 구성으로 이동
일반 이름 인증서로 클라이언트 권한 부여 사용 안함 변경.

클라이언트에서 VPN 연결 하면 성공된다.
보안장비의 인증서 값 SomeExamplePrefixForSomeClient 성공적 연결 확인.

예상.
CN(공통 이름) 필드가 인증서에서 지정된 클라이언트 권한 부여의 CN 필드로 시작하는 클라이언트 인증서를 사용하는 VPN 연결,
(이 인증서는 CN의 보안장비 관리 인증 기관에 의해 발행되고 최소되지 않음) 수락해야 한다.

다른 모든 클라이언트 인증서는 거부해야 한다.

4.6 vpn CRL 30일 만료.
openssl crl -text -noout -in /var/lib/fairline/CA/crl/latest.pem
두 개의 필드가 구체적으로 표시된다.
마지막 업데이트 Last Update : xxx
다음 업데이트 Next Update : xxx + 1 개월

CRL 기본 시간 변경.
/var/lib/fairline/conf/openssl.cnf
default_crl_days= 3650

4.7 FBox::Module::LDAP::_sendSchemaUpdate - Error sending schema update
sudo find /usr/share -iname schema*.ldif -exec ls -l {} \;

4.8 ldap 초기화.
- fairline-mail schemas
sudo -s # this will prompt your for password to get superuser access
/usr/share/fairline-mail/mail-ldap update
perl -MFBox -MFBox::Global -e'FBox::init(); $mod = FBox::Global->modInstance('mail'); $mod->reprovisionLDAP(); 1'
fs webadmin restart
exit # exit superuser account

- fairline-mailfilter:
sudo -s # this will prompt your for password to get superuser access
perl -MFBox -MFBox::Global -e'FBox::init(); $mod = FBox::Global->modInstance('mailfilter'); $mod->reprovisionLDAP(); 1'
fs webadmin restart
exit # exit superuser account
Can't locate object method "_ldapSetup" via package "FBox::MailFilter" at /usr/share/perl5/FBox/MailFilter.pm line 209.

4.9 스키마 오류
유효하지 않은 필터를 사용한 검색 또는 스키마 수정 요청 일 수 있으며 주어진 스키마에 잘못된 구문이 있습니다.

20191206 --- 여기서 가상화 안정화 부분 연구 대기 상태.
- 필요한 모듈만 화상화 해 놓은 상태임.
- 생성된 가상화 파일 삭제.
- 현재 가상 머신 모듈과 LDAP 통신 문제 발생(이 부분 나중 해결 하기로 나겨 둠)
- 지금 해야 할 부분을 하기 위해(NVR 작업)

5. 가상 머신 유지 관리.
VNC 프로토콜 사용
- 터미널 접근 팝업창 생성.

보안장비 GUI
시작 멈춤
가상 머신 시작, 중지, 일시 정지 제어 가능

6. vmware tools
6.1 open vm tools 설치
sudo apt-get install open-vm-tools

가상 머신 브릿지 네트워크 만들기.
network -> Network Interface
eth0 -> 브리지 설정 후 -> br1 설정
br1 DHCP

Virual Machines -> dm-experiments(가상머신 이름) -> Network Settings
체크 : Enabled
Type: Bridged
Bridged to : Nome
MAC Address: 00:!F:0A:F4:19:88

해결 방법.
https://wiki.libvirt.org/page/Networking#Debian.2FUbuntu_Bridging

manage.sh 인터페이스 세션 편집
<interface type='bridge'>
        <source bridge='br1'/>
        <mac address='00:1F:0A:F4:19:88'/>
</interface>

cd /var/lib/fairline/machines/dm-experiments
vi /var/lib/fairline/machines/dm-experiments/domain.xml
#change interface section
./manage.sh edit
웹 UI를 변경하면 다시 설정

젠트라 설치 및 vm 자료
https://sourceforge.net/projects/zentyal/files/Old%20versions/
계정 및 패스워드 : zentyal/zentyal

zip 압축 해제 후, .vdi .vmdk 이미지 파일로 가상머신을 만들어야 한다.

댓글 1개:

  1. Harrah's Lake Tahoe Casino & Hotel - MapYRO
    MapYRO® South Tahoe Casino 부산광역 출장샵 & Hotel is 강릉 출장안마 a 바카라 안전 사이트 50,000 square foot casino, hotel, casino, hotel and conference 제주 출장샵 facility 아산 출장안마 located in Stateline, Nevada.

    답글삭제