이 페이지의 내용
예: Ubuntu에서 vSRX 가상 방화벽 설치 및 실행
이 예에서는 KVM을 사용하는 Ubuntu 서버에 vSRX 가상 방화벽 인스턴스를 설치하고 실행하는 방법을 보여줍니다.
요구 사항
이 예에서 사용되는 하드웨어 및 소프트웨어 구성 요소는 다음과 같습니다.
일반 x86 서버
vSRX 가상 방화벽용 Junos OS 릴리스 15.1X49-D20
Ubuntu 버전 14.04.2
시작하기 전에:
이 예제에서는 Ubuntu 서버 소프트웨어를 새로 설치한다고 가정합니다.
호스트 OS가 KVM의 vSRX 요구 사항에 지정된 요구 사항을 충족하는지 확인합니다.
개요
이 예에서는 Ubuntu 호스트 서버를 설정하고 vSRX 가상 방화벽 VM을 설치 및 실행하는 방법을 보여줍니다. 그림 1 은 Ubuntu 서버에 있는 vSRX 가상 방화벽 VM의 기본 구조를 보여줍니다.

이 예에서는 고정 IP 주소를 사용합니다. NFV 환경에서 vSRX 가상 방화벽 인스턴스를 구성하는 경우 DHCP를 사용해야 합니다.
빠른 구성 - Ubuntu에서 vSRX 가상 방화벽 VM 설치 및 시작
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경하고, 지정된 대로 명령을 복사하여 Ubuntu 서버 터미널 또는 vSRX 가상 방화벽 콘솔에 붙여넣습니다.
절차
단계별 절차
기본 가상 네트워크가 아직 없는 경우 다음 명령을 복사하고 Ubuntu 서버 터미널에 붙여넣어 기본 가상 네트워크를 만듭니다.
cat <<EOF> /etc/libvirt/qemu/networks/default.xml <network> <name>default</name> <forward mode='nat'/> <nat> <port start ='1024' end='65535' /> </nat> <bridge name='virbr0' stp='on' delay='0' /> <ip address='192.168.2.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.2.2' end='192.168.2.254' /> </dhcp> </ip> </network> EOF virsh net-define /etc/libvirt/qemu/networks/default.xml virsh net-start default virsh net-autostart default
Ubuntu 서버에서 왼쪽 또는 신뢰할 수 있는 가상 네트워크를 만듭니다.
cat <<EOF> /etc/libvirt/qemu/networks/testleftnetwork.xml <network> <name>TestLeft</name> <forward mode='route'/> <bridge name='virbr1' stp='on' delay='0' /> <ip address='192.168.123.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.123.100' end='192.168.123.250' /> </dhcp> </ip> </network> EOF virsh net-define /etc/libvirt/qemu/networks/testleftnetwork.xml virsh net-start TestLeft virsh net-autostart TestLeft
Ubuntu 서버에서 올바른 가상 네트워크 또는 신뢰할 수 없는 가상 네트워크를 만듭니다.
cat <<EOF > /etc/libvirt/qemu/networks/testrightnetwork.xml <network> <name>TestRight</name> <forward mode='nat'/> <nat> <port start ='1024' end='65535' /> </nat> <bridge name='virbr2' stp='on' delay='0' /> <ip address='192.168.124.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.124.100' end='192.168.124.250' /> </dhcp> </ip> </network> EOF virsh net-define /etc/libvirt/qemu/networks/testrightnetwork.xml virsh net-start TestRight virsh net-autostart TestRight
-
주니퍼 네트웍스 웹 사이트( 주니퍼 네트웍스 웹 사이트)에서 vSRX 가상 방화벽 KVM 이미지를 다운로드하십시오.
-
다음 명령을 복사하고 Ubuntu 서버 CPU와
cpu
일치하도록 매개 변수 및 플래그를 수정합니다. 결과 명령을 Ubuntu 서버 터미널에 붙여넣어 이미지를 마운트 지점에 복사하고 vSRX 가상 방화벽 VM을 생성합니다.cp junos-vsrx-vmdisk-15.1X49-D20.2.qcow2 /mnt/vsrx20one.qcow2 virt-install --name vSRX20One --ram 4096 --cpu SandyBridge,+vmx,-invtsc, --vcpus=2 --arch=x86_64 --disk path=/mnt/vsrx20one.qcow2,size=16,device=disk,bus=ide,format=qcow2 --os-type linux --os-variant rhel7 --import --network=network:default,model=virtio --network=network:TestLeft,model=virtio --network=network:TestRight,model=virtio
메모:명령의
virt-install
CPU 모델 및 플래그는 Ubuntu 서버의 CPU 및 기능에 따라 달라질 수 있습니다. -
vSRX 가상 방화벽 VM에서 루트 암호를 설정하려면 계층 수준에서 명령을 복사하여 vSRX 가상 방화벽 CLI에 붙여넣습니다
[edit]
.set system root-authentication plain-text-password
-
vSRX 가상 방화벽 VM에서 기본 구성을 생성하려면 다음 명령을 복사하여 텍스트 파일에 붙여 넣고, 줄 바꿈을 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 정보를 변경하고, 계층 수준에서 다음 명령을 복사하여 vSRX 가상 방화벽 CLI
[edit]
에 붙여넣은 다음 구성 모드에서 을 입력합니다commit
.set interfaces fxp0 unit 0 family inet dhcp-client set interfaces ge-0/0/0 unit 0 family inet address 192.168.123.254/24 set interfaces ge-0/0/1 unit 0 family inet dhcp-client set security zones security-zone trust interfaces ge-0/0/0.0 host-inbound-traffic system-services all set security zones security-zone untrust interfaces ge-0/0/1.0 host-inbound-traffic system-services dhcp set routing-instances CUSTOMER-VR instance-type virtual-router set routing-instances CUSTOMER-VR interface ge-0/0/0.0 set routing-instances CUSTOMER-VR interface ge-0/0/1.0 set security nat source rule-set source-nat from zone trust set security nat source rule-set source-nat to zone untrust set security nat source rule-set source-nat rule nat1 match source-address 0.0.0.0/0 set security nat source rule-set source-nat rule nat1 then source-nat interface
단계별 절차
단계별 구성
vSRX 가상 방화벽 VM을 설치하고 실행하기 위한 자세한 절차는 다음 섹션을 참조하십시오.
- 가상 네트워크 추가
- 가상 네트워크 확인
- vSRX 가상 방화벽 이미지 다운로드 및 설치
- vSRX 가상 방화벽 설치 확인
- vSRX 가상 방화벽 인스턴스에서 기본 구성 생성
- vSRX 가상 방화벽 인스턴스에서 기본 구성 확인
가상 네트워크 추가
단계별 절차
vSRX 가상 방화벽 VM의 인터페이스에 네트워크 연결을 제공하려면 Ubuntu 서버에 가상 네트워크를 생성해야 합니다. 이 명령을 복사하여 Ubuntu 서버의 터미널에 붙여넣습니다.
이 예제에서는 세 가지 가상 네트워크를 사용합니다.
default— fxp0 관리 인터페이스를 연결합니다.
메모:기본 가상 네트워크는 Ubuntu 서버에 이미 있어야 합니다.
virsh net-list
명령을 사용하여 기본 네트워크가 존재하고 활성 상태인지 확인합니다.TestLeft— ge-0/0/0 인터페이스를 신뢰할 수 있는 영역에 연결합니다.
TestRight— ge-0/0/1 인터페이스를 신뢰할 수 없는 영역에 연결합니다.
기본 네트워크가 없는 경우 다음과 같이 하십시오.
단계별 절차
Ubuntu 서버에서 텍스트 편집기를 열고 기본 네트워크 XML(default.xml) 파일을 만듭니다.
emacs /etc/libvirt/qemu/networks/default.xml
전달 모드를 로
nat
설정하고, IP 주소 및 서브넷 마스크와 브리지 인터페이스를 구성하고, 이 가상 네트워크의 인터페이스에 IP 주소를 할당하도록 DHCP를 구성합니다.메모:libvirt에서 지정한 XML 형식을 사용합니다.
<network> <name>default</name> <forward mode='nat'/> <nat> <port start ='1024' end='65535' /> </nat> <bridge name='virbr0' stp='on' delay='0' /> <ip address='192.168.2.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.2.2' end='192.168.2.254' /> </dhcp> </ip> </network>
만든 default.xml 파일을 기반으로 기본 가상 네트워크를 정의하고 시작합니다.
virsh net-define /etc/libvirt/qemu/networks/default.xml virsh net-start default virsh net-autostart default
이전에 구성된 TestLeft 가상 네트워크를 제거합니다.
virsh net-destroy TestLeft virsh net-undefine TestLeft
이전에 구성된 TestRight 가상 네트워크를 제거합니다.
virsh net-destroy TestRight virsh net-undefine TestRight
Ubuntu 서버에서 텍스트 편집기를 열고 TestLeft 네트워크 XML(testleftnetwork.xml) 파일을 만듭니다.
emacs /etc/libvirt/qemu/networks/testleftnetwork.xml
전달 모드를 로
route
설정하고, IP 주소 및 서브넷 마스크와 브리지 인터페이스를 구성하고, 이 가상 네트워크의 인터페이스에 IP 주소를 할당하도록 DHCP를 구성합니다.메모:libvirt에서 지정한 XML 형식을 사용합니다.
<network> <name>TestLeft</name> <forward mode='route'/> <bridge name='virbr1' stp='on' delay='0' /> <ip address='192.168.123.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.123.100' end='192.168.123.250' /> </dhcp> </ip> </network>
Ubuntu 서버에서 텍스트 편집기를 열고 TestRight testrightnetwork.xml(네트워크 XML) 파일을 만듭니다.
emacs /etc/libvirt/qemu/networks/testrightnetwork.xml
전달 모드를 로
nat
설정하고, IP 주소 및 서브넷 마스크와 브리지 인터페이스를 구성하고, 이 가상 네트워크의 인터페이스에 IP 주소를 할당하도록 DHCP를 구성합니다.메모:libvirt에서 지정한 XML 형식을 사용합니다.
<network> <name>TestRight</name> <forward mode='nat'/> <nat> <port start ='1024' end='65535' /> </nat> <bridge name='virbr2' stp='on' delay='0' /> <ip address='192.168.124.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.124.100' end='192.168.124.250' /> </dhcp> </ip> </network>
만든 testleftnetwork.xml 파일을 기반으로 TestLeft 가상 네트워크를 정의하고 시작합니다.
virsh net-define /etc/libvirt/qemu/networks/testleftnetwork.xml virsh net-start TestLeft virsh net-autostart TestLeft
만든 testrightnetwork.xml 파일을 기반으로 TestRight 가상 네트워크를 정의하고 시작합니다.
virsh net-define /etc/libvirt/qemu/networks/testrightnetwork.xml virsh net-start TestRight virsh net-autostart TestRight
가상 네트워크 확인
목적
Ubuntu 서버에서 새 가상 네트워크 구성을 확인합니다.
행동
virsh net-list
Ubuntu 서버에서 명령을 사용하여 새 가상 인터페이스가 활성 상태이고 재부팅 시 자동 시작되도록 설정되어 있는지 확인합니다.
virsh net-list
Name State Autostart Persistent ---------------------------------------------------------- default active yes yes TestLeft active yes yes TestRight active yes yes
vSRX 가상 방화벽 이미지 다운로드 및 설치
단계별 절차
Ubuntu 서버에 vSRX 가상 방화벽 이미지를 다운로드하고 설치하려면:
-
주니퍼 네트웍스 웹 사이트에서 vSRX 가상 방화벽 KVM 이미지를 다운로드합니다. https://www.juniper.net/support/downloads/?p=vsrx#sw
-
vSRX 가상 방화벽 이미지를 적절한 마운트 지점에 복사합니다.
hostOS# cp junos-vsrx-vmdisk-15.1X49-D20.2.qcow2 /mnt/vsrx20one.qcow2
-
virt-install
명령을 사용하여 vSRX 가상 방화벽 VM을 생성합니다. Ubuntu 서버 CPU와cpu
일치하도록 매개 변수와 플래그를 수정합니다.hostOS# virt-install --name vSRX20One --ram 4096 --cpu SandyBridge,+vmx,-invtsc, --vcpus=2 --arch=x86_64 --disk path=/mnt/vsrx20one.qcow2,size=16,device=disk,bus=ide,format=qcow2 --os-type linux --os-variant rhel7 --import --network=network:default,model=virtio --network=network:TestLeft,model=virtio --network=network:TestRight,model=virtio
메모:명령의
virt-install
CPU 모델 및 플래그는 Ubuntu 서버의 CPU 및 기능에 따라 달라질 수 있습니다.
vSRX 가상 방화벽 설치 확인
목적
vSRX 가상 방화벽 설치를 확인합니다.
행동
-
virsh console
Ubuntu 서버에서 명령을 사용하여 vSRX 가상 방화벽 콘솔에 액세스하고 설치 진행 상황을 확인합니다. 설치를 완료하는 데 몇 분 정도 걸릴 수 있습니다.hostOS# virsh console vSRx200ne
Starting install... ERROR internal error: process exited while connecting to monitor: libust[11994/11994]: Warning: HOME environment variable not set. Disabling LTTng-UST per-user tracing. (in setup_local_apps() at lttng-ust-comm.c:305) libust[11994/11995]: Error: Error opening shm /lttng-ust-wait-5 (in get_wait_shm() at lttng-ust-comm.c:886) libust[11994/11995]: Error: Error opening shm /lttng-ust-wait-5 (in get_wait_shm() at lttng-ust-comm.c:886) Booting `Juniper Linux' Loading Linux ... Consoles: serial port BIOS drive C: is disk0 BIOS drive D: is disk1 BIOS drive E: is disk2 BIOS drive F: is disk3 BIOS 639kB/999416kB available memory FreeBSD/i386 bootstrap loader, Revision 1.2 (builder@example.com, Thu Jul 30 23:20:10 UTC 2015) Loading /boot/defaults/loader.conf /kernel text=0xa3a2c0 data=0x6219c+0x11f8e0 syms=[0x4+0xb2ed0+0x4+0x1061bb] /boot/modules/libmbpool.ko text=0xce8 data=0x114 /boot/modules/if_em_vsrx.ko text=0x184c4 data=0x7fc+0x20 /boot/modules/virtio.ko text=0x2168 data=0x208 syms=[0x4+0x7e0+0x4+0x972] /boot/modules/virtio_pci.ko text=0x2de8 data=0x200+0x8 syms=[0x4+0x8f0+0x4+0xb22] /boot/modules/virtio_blk.ko text=0x299c data=0x1dc+0xc syms=[0x4+0x960+0x4+0xa0f] /boot/modules/if_vtnet.ko text=0x5ff0 data=0x360+0x10 syms=[0x4+0xdf0+0x4+0xf19] /boot/modules/pci_hgcomm.ko text=0x12fc data=0x1a4+0x44 syms=[0x4+0x560+0x4+0x61d] /boot/modules/chassis.ko text=0x9bc data=0x1d0+0x10 syms=[0x4+0x390+0x4+0x399] Hit [Enter] to boot immediately, or space bar for command prompt. Booting [/kernel]... platform_early_bootinit: Early Boot Initialization GDB: debug ports: sio GDB: current port: sio KDB: debugger backends: ddb gdb KDB: current backend: ddb Copyright (c) 1996-2015, Juniper Networks, Inc. All rights reserved. Copyright (c) 1992-2007 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. JUNOS 15.1X49-D15.4 #0: 2015-07-31 02:20:21 UTC <output omitted> The machine id is empty. Cleaning up ... Thu Aug 27 12:06:22 UTC 2015 Aug 27 12:06:22 init: exec_command: /usr/sbin/dhcpd (PID 1422) started Aug 27 12:06:22 init: dhcp (PID 1422) started Aug 27 12:06:23 init: exec_command: /usr/sbin/pppd (PID 1428) started Amnesiac (ttyd0) login:
-
vSRX 가상 방화벽 콘솔에 로그인하고 설치된 vSRX 가상 방화벽 버전을 확인합니다.
login: root
--- JUNOS 15.1X49-D15.4 built 2015-07-31 02:20:21 UTC root@%
root@% cli
root>
root> show version
Model: vSRX Junos: 15.1X49-D15.4 JUNOS Software Release [15.1X49-D15.4]
vSRX 가상 방화벽 인스턴스에서 기본 구성 생성
단계별 절차
vSRX 가상 방화벽 인스턴스에서 기본 설정을 구성하려면 모드에서 다음 단계를 edit
입력합니다.
루트 암호를 만듭니다.
[edit] set system root-authentication plain-text-password
관리 인터페이스에 대한 IP 주소 패밀리를 설정하고 이 인터페이스에 대해 DHCP 클라이언트를 활성화합니다.
set interfaces fxp0 unit 0 family inet dhcp-client
ge-0/0/0.0 인터페이스의 IP 주소를 설정합니다.
set interfaces ge-0/0/0 unit 0 family inet address 192.168.123.254/24
ge-0/0/1.0 인터페이스에 대한 IP 주소 패밀리를 설정하고 이 인터페이스에 대해 DHCP 클라이언트를 활성화합니다.
set interfaces ge-0/0/1 unit 0 family inet dhcp-client
ge-0/0/0.0 인터페이스를 트러스트 보안 영역에 추가하고 해당 인터페이스의 인바운드 트래픽에서 모든 시스템 서비스를 허용합니다.
set security zones security-zone trust interfaces ge-0/0/0.0 host-inbound-traffic system-services all
신뢰할 수 없는 보안 영역에 ge-0/0/1.0 인터페이스를 추가하고 해당 인터페이스의 인바운드 트래픽에서 DHCP 시스템 서비스만 허용합니다.
set security zones security-zone untrust interfaces ge-0/0/1.0 host-inbound-traffic system-services dhcp
가상 라우터 라우팅 인스턴스를 생성하고 해당 라우팅 인스턴스에 두 인터페이스를 추가합니다.
set routing-instances CUSTOMER-VR instance-type virtual-router set routing-instances CUSTOMER-VR interface ge-0/0/0.0 set routing-instances CUSTOMER-VR interface ge-0/0/1.0
소스 NAT 규칙 세트를 생성합니다.
set security nat source rule-set source-nat from zone trust set security nat source rule-set source-nat to zone untrust
패킷을 일치시키고 소스 주소를 송신 인터페이스의 주소로 변환하는 규칙을 구성합니다.
set security nat source rule-set source-nat rule nat1 match source-address 0.0.0.0/0 set security nat source rule-set source-nat rule nat1 then source-nat interface
결과
구성 모드에서 명령을 입력하여 show interfaces
구성을 확인합니다. 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.
show interfaces
구성 모드에서 명령을 입력하여 show security policies
보안 정책을 확인합니다. 출력에 의도한 구성이 표시되지 않으면 이 예의 지침을 반복하여 구성을 수정하십시오.
show security policies
from-zone trust to-zone trust { policy default-permit { match { source-address any; destination-address any; application any; } then { permit; } } } from-zone trust to-zone untrust { policy default-permit { match { source-address any; destination-address any; application any; } then { permit; } } } from-zone untrust to-zone trust { policy default-deny { match { source-address any; destination-address any; application any; } then { deny; } } }
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다 commit
.
마지막 단계로 구성 모드를 종료하고 명령을 사용하여 request system reboot
vSRX 가상 방화벽 VM을 재부팅합니다. 재부팅 후 Ubuntu 서버에서 명령을 사용하여 virsh console
vSRX 가상 방화벽에 다시 연결할 수 있습니다.
vSRX 가상 방화벽 인스턴스에서 기본 구성 확인
목적
vSRX 가상 방화벽 인스턴스에서 기본 구성을 확인합니다.
행동
ge-0/0/0.0 인터페이스에 TestLeft 네트워크 DHCP 주소 범위에서 할당된 IP 주소가 있는지, ge-0/0/1.0에 TestRight 네트워크 DHCP 주소 범위에서 할당된 IP 주소가 있는지 확인합니다.
root> show interfaces terse
Interface Admin Link Proto Local Remote ge-0/0/0 up up ge-0/0/0.0 up up inet 192.168.123.254/24 gr-0/0/0 up up ip-0/0/0 up up lsq-0/0/0 up up lt-0/0/0 up up mt-0/0/0 up up sp-0/0/0 up up sp-0/0/0.0 up up inet inet6 sp-0/0/0.16383 up up inet ge-0/0/1 up up ge-0/0/1.0 up up inet 192.168.124.238/24 dsc up up em0 up up em0.0 up up inet 128.0.0.1/2 em1 up up em1.32768 up up inet 192.168.1.2/24 em2 up up fxp0 up up fxp0.0 up up inet 192.168.2.1/24 ipip up up irb up up lo0 up up lo0.16384 up up inet 127.0.0.1 --> 0/0 lo0.16385 up up inet 10.0.0.1 --> 0/0 10.0.0.16 --> 0/0 128.0.0.1 --> 0/0 128.0.0.4 --> 0/0 128.0.1.16 --> 0/0 lo0.32768 up up lsi up up mtun up up pimd up up pime up up pp0 up up ppd0 up up ppe0 up up st0 up up tap up up vlan up down