Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download ""

Transcription

1 System monitoring Documentation Release 01 Youngmin Kim September 17, 2014

2

3 Contents 1 서론 3 2 시리얼 케이블을 이용한 원격시스템 접속 5 3 원격시스템 BIOS(+GRUB) 설정 31 자동 power on 32 키보드 연결 없이 부팅하기 33 GRUB 설정 변경 원격시스템을 위한 무선이동통신 41 에그 타입 42 USB 타입 43 MINI PCI-E 타입 서버에서 원격시스템 접근 51 reverse ssh 터널 생성 52 자동 ssh 로그인 53 연결 유지용 스크립트 modbus 61 modbus 소개 62 libmodbus 63 pymodbus 로그 (syslog) 71 syslog 출력의 예 72 log level 73 쉘 명령어로 syslog 출력하기 74 hostname 설정 75 C 코드에서 syslog 출력하기 76 logrotate로 최신 로그만 남기기 77 Centralized logging nagios 81 nagios 설치 82 nagios core에 대한 간단한 소개 83 nagios 설정 84 notification i

4 9 Visualization rrd d3js jarmon 61 ii

5 System monitoring Documentation, Release 01 최초작성일 : 2013 년 11 월 25 일 김영민 (https://githubcom/ymkim92/system_monitoring) 목차 : Contents 1

6 System monitoring Documentation, Release 01 2 Contents

7 CHAPTER 1 서론 원격시스템 모니터링은 전자장비들의 수가 늘어나고 그들의 관리가 필요해지기 시작한 시점부터 수요가 발생하 였다 전자장비들의 크기는 작아지고, 가격은 낮아지고 있기 때문에 더 많은 곳에 설치되고 더 많은 데이터들을 수집하여 원격지에 위치한 서버로 전달한다 기상 정보를 예로 들어 설명하자 요즘도 군에서는 백엽상의 온도를 보고 손으로 이 값을 기록하는지는 모르겠 으나, 적어도 필자가 근무하던 시절에는 그렇게 했었다 하지만, 기상청에서는 좀 다르게 기상정보를 수집한다 1986년 아시안 게임과 1988년 올림픽 게임에 필요한 기상정보를 제공하기 위해 경기장에 최초로 자동기상관측장 비를 설치하였다 하지만, 이 시점에는 우리가 생각하는 중앙 집중형 관리시스템이 존재하지는 않았다 1996년에 들어서야 전국단위로 1분마다 정보를 수집하여 센터에서 통합정보를 볼 수 있는 기상 연속관리시스템이 구축되 었다 (http://webkmagokr/kma15/2004/contents/200403_05htm) 요즘은 동단위로 예보를 하는 시대이니, 어디에 있는지는 잘 모르겠지만, 동마다 이런 관측장비가 다 설치되어 있다고 봐야 할 것이다 아래 그림은 기상정보를 수집하는 과정이다 기본적으로 네트워크에 연결되어 있을 수 밖에 없는 기지국, 라우터와 같은 통신 장비들은 snmp 프로토콜을 이용 3

8 System monitoring Documentation, Release 01 하여 초창기부터 원격관리가 가능하였다 snmp의 탄생적 특성상 주로 데이터의 입출력량을 모니터링할 수 있으며, UPS등의 전력시스템을 위한 전력 관련 정보들도 수집할 수 있다 NMS (Network Management System)는 snmp를 기본으로 통신장비들의 상황을 모니터링하고 제어할 수 있는 네트워크 통합 관리 시스템이다 최근에 클라우드 서비스가 각광 받으면서 이 분야의 중요성도 부각되고 있다 공장 자동화 분야에서도 본 글에서 논하고자하는 원격 시스템 모니터링이 사용된다 SCADA 시스템이라고 많이 불리는 이 시스템에서는 modbus, profibus 등의 단순한 프로토콜을 이용한다 이 프로토콜들은 주로 근거리 통신을 위한 규격이지만, 원격으로 데이터를 전송할 때는 TCP/IP 상에 데이터를 실어 보내는 방법들을 제공한다 이상에서 우리가 흔히 알고 있는 컴퓨터 급의 장비들을 관리하기 위한 snmp와 좀더 단순한 공장 자동화 장비들을 모니터링하고 제어하기 위한 modbus, profibus 프로토콜들이 사용되고 있는 것을 간단히 설명하였다 본 글에서는 범용 컴퓨터 급이 아닌 센서 등의 단순한 컴퓨터들에서 수집되는 정보들을 어떻게 서버로 전달하고 이렇게 서버에 모아진 정보들을 운영자에게 보여줄 것인지를 설명하고자 한다 특히 최근에 화두가 되고 있는 big data, Internet of Things, M2M 등에서도 이러한 내용들이 유용하게 활용될 수 있을 것으로 생각한다 또한 본 글에서는 ubuntu 리눅스를 기반으로 한 소프트웨어적인 측면만을 다룬다 이 글에서 언급하고자 하는 원격 시스템이란 유선통신 연결이 매우 어려운 지역에서 상용이동통신망을 이용하여 서버와 통신하는 장비를 의미한다 원격시스템은 스스로 센서를 가지고 있을 수도 있으며, 근거리에서 시리얼 통 신을 이용하여 데이터를 수집할 수 있다 이렇게 수집한 데이터를 서버로 전송하고 서버에서 들어오는 제어신호를 처리할 수 있다 원격 시스템은 ubuntu 리눅스를 OS로 사용하는 것을 가정한다 4 Chapter 1 서론

9 CHAPTER 2 시리얼 케이블을 이용한 원격시스템 접속 본 글에서 사용하는 원격시스템의 실제 하드웨어는 Jetway 사에서 판매하는 통합 보드인 NF95A-270-LF 을 이용 한다 국내에서는 carpckorea 라는 업체에서 판매를 하고 있다 Note: 이거 광고 아니고요 제가 carpckorea에서 물건을 좀 구매하긴 했지만, 사장님 절대 모릅니다 사장님, 가격 너무 자주 그리고 많이 올리시는 거 아닙니까? 싸게 좀 팔아주세요~~ 이 보드에 우분투를 설치할 때는 모니터와 키보드를 연결해서 하지만, 일단 설치가 끝난 경우에는 여러 대를 쌓아 놓고 시리얼로 필요한 장비에 연결하여 디버깅이나 업그레이드가 가능하다 본 절에서는 이 방법에 대해 살펴본다 먼저 PC와의 콘솔 연결을 위한 부팅 단계를 구분하고자 한다 1 부트로더로 제어권이 넘어가기 전단계 (BIOS 단계) 2 grub등의 부트로더가 시작되고 나서 로그인 프로프트 전단계 (부팅 단계) 3 사용자와의 인터랙션이 가능한 단계 (OS 단계) Note: ()안의 단계 이름들은 뭐 정해진 건 아니고 제가 그냥 붙여 봤습니다 을 보면, 위 3단계별로 콘솔에서 출력을 받는 방법들이 설명되어 있다 본 절에 서는 사용자와의 인터랙션이 가능한 OS 단계에서의 출력만을 설명할 것이다 ubuntu 610 이후부터 소개된 개념으로 upstart 가 있다 본 절에서는 upstart의 개념 자체가 중요한 것은 아니어서 자세히 설명하지는 않겠다 upstart는 부팅시에 구동되어야 하는 기능들을 기술하는 방법으로 과거 init 가 하던 역할을 대체하고자 ubuntu를 만든 canonical에서 개발하고 밀고 있는 방법이다 아무튼, 시리얼 콘솔 접속이 가능하도록 upstart의 스크립트를 /etc/init/ 아래에 작성한다 화일이름은 어떻게 해도 좋으나, 콘솔을 연결하기 위한 시리얼 포트의 이름을 붙인다 예를 들어, ttys2 (COM3) 를 시리얼 콘솔 포트로 사용하려면 /etc/init/ttys2 를 생성하고 아래 내용을 넣는다 start on runlevel [2345] stop on runleve [!2345] respawn exec /sbin/getty -L ttys2 vt102 화일을 저장한 후 telinit 2 명령을 수행하여 runlevel을 2로 해 주면 ttys2 스크립트가 실행되면서 콘솔을 이용 할 준비가 끝난다 원격시스템의 ttys2에 케이블을 연결한 후 콘솔에서 입출력이 가능한지를 확인하라 콘솔의 bps는 으로 설정해야 하며 이 값은 /etc/init/ttys2 에서 다른 값으로 변경하여 사용이 가능하다 Note: 시리얼 콘솔이 정상적으로 동작하지 않는다면, 콘솔을 연결한 상태에서 다음 명령으로 데이터를 보내 케이 블이나 시리얼 포트 자체가 정상동작하는지를 확인하라 5

10 System monitoring Documentation, Release 01 $ stty -F /dev/ttys2 speed cs8 -cstopb -parenb $ echo test > /dev/ttys2 # 콘솔로 test라는 문자열을 보낸다 또는 minicom 을 설치하여 양방향 문자 전송이 가능한지 확인하는 것도 좋은 방법이다 더 읽어보기 6 Chapter 2 시리얼 케이블을 이용한 원격시스템 접속

11 CHAPTER 3 원격시스템 BIOS(+GRUB) 설정 31 자동 power on 본 글에서 사용하는 원격시스템의 하드웨어인 NF95A-270-LF 은 꺼져있는 상태에서 전원이 공급될 경우 자동으로 켜지는 기능이 있다 사람이 직접 접근하기 어려운 원격지에 설치된 장비에 전원이 나갔을 경우 전력이 복구된 후, 장비를 켜기 위해 사람이 투입된다면 엄청난 낭비일 것이다 그렇기 때문에 전원만 공급되면 항상 켜지는 기능이 필요하다 CMOS에서 이를 설정할 수 있다 먼저, ERP(EUP) Function 을 Disable 로 설정한 후 7

12 System monitoring Documentation, Release 01 아래 그림과 같이 PWR Status after PWR Failure 을 Always On으로 설정하면 된다 8 Chapter 3 원격시스템 BIOS(+GRUB) 설정

13 System monitoring Documentation, Release 키보드 연결 없이 부팅하기 NF95A-270-LF 에서는 키보드 연결을 하지 않을 경우 부팅이 되지 않는다 이를 방지하기 위해서 아래 설정을 해 주어야 한다 CMOS > Standard CMOS Features > Halt on: All errors 위에서 All errors 부분을 All but keyboard 로 변경한다 33 GRUB 설정 변경 이 절은 CMOS에 관한 내용이 아니라 리눅스 부트로더인 GRUB에 대한 내용이다 GRUB은 부팅전에 사용자에게 어떤 OS로 부팅할 것인지, 다른 작업을 할 것인지를 선택할 수 있도록 한다 ubuntu에서는 부트로더에서 사용자 입력을 받아들이기 위해 일정시간을 대기하도록 한다 리부팅 시간을 줄이기 위해 이 대기시간을 변경하는 방법을 알아본다 또한, GRUB에서는 시스템 실패시 recordfail 이라는 변수에 true를 기록하고 다음 부팅시 이 값이 true이면 사용자의 입력을 받아야만 부팅이 진행되도록 하는 기능이 있다 이 기능도 제거해야만 시스템에서 발생한 문제로 인해 다음 부팅이 불가능해지는 현상을 방지할 수 있다 32 키보드 연결 없이 부팅하기 9

14 System monitoring Documentation, Release 01 이상에서 언급한 내용들은 /boot/grub/grubcfg 의 아래 내용 부분을 찾아 다음과 같이 수정해주면 해결할 수 있다 timeout 시간을 바꾸어 주는 것이 핵심이다 if [ ${recordfail} = 1 ]; then set timeout=1 else set timeout=3 fi Note: timeout 이 -1 로 되어 있으면, 자동으로 부팅이 되지 않고, 사용자의 입력이 있어야만 다음으로 진행된다 이렇게 저장을 하고나면, 다음 번 부팅시 부터 변경된 grub 설정으로 부팅이 이루어진다 10 Chapter 3 원격시스템 BIOS(+GRUB) 설정

15 CHAPTER 4 원격시스템을 위한 무선이동통신 원격시스템은 유선전원 연결은 가능하지만, 유선통신은 불가능한 환경을 가정한다 유선통신이 불가능하기 때 문에 무선통신을 이용해야 한다 요즘 흔히 이용할 수 있는 무선통신방법으로 무선랜과 상용이동통신망이 있다 무선랜은 초기 설치 비용이 많이 들 수 있다 무선랜 AP를 설치할 곳을 확보해야 하며, 인터넷 선도 끌어와야 한다 이상한 사람들이 장비를 훼손시키지 못하도록 안전장비도 갖추어야 한다 이런 일들은 예상외로 많은 비용이 든다 이런 이유로 본 절에서는 상용이동통신망을 사용하는 것을 가정하고 설명할 것이다 국내 이동통신 3사는 모두 데이터 통신이 가능한 모뎀과 서비스를 판매하고 있다 모뎀은 크게 두 가지 형태로 나눌 수 있다 하나는 KT에서 판매하는 에그(egg)로 유명해진 독립장비로서의 모뎀이다 이 장비는 로컬에서는 무선랜으로 클라이언트들의 접속을 허용하고 인터넷 연결을 위해서는 3G나 Wibro, LTE 망을 이용하는 형태이다 이 제품의 특징은 하나의 장비로 여러 클라이언트들에게 서비스를 제공할 수 있다는 것이다 또 다른 형태는 USB 타입의 모뎀이다 SKT에서 판매하는 T Login 이 대표적이며, KT에서도 iplug라는 이름으로 판매한다 41 에그 타입 무선랜 AP에 접속하는 것과 동일하므로 이 절에서는 보안이 강화된 wpa 인증으로 설정된 AP에 접속하는 방법을 다루고자 한다 무선랜(WiFi)를 이용하기 위해서는 무선랜 AP(공유기)에 접속해야 한다 다른 사람이 사용하지 못하게 하거나, 나의 통신 내용을 다른 사람에게 보여주지 않기 위해 보안 기법을 사용한다 예전에는 WEP라는 방법을 많이 사용 했는데, 보안에 문제가 많다고 해서 요즘은 WPA/WPA2를 사용한다 스마트폰이나 윈도우에서는 이 새로운 보안 기법을 사용하는데 큰 문제가 없어 보이는데 리눅스에서는 조금까다 롭다고 생각된다 물론 우분투에서도 GUI를 이용하면 WPA를 간단하게 이용할 수 있다 하지만, GUI를 사용하지 않는 서버버전 같은 경우에는 명령어를 사용해서 WPA인증을 통과해야 하는데, 이 과정이 조금 복잡하다 WPA인증을 하기 위한 리눅스 명령어는 wpa_supplicant 이다 추가로 인증키를 만들기 위해서는 wpa_passphrase 명령어를 이용한다 위 두 명령어만 있으면 WPA 인증을 이용할 수 있으며, 자세한 설명은 다음 링크에서 확인할 수 있다 (https://helpubuntucom/community/wifidocs/wpahowto) 참고로 테스트 환경은 ubuntu 1204 server 버전이다 간단히 과정을 설명하면, 411 인증키 만들기 $ wpa_passphrase NetworkEssid TextPassphrase # reading passphrase from stdin TextPassphrase network={ ssid="networkessid" 11

16 System monitoring Documentation, Release 01 #psk="textpassphrase" psk=945609a382413e64d57daef00eb5fab3ae228716e1e440981c004bc61dccc98c } $ wpa_passphrase NetworkEssid TextPassphrase > wpaconf 첫번째 명령어는 출력결과를 확인해 보기 위한 것이고, 두 번째 명령어는 이 결과를 현재 폴더에 wpaconf라는 이 름으로 저장한다 이 화일은 wpa_supplicant 명령어의 input으로 사용되어 AP 접속에 사용된다 wpa_passphrase의 두 인자로 NetworkEssid와 TextPassphrase을 사용하며, networkessid는 무선랜 AP 검색을 하면 나오는 이름이고, TextPassphrase는 AP에 설정한 접속 암호이다 412 무선랜 AP에 연결하기 $ sudo wpa_supplicant -Dnl iwlan0 -cwpaconf [sudo] password for your_id: Trying to authenticate with 00:07:ab:5d:f9:15 (SSID= NetworkEssid freq=2452 MHz) CTRL-EVENT-DISCONNECTED bssid=00:07:ab:5d:f9:15 reason=2 Trying to associate with 00:07:ab:5d:f9:15 (SSID= NetworkEssid freq=2452 MHz) Associated with 00:07:ab:5d:f9:15 WPA: Key negotiation completed with 00:07:ab:5d:f9:15 [PTK=TKIP GTK=TKIP] CTRL-EVENT-CONNECTED - Connection to 00:07:ab:5d:f9:15 completed (auth) [id=0 id_str=] 위 예제는 연결이 성공한 경우이다 마지막 줄에 연결되었다는 설명 (CTRL-EVENT-CONNECTED)이 나오고 더 이상의 추가적인 메시지 출력이 되지 않는다 만약 문제가 있으면 출력문이 계속 나온다 -D 옵션은 드라이버를 정해 주는 것이고, -i 옵션은 무선랜 인터페이스 이름을 지정하는 것이며, -c 옵션에는 인증키 만들기에서 생성한 키화일을 적어주면 된다 인터넷을 찾아보면 나오는 대부분의 사이트에서는 드라이버로 wext를 사용하면 된다고 나오지만, NF95A-270-LF 에서는 wext 로 무선랜 AP 접속이 실패한다 자신의 시스템에서 사용할 수 있는 드라이버의 종류를 보는 방법은 아래 명령을 수행한 후, 중간쯤에 drivers라고 표시된 부분에 나와 있는 드라이버들을 모두 적용해 보는 것이다 $ wpa_supplicant -h This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://wwwopensslorg/) usage: wpa_supplicant [-BddhKLqqstuvW] [-P] [-g] \ -i -c [-C] [-D] [-p] \ [-b] [-f] \ [-o] [-O] \ [-N -i -c [-C] [-D] \ [-p] [-b] ] drivers: wext = Linux wireless extensions (generic) nl80211 = Linux nl80211/cfg80211 wired = Wired Ethernet driver options: -b = optional bridge interface name -B = run daemon in the background -c = Configuration file -C = ctrl_interface parameter (only used if -c is not) 이 문제로 고민하는 분들에게 도움이 되길 기원한다ㅋㅋ 드라이버가 맞지 않으면 다음과 같은 에러가 나온다 12 Chapter 4 원격시스템을 위한 무선이동통신

17 System monitoring Documentation, Release 01 "WPA: 4-Way Handshake failed" 413 부팅시 자동으로 WPA인증하기 생성한 wpaconf화일을 /etc 아래에 저장하시고 /etc/network/interfaces 화일을 약간 수정한다 $sudo cp wpaconf /etc $sudo vi /etc/network/interfaces 화일 내용에서 wlan0쪽을 아래와 같이 수정 auto wlan0 iface wlan0 inet dhcp wpa-driver nl80211 wpa-conf /etc/wpaconf 42 USB 타입 실험에 사용한 ubuntu 버전은 1110이지만, 그 이후의 버전들에서 잘 동작할 것으로 생각한다 본 절에서 사용할 USB 타입 모델은 2012년 초에 구입하였으며, 모델명은 아래와 같다 SKT T-Login 듀얼 CBU-450D KT iplug CHU-629K Warning: 통신 모뎀은 스마트폰에 비해 구입하기가 훨씬 까다로웠다 대리점 방문전에 전화로 확인해 보거나 인터넷으로 구매처를 확인해 보라 421 SKT T-Login 인식 시키기 SKT T-Login은 KT 모뎀에 비해 쉽게 설치가 가능하다 3가지 방법으로 사용이 가능하며, 첫번째 방법은 ubuntu 에서 기본적으로 제공하는 네트워크 연결 프로그램을 이용하는 것이다 두번째 방법은 gnome-ppp 라는 프로그램 을 이용하는 방법이며, 마지막으로 wvdial을 이용하는 방법이 있다 첫 두가지 방법은 반드시 GUI 환경이 필요한 방법이며, wvdial은 명령어와 옵션만으로 실행이 가능하다 ubuntu에서는 유무선랜 연결을 관리하기 위한 프로그램을 내장하고 있으며, GUI환경에서 우상단의 트레이 아이 콘을 눌러 조작할 수 있다 USB 모뎀을 연결하고 2분정도를 기다리면, Natilus 에서 다음과 같이 USB 저장장치가 잡힌 것을 확인할 수 있다 usb_modeswitch 라는 프로그램이 이 일을 자동으로 처리해 준다 즉 usb_modeswitch는 USB 타입 모뎀을 USB 저장장치로 인식한 후 통신 기능을 활성화 시킨다 먼저 USB 저장장치로 인식된 상태를 다음 창으로 확인할 수 있다 42 USB 타입 13

18 System monitoring Documentation, Release 01 이후 통신 기능이 활성화 되고 나면, 통신 아이콘을 눌렀을 때 아래와 같이 sk-telecom이라고 써지며, 이를 누르면 통신이 연결된다 14 Chapter 4 원격시스템을 위한 무선이동통신

19 System monitoring Documentation, Release 01 두번째 방법인 gnome-ppp는 별도로 설치를 해야 하는 GUI 프로그램이며, 아래에서 detect 버튼을 누르면 /dev/ttyusb2 와 같은 디바이스로 통신 모뎀이 잡힌다(참고) 42 USB 타입 15

20 System monitoring Documentation, Release 01 마지막으로 wvdial을 이용하는 방법이다 이 명령어는 gnone-ppp가 수행하는 기능을 콘솔에서 수행가능하도록 한 다(gnome-ppp를 설치하면 wvdial도 설치된다) 설정화일을 직접 작성하거나 아래 방법을 이용해 자동으로 생성할 수 있다 이 명령을 수행하면 /etc/wvdialconf 에 설정화일이 저장된다 gnome-ppp에서 detect 과정과 매칭된다고 할 수 있다 $ sudo wvdialconf 아래는 이렇게 자동생성된 설정화일을 약간 수정한 내용이다 [Dialer Defaults] init1 = ATZ init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 init3 = AT&F ISDN = 0 Modem Type = USB Modem New PPPD = yes Phone = *98# Modem = /dev/ttyusb2 Username = sktelecom Password = 1 Baud = 다음, 아래 명령으로 T-Login을 네트워크에 연결한다 $ sudo wvdial 16 Chapter 4 원격시스템을 위한 무선이동통신

21 System monitoring Documentation, Release 01 사실 위에서 소개한 세가지 방법은 모두 usb_modeswitch에서 수행해 놓은 일 위에 숟가락만 얻는 사용자 인터페 이스라고 할 수 있다 연결된 USB 통신 모뎀을 인식하고 사용할 준비를 하는 것은 usb_modeswitch이다 본 글에서 언급하는 원격시스템은 모든 일을 자동화 하여 스스로 구동할 수 있어야 하므로 마지막 방법인 wvdial 을 사용한다 Tip: 설정된 모뎀은 ppp0 라는 이름의 장치로 설정되었는데, 이 장치로 통신이 되는지를 검사해 보기 위해서는 eth0나 wlan0 등의 기존 통신 인터페이스를 꺼야 한다 아래 명령으로 이를 수행할 수 있다 $ sudo iwconfig wlan0 txpower off $ sudo ifconfig eth0 down 422 KT iplug 인식 시키기 KT 모뎀을 인식시키기 위해서는 usb_modeswitch에 대한 지식이 필요하다 먼저 iplug를 PC에 연결하고 인식과 정이 어디까지 진행되었는지 살펴봐야 한다 dmesg 나 lsusb -v 명령을 이용하여 확인이 가능하며, 아래는 장치를 연결한 후 dmesg 의 실행결과이다 장치를 CD ROM으로 까지는 인식하였으나, 아직 시리얼 통신 장치로 는 인식하지 못한 상태이다 다음은 iplug를 연결하기 전과 후의 /sys/bus/usb/devices 안의 화일을 ls 로 표시한 것이다 1-1 과 1-1:10 이 연결 후 추가된 것을 확인할 수 있다 /sys/bus/usb/devices 폴더는 ubuntu에서 인식한 USB 장치들의 상세정보를 볼 수 있는 곳이다 usb1 ~ usb5 42 USB 타입 17

22 System monitoring Documentation, Release 01 까지를 root hub라고 부르며, 숫자는 bus number 이다 즉 이 장비에는 총 5개의 USB 버스가 장착되어 있음을 알 수 있다 N-0:10은 root hub의 인터페이스를 나타내는 특별한 장치이다 즉 아무런 장치도 연결되어 있지 않더라도 이 폴더는 존재한다 이 예에서는, 1번 버스의 8번 포트에 장치가 하나 연결되어 있던 상태에서 USB 모뎀을 연결하자, 1번 포트로 인식된 상황이다 Note: 리눅스에서 usb 장치를 인식하는 인식하여 화일 시스템에 표시하는 자세한 내용은 에서 /sys/bus/usb/devices 로 검색하면 찾을 수 있다 이렇게 인식이 된 상태에서 lsusb -v 을 실행하면, 다음 결과를 볼 수 있다 idvendor와 idproduct 값을 주의 깊게 보아야 한다 idvendor는 0x16d8 이며, idproduct는 7003으로 되어 있다 usb_modeswitch에서는 이 두 값을 이용하여 자동으로 장치를 인식하나, 위 설정값은 usb_modeswitch 에 등록되어 있는 값이 아니다 이를 등록하기 위해서는 두 가지 일을 해 주어야 한다 첫째로, /lib/udev/rulesd/40-usb_modeswitchrules 을 편집기로 열고나서 16d8로 검색하여 700a의 내용 을 복사하여 7003을 추가로 만들어야 한다 두번째로, /usr/share/usb_modeswitch 로 이동하면 configpacktargz 화일이 존재하며, 이 화일을 풀어 16d8:700a를 찾고 이를 복사하여 16d8:7003을 생성한다 18 Chapter 4 원격시스템을 위한 무선이동통신

23 System monitoring Documentation, Release 01 $ cd /usr/share/usb_modeswitch $ sudo tar zxvf configpacktargz $ sudo cp 16d8:700a 16d8:7003 이제, USB 모뎀을 제거한 후 다시 연결하면 장치를 인식할 것이다 423 SKT와 KT 모뎀 동시에 인식 시키기 개별 모뎀별로 인식에 성공했다면, /etc 아래에 wvdial1conf와 wvdial2conf를 아래와 같이 만든다 ttyusb#에서 번호만 해당 장치에 맞게 변경해 주면 된다 아래 두 명령으로 두 장치를 모두 인터넷에 연결 시킬 수 있다 $ sudo wvdial -C /etc/wvdial1conf $ sudo wvdial -C /etc/wvdial2conf 아래는 두 장치가 모두 연결된 상태를 보여준다 ifconfig 명령으로 ppp0와 ppp1으로 각각 잡힌 것을 확인할 수 있다 좌하단은 KT 모뎀이고 우하단은 SKT 모뎀이다 424 인터페이스 이중화 윗 절에서 두 개의 모뎀을 장치로서 인식시키는 지점까지는 성공하였다 하지만, 나중에 인식된 모뎀에서 라우팅 테이블을 선점하여 설정 (default route) 하기 때문에 일반적인 통신에서는 나중에 인식된 모뎀만을 이용하여 통신이 이루어진다 본 절에서는 두 인터페이스를 모두 이용하여 통신할 수 있는 방법을 찾을 수 있는 곳만을 소개한다 두 개의 인터페이스를 동시에 사용하여 유선 네트워크에 비해 신뢰성이 떨어지는 무선망의 특성을 상쇄시키려는 노력으로 이중화를 시도하였다 그러나, 아래와 같은 문제들을 아직 해결하지 못하여 이중화를 비중있게 다루지 않는다 42 USB 타입 19

24 System monitoring Documentation, Release Chapter 4 원격시스템을위한무선이동통신

25 System monitoring Documentation, Release USB 타입 21

26 System monitoring Documentation, Release Chapter 4 원격시스템을위한무선이동통신

27 System monitoring Documentation, Release 01 /dev/ttyusb# 을 잡을 때 순서가 바뀌는 경우가 있거나, USB 모뎀을 제외한 다른 장치가 연결되어 있을 경우 에는 번호가 바뀌는 경우도 발생, ttyusb 번호를 고정시키는 방법 필요 장치인식이 안되는 경우 발생 425 부팅시에 자동으로 인식시키기 /etc/rclocal 에 아래 코드를 추가하여 부팅시점에 자동으로 USB 모뎀을 인식시킬 수 있다 #!/bin/sh -e exec 2> /tmp/rclocaldebug set -x wvdial -C /etc/wvdial1conf & 2,3 줄을 추가하여 wvdial에서 출력되는 내용들을 /tmp/rclocaldebug 에 저장할 수 있다 Note: 부팅후에 USB 모뎀을 꽂고 wvdial을 실행시키면 잘 인식이 되지만, 스크립트 를 적용시키고 USB 모뎀을 꽂아 놓은 상태에서 리부팅시 모뎀을 인식하지 못할 때는 에서 Josh 님의 글을 참고하라 원인 치료가 아닌 증상 치료로 상황을 넘어가기 위해서는 Josh 님이 제시한 아래 방법을 이용하라 다음 코드를 /etc/rclocal에 넣으면 된다 modprobe -v option echo 16d8 700b" > /sys/bus/usb-serial/drivers/option1/new_id echo 16d8 7003" > /sys/bus/usb-serial/drivers/option1/new_id 43 MINI PCI-E 타입 최근에 잘나가고 있는 국내 업체중에 모다정보통신 이라는 곳이 있다 이 곳에서는 이 글에서 다루고 있는 원격 모 니터링 시스템의 통신 부분에 대한 모듈을 개발/판매하는 회사이다 TTA 를 통해 모니터링 시스템용 통신 모듈에 대한 표준화에도 앞장서고 있는 회사이다 관련자료를 여기 에서 다운로드 할 수 있다 분명한 사실은 몇몇 노트북에서 현재시점(2013년 12월)에 MINI PCI-E 타입의 WWAN 모뎀을 이용하여 이동통신 망의 데이터 통신을 이용할 수 있으나, 아직까지는 표준화가 되어 있지 않아 무선랜 모듈과 같이 범용적인 모뎀은 존재하지 않는다 하지만, 원격지 모니터링 시스템의 통신 모듈의 궁극적인 지향점은 MINI PCI-E 타입과 같이 소형의 모듈을 표준화하여 컴퓨터 내에 탈착할 수 있으며 이동통신망을 이용하여 통신하는 것이라고 생각한다 Note: 이 밖에 관련 업체로 등이 있다 이렇게 무선이동통신을 이용할 수 있으면 원격시스템에서 서버로의 접속이 가능해 진다 그러나, 서버에서 원격시 스템을 접근하려면 어떻게 해야 할까? 다음 절에서 이에 대해 알아보자 43 MINI PCI-E 타입 23

28 System monitoring Documentation, Release Chapter 4 원격시스템을위한무선이동통신

29 CHAPTER 5 서버에서 원격시스템 접근 원격시스템들은 원격지에 분산되어 있기 때문에 시리얼 콘솔을 이용해서 장비에 접근하는 것이 번거롭고 시간 을 많이 소비하게 된다 때문에 원격에서 시스템에 접근할 수 있는 방법을 제공하여야만 하며 이 경우, 디버깅과 업데이트가 용이해진다 하지만, 원격시스템은 상용이동통신망을 이용하기 때문에 외부에서 직접 접근이 불가능하다 이런 경우에 접근 을 할 수 있는 방법으로 reverse ssh 터널 이 있다 먼저 원격시스템에서 서버로 ssh -R 옵션을 사용하여 역방향 터널을 만든다 이렇게 하면, 원격시스템의 특정 포트에서 ssh 접속을 대기하도록 설정한다 51 reverse ssh 터널 생성 ssh는 보통 ssh 서버에 접속해 원격에서 서버를 관리할 목적으로 많이 사용된다 클라이언트와 서버 사이에 교환 되는 패킷들을 암호화하기 때문에 telnet보다 훨씬 안전하여 많이 사용되는 명령어이다 하지만, ssh는 telnet처럼 단순한 기능만을 제공하는 것은 아니다 본 절에서는 ssh -R 옵션을 통해 remote port forwarding을 사용하는 방법을 기술하고자 한다 ssh 터널을 만드는 일반적인 방법에 대해서는 아래 사이트를 참고하라 두 host A와 B가 있을때 A는 공인IP를 가지고 있지만, B는 사설IP만을 가지고 있다고 할 경우, 일반적으로 B에서 A 로만 접근이 가능하다 하지만, reverse 터널을 생성할 경우 A에서 B로의 접근이 가능해 진다 예를 들어 설명하면, 여러분 가정에 사설IP만을 가지고 있는 리눅스 장비가 있을 경우, 외부에서 집에 있는 리눅스로 접속하여 관리를 할 수 있다 -R 옵션의 명령어 형태는 아래와 같다 이 명령은 아래 그림의 client에서 수행하는 것이다 $ ssh -R <port1>:<host_of_port2>:<port2> 예) $ ssh -R 2502:localhost:1502 또는 $ ssh -R 2502: :

30 System monitoring Documentation, Release 01 위 그림과 명령어를 연관지어 설명하도록 하겠다 1 먼저 client에서는 server에 ssh로 접속할 수 있어야 한다 즉, client에서 ssh 으로 접속이 가능해야 한다 그림에서 화살표 1에 해당한다 2 접속이 가능하다면 client에서 위 예의 ssh -R 2502:localhost:1502 명령어를 입력 하여 그림에서 화살표 2에 해당하는 reverse 터널(remote port forwarding)을 생성한다 3 XXX client에서 2502 포트로 접속하면, (그림에서 화살표 A에 해당) 4 reverse 터널을 통해 XXX server에 접속할 수 있다 위의 과정을 netcat 명령어로 간단하게 검증해 보도록 하자 1 Server에서 ssh server를 구동한다 2 Client에서 아래 명령을 실행한다 $ ssh -R 2502:localhost:1502 위 명령을 수행하면 ssh로 server에 접속한 것과 증상적으로 동일한 접속이 이루어진다 다른 창을 열어 아래 명령을 수행하라 $ nc -l -p 1502 위 명령으로 XXX server를 port 1502에 띄워놓는다 3 Server에서 2502 port로 접속한다 명령 수행후 아무 글자를 쳐보면 client에 동일하게 출력되어 있는 것을 확인할 수 있다 $ nc localhost Server가 아닌 다른 컴퓨터에서 Sever의 2502 port로 접속하길 원한다면 아래 명령을 사용하라 $ nc 이상에서 일반적인 용도의 reverse ssh 터널에 대해 살펴보았다 본 글에서는 원격시스템의 제어를 위해 ssh 접속을 해야 하므로 아래 명령어를 사용하여 터널을 연다 포트번호 40122는 얼마든지 변경해서 사용할 수 있다 $ ssh -fn -R 40122:localhost:22 -f: 백그라운드로 실행될 수 있도록 프로세스를 fork -N: remote 명령어를 실행하지 않음 -fn: 원격지에 로그인하지 않고 백그라운드로 터널만 생성 26 Chapter 5 서버에서 원격시스템 접근

31 System monitoring Documentation, Release 자동 ssh 로그인 윗 절에서 reverse 터널을 만드는 법을 배웠다 시스템을 리부팅할 때마다 터널을 만들기 위해 비밀번호를 입력 하는 번거로움을 감수할 관리자는 없으리라 생각한다 이러한 이유로 본 절에서는 비밀번호 입력없이 ssh 서버에 자동으로 로그인 하는 방법을 살펴본다 host A에서 host B의 user b로 로그인하는 것을 가정하고 아래와 같은 명령을 수행하면 A에서 B로 ssh 접속을 할 때 비밀번호를 입력하지 않아도 된다 아래는 모두 host A에서 수행할 일들이다 1 인증키 생성 $ ssh-keygen -t rsa -t : 생성할 Key의 type (rsa1, dsa, ecdsa, rsa(for protocol 2)) 물어보는 내용에 대해 전부 엔터만 입력하면 된다 2 host B에 ssh 폴더 생성 $ ssh mkdir -p ssh 3 인증키 복사 $ cat ssh/id_rsapub ssh cat >> ssh/authorized_keys Note: 2, 3의 과정을 한번에 수행하기 $ ssh-copy-id Note: 루트권한으로 수행하는 프로세스내에서 원격지로 ssh 접속을 시도할 경우는 루트 계정에서 위의 작업들 을 수행해 주어야 한다 즉 host A에서 어느 계정으로 위의 과정을 수행하는가도 중요하다 루트 계정에서 자동 로그인을 하기 위해서는 아래 명령어를 먼저 수행한 후 위 과정을 실행하라 $ sudo su - 53 연결 유지용 스크립트 자동으로 로그인을 할 수 있으니, 이제 ssh 터널 생성 명령어를 자동화하고 연결이 끊어졌는지를 검사하여 재연결 을 시도하는 방법을 알아보자 아래 스크립트는 인터넷에서 찾을 수 있는 코드들인 를 약간 수정한 것이다 #!/bin/sh # $REMOTE_PORT is the remote port number that will be used to tunnel # back to this system REMOTE_PORT=${PORT_PREFIX} # $REMOTE_HOST is the name of the remote system REMOTE_HOST=${YOUR_HOST_NAME} for PORT in "22" "80" do # $COMMAND is the command used to create the reverse ssh tunnel 52 자동 ssh 로그인 27

32 System monitoring Documentation, Release 01 #COMMAND="autossh -f -N -R *:$REMOTE_PORT:localhost:22 $REMOTE_HOST" COMMAND="ssh -fn -R ${REMOTE_PORT}${PORT}:localhost:${PORT} $REMOTE_HOST" # Is the tunnel up? Perform two tests: # 1 Check for relevant process ($COMMAND) pgrep -f -x "$COMMAND" > /dev/null 2>&1 $COMMAND # 2 Test tunnel by looking at "netstat" output on $REMOTE_HOST ssh $REMOTE_HOST netstat -an egrep "tcp*:${remote_port}$port*listen" \ > /dev/null 2>&1 if [ $? -ne 0 ] ; then pkill -f -x "$COMMAND" $COMMAND fi done 위 코드는 원격시스템의 ssh(22)와 http(80) 포트에 접속할 수 있도록 두 개의 reverse 터널을 생성한다 REMOTE_PORT 변수에 설정되는 값은 최종 포트번호가 아니며, for 문에 있는 22와 80과 합쳐져서 완성된 포트를 생성한다 즉 ${REMOTE_PORT}${PORT} 이 최종 포트번호이다 COMMAND 변수에 할당되는 ssh 구문을 보면 어떻게 포트가 할당되는지 이해할 수 있을 것이다 pgrep을 이용해 명령어가 수행되고 있는지 검사하여 프로세스가 없을 경우 명령어를 수행한다 그러므로 이 스크 립트를 crontab에 등록하여 수행할 경우 cron에 의해 스크립트를 시작하기 전까지는 터널이 생성되지 않는다 TCP 통신에서는 단순히 터널을 설정하는 프로세스가 살아있다고 해서 TCP 세션이 활성화 되어 있다는 것을 보 장하지 않는다 이는 telnet이나 ssh 접속을 한 후에 오랜동안 입출력이 없으면 연결이 끊어지는 경우가 발생하는 것으로 알 수 있다 telnet server와 telnet client는 모두 동작하고 있지만, 연결을 끊어져 있을 수 있다는 것이다 이를 방지하기 위해서 주기적으로 클라이언트에서 서버측으로 패킷을 보내는 방법을 이용하며, ssh 자체적으로 해결하는 방법과 범용적인 방법이 있다 ssh 에서는 설정을 통해 연결유지용 패킷을 자동으로 발생시킬 수 있다 를 보면 해당 방법을 살펴볼 수 있다 또는, 무식한 방법이긴 하지만, 확실한 방법이기도 한 ssh 로 원격지에 접속하여 명령어를 수행하는 방법도 있다 ssh에서는 명령어 한 줄로 이를 수행할 수 있다 예를 들어 ssh ls 를 실행하면 원격지의 ls 결과를 출력한다 범용적으로 사용할 수 있는 방법으로 TCP KEEPALIVE 를 이용할 수 있다 본 절에서는 두번째로 소개한 방법을 이용하여 연결을 유지하며, 추가적으로 연결이 실제로 유지되어 있는지 를 검사하기도 한다 일석이조라 할 수 있겠다 ㅋㅋ 명령어 ssh $REMOTE_HOST netstat -an egrep "tcp*:${remote_port}$port*listen" > /dev/null 2>&1 은 원격지에 접속하여 netstat문으로 reverse ssh 터널이 살아있는지를 검사하는 것이다 이 명령어 한 줄로 클라이언트에서 서버측으로 데이터를 보 내는 효과도 있으며, 서버측에서 연결이 유효한지도 검사한다 ssh 터널을 설정하여 서버에서 클라이언트로 접속이 가능해지면, 어떠한 형태의 모니터링도 가능해진다 하지만, 모니터링을 자동화 하기 위해서는 몇 가지 기술들을 더 배워야 한다 원격시스템의 정보를 서버로 전송하기 위한 modbus 프로토콜, 로그 저장 및 전송 등이다 계속 읽어보시라~~ 28 Chapter 5 서버에서 원격시스템 접근

33 CHAPTER 6 modbus 이제 원격시스템은 이동통신망을 이용하여 네트워크에 연결되었고 ssh 터널을 통해 서버에서 원격시스템을 제어 할 수 있으므로, 원격시스템을 원격지에 설치해 두어도 된다 하지만, 아직 모니터링 기능을 자동적으로 수행할 수는 없다 본 절에서는 정보 수집과 제어를 자동화 하기 위해 modbus 프로토콜에 대해 알아본다 원격시스템에서 근거리의 센서들로부터 정보를 수집하기 위해 시리얼통신에 기반한 modbus를 이용하고, 모니터 링한 내용을 서버로 전송하고 서버에서 원격시스템을 제어하기 위해서는 modbus TCP를 이용한다 실제 환경에서 원격시스템을 사용하기 위해서는 본 절에서 소개한 내용을 기반으로 소스 코드를 수정하여야 한다 61 modbus 소개 본 절은 wikipedia의 modbus 를 번역하면서 약간 살을 붙인 것이다 modbus는 1997년, 지금은 Schneider Electric인 Modicon 이라는 회사에서 만든 시리얼 통신 프로토콜이다 제조공 장이나 놀이공원의 기계들을 자동화하고 제어하는 목적으로 사용되는 Programmable Logic Controller(PLC)들과의 통신에 사용할 목적으로 만들어졌다 프로토콜이 단순하지만, 장비 제어와 모니터링에 필요한 기능들을 수행할 수 있기에 사실상의 표준 프로토콜의 지위를 얻게 되었고, 현재까지 산업용 전자 장치들을 서로 연결하는 목적으로 널리 사용된다 다음은 modbus가 산업용으로 널리 사용되는 이유들이다 산업용 통신 프로토콜로 개발됨 프로토콜이 공개되어 있고 공짜 설치와 유지보수가 용이 비트단위 또는 워드(16bits) 단위로 정보조작이 용이 modbus는 약 240개의 장비들을 서로 연결할 수 있다 예를 들면, 온도와 습도를 측정하는 여러 장비들이 모니터링 서버로 현재 상태를 보고하도록 할 수 있다 일반적으로 서버에서 센싱 장비들에게 질의를 보내고 장비들은 이에 대해 응답하는 형태로 동작한다 Supervisory control and data acquisition (SCADA) 시스템에서도 모니터링 서버와 remote terminal unit (RTU)을 연결하기 위해 modbus를 자주 사용한다 Schneider Electric에서는 modbus를 공개하여, 2004년 4월 이후로 프로토콜의 개발과 수정을 Modbus Organization 에서 수행한다 611 통신과 장비 modbus는 master/slave 기반 프로토콜이다 시리얼 통신에서는 master로 설정된 장비만이 slave로 정보를 요청할 수 있는 반면, 이더넷 통신에서는 네트워크상의 어떤 노드도 정보를 요청할 수 있다 요청정보는 읽기와 쓰기 모두 가능하다 하지만, 대부분의 경우 master는 하나만 존재한다 29

34 System monitoring Documentation, Release 01 네트워크상에 연결된 모든 노드들이 요청을 받을 수는 있지만, 요청정보에 들어있는 목적주소 장비만이 이에 응 답한다 물론 목적지 주소가 브로드캐스트 주소일 때는 예외이다 목적지 주소를 0으로 설정하면, 수신한 모든 노드에서 요청을 처리하지만, 응답은 보내지 않는다 또한, modbus 요청 정보에는 통신 오류를 검출하기 위한 코 드를 포함한다 modbus를 지원하는 모뎀과 게이트웨이들이 많이 존재한다 주로 serial-to-ip 제품들로 master측으로는 WiFi나 이 동통신등 무선통신을 지원하기도 한다 612 프레임 포맷 통신 네트워크의 종류와 요청 정보의 형식에 따라 여러가지 프레임 포맷이 존재한다 Modbus RTU는 시리얼 통신 망을 이용하며, 프레임에서는 이진정보를 사용한다 Modbus Ascii도 시리얼 통신망을 이용하지만, 프레임에 ascii 문자를 넣어 통신한다 즉 0을 넣으면, 실제 프레임에는 0의 ascii 코드인 48이 한 바이트를 차지하게 된다 Table 61: Modbus RTU Frame Format Name Start Address Function Data CRC End Length (bits) n* Function at least character times of silence (mark condition) Station Address Indicates the function code, eg read coils / inputs Data + length will be filled depending on the message type Error checks at least character times of silence between frames Table 62: Modbus ASCII Frame Format Name Start Address Function Data LRC End Length (char) n 2 2 Function starts with colon ( : ) (ASCII hex value is 0x3A) Station Address Indicates the function codes like read coils / inputs Data + length will be filled depending on the message type Error checks carriage return line feed(cr/lf) pair (ASCII values of 0x0D & 0x0A) Table 63: Modbus TCP Frame Format Name Transaction Identifier Protocol Identifier Length Field Unit Identifier Function code Data bytes Length (bytes) n Function For synchronization between messages of server & client Zero for Modbus/TCP Number of remaining bytes in this frame Slave Address (255 if not used) Function codes as in other variants Data as response or commands Modbus/TCP의 unit identifier는 modbus 게이트웨이 내부의 RTU 장비들을 지칭할 목적으로 사용되며, 이런 경우가 아니라면 IP 주소를 사용해 목적지를 인식할 수 있으므로 사용되지 않는다 바이트 순서는 빅 엔디언을 사용한다 즉 첫번째 바이트가 MSB이다 30 Chapter 6 modbus

35 System monitoring Documentation, Release 01 프레임 포멧의 Function code와 data부분을 특별히 Protocol Data Unit (PDU)라고 부르며, 위 프레임 포맷 표에 서 Name 부분에 푸른색으로 표시된 부분이 PDU이다 PDU는 Request PDU, Response PDU, Exception Response PDU의 3가지 종류가 정의되어 있으며, 아래는 요청(Request)과 응답(Response)의 과정을 해당 주체와 함께 간단히 표시한 그림이다 요청을 받은 slave에서 해당 메시지를 해석할 수 없거나, 명시된 주소를 찾을 수 없는 등의 오류 발생시에는 요청의 function code에 0x80을 더한 값을 오류 코드로 설정하여 Exception Response로 응답한다 613 지원되는 기능 코드들 읽기와 쓰기를 비롯한 다른 몇몇 기능들이 아래 표에 정리되어 있다 프로토콜이 만들어진 초창기부터 있었던 기능들은 굵은 글자로 표시되어 있으며, 1~6까지의 기능 코드를 갖는다 Function type Data Access Function name Bit access Physical Discrete Inputs Read Discrete Inputs Function code 2 16-bit access Read Coils Write Single Coil Write Multiple Coils Read Input Register Read Holding Registers Internal Bits or Physical Coils Physical Input Registers Internal Registers or Physical Output Registers Diagnostics File Record Access Write Single Register Write Multiple Registers Read/Write Multiple Registers Mask Write Register Read FIFO Queue Read File Record Other Write File Record Read Exception Status Diagnostic Get Com Event Counter Get Com Event Log Report Slave ID Read Device Identification Encapsulated Interface Transport modbus는 센서나 LED등을 모니터링하고 제어하기 위한 특수한 data type들을 제공한다 다음 표에 data type들을 정리하였다 이 표는 에서 가져온 것이다 java 로 구현한 modbus 에 대한 문서이며, 볼 만한 내용들이 있다 <Modbus Data Type> 61 modbus 소개 31

36 System monitoring Documentation, Release 01 Name Type Access Discrete Input single bit read-only Discrete Output (Coils) single bit read-write Input Registers 16-bit word read-only Holding Registers (Registers) 16-bit word read-write Visual 614 구현들 modbus의 구현은 시리얼 통신에 사용할 수 있는 modbus와 IP 통신망에서 사용할 수 있는 modbus가 존재한다 시리얼 통신에 사용되는 대표적인 규격은 RS-232와 RS-485가 있다 RS-232는 가까운 거리에 놓인 두 장비를 1:1 로 연결하는 용도로 사용된다 (RS-422은 RS-232에 양방향 통신기능을 추가한 것이다) RS-485는 여러 장비들을 하나의 망으로 묶을 수 있으며, 하나의 master에서 여러 개의 slave들과 통신할 수 있다 시리얼 전송 모드는 데이터의 인코딩 방식에 따라 아스키와 RTU로 다시 나누어진다 아스키 모드에서는 바이트 는 두 개의 아스키 문자로 기록되어 데이터 전송효율은 떨어지지만, 디버깅등에서 사람이 데이터를 읽기에는 더 편리한 점이 있다 RTU 모드에서는 이진 데이터를 그대로 전송에 이용한다 IP 기반의 modbus 구현은 TCP와 UDP 모두 가능하며, IETF에서 502 포트를 할당받았다 대부분의 modbus 구현들은 필요에 의해 프로토콜을 약간씩 변형하여 구현하였다 그러므로 변형된 부분에 대해서 는 서로 호환이 되지 않을 수 있다 다음은 변형된 부분들에 대한 내용이다: Data types Floating point IEEE 32-bit integer 32 Chapter 6 modbus

37 System monitoring Documentation, Release 01 8-bit data Mixed data types Bit fields in integers Multipliers to change data to/from integer 10, 100, 1000, 256 Protocol extensions 16-bit slave addresses 32-bit data size (1 address = 32 bits of data returned) Word swapped data 615 제한 modbus는 1970년대 말에 만들어졌기 때문에 그 당시 사용되던 PLC 장비들에서 사용되던 data type들만을 지원한다 이전 절의 변형된 data type들을 참고하라 data object는 오직 주소에 의해서만 결정되며, 설명을 넣을 수 없다 Master의 요청 없이 slave에서 특정 이벤트에 의해 master로 메시지를 전달할 수 있는 방법이 없다(Modbus TCP에서는 가능은 함) 시리얼 네트워크에서는 247개의 노드까지만 네트워크에 연결할 수 있다 (Modbus TCP에서는 IP 주소가 허 용하는 범위에서 할당 가능) 데이터는 연속적으로 전송해야 한다 버퍼링을 위해 하나의 메세지를 중간에 끊어서 전송할 수 없다 통신 보안을 제공하지 않는다 62 libmodbus modbus를 구현한 라이브러리로는 대표적으로 libmodbus를 뽑을 수 있다 c로 구현된 라이브러리로 리눅스, 맥, 윈도우 등 대부분의 OS에서 사용할 수 있으며, 꾸준히 업데이트가 되고 있다 본 글에서는 Modbus RTU의 예제를 libmodbus를 이용하여 살펴보고, Modbus TCP에 대해서는 pymodbus를 사용 하여 예제를 구동시킬 것이다 테스트 환경은 ubuntu 1204와 1304이다 621 libmodbus 설치 에서 최신버전을 다운받아 적당한 곳으로 옮긴 후 아래 명령을 이용하여 압축을 푼다 $ tar zxvf libmodbus-305targz libmodbus-305 폴더로 이동한 후 아래와 같이 컴파일한다 $ $ $ $ cd libmodbus-305/ /configure make sudo make install libmodbus는 TCP 상으로도 데이터를 전송할 수 있지만, 본 글에서는 modbus RTU의 동작만을 살펴본다 62 libmodbus 33

38 System monitoring Documentation, Release Modbus RTU 구동 예제 테스트를 위해 시리얼 케이블을 이용하지 않고 가상 시리얼 loopback을 만들어 사용할 수 있다 ubuntu에서는 socat 을 이용하여 다음과 같이 만들 수 있다 $ sudo apt-get install socat $ socat -d -d pty pty 2013/10/30 15:24:38 socat[13104] N PTY is /dev/pts/7 2013/10/30 15:24:38 socat[13104] N PTY is /dev/pts/8 2013/10/30 15:24:38 socat[13104] N starting data transfer loop with FDs [3,3] and [5,5] USB-to-Serial 케이블을 이용한다면, ls 명령을 이용하여 /dev/ttyusb0 와 같은 식으로 장치가 잡히는 것을 확인할 수 있다 libmodbus-305/tests 로 이동하여 화일들을 보면 여러 형태의 테스트 화일들을 볼 수 있다 본 글에서는 unit-testserverc와 unit-test-clientc 만을 이용하여 modbus RTU의 간단한 구동을 살펴볼 것이다 먼저 아래 두 줄을 위 socat 에서 나온 가상 디바이스로 각 화일에서 수정해 준다 시리얼 케이블을 사용하는 경우 해당 장치의 이름을 적어주면 된다 <unit-test-serverc> ctx = modbus_new_rtu("/dev/pts/7", , N, 8, 1); <unit-test-clientc> ctx = modbus_new_rtu("/dev/pts/8", , N, 8, 1); make로 컴파일을 해 준 후, 아래 명령으로 서버를 실행시킨다 libmodbus-305/tests$ /unit-test-server rtu 다음으로 아래 명령을 이용하여 client를 실행시킨다 libmodbus-305/tests$ /unit-test-client rtu 다음은 server와 client의 출력이다 <server> Opening /dev/pts/7 at bauds (N, 8, 1) Waiting for a indication <11><05><00><13><FF><00><7F><6F> # addr:0x11, func_code:5 수신한 메시지 [11][05][00][13][FF][00][7F][6F] # 응답 메시지 Waiting for a indication # 데이터 수신을 기다림 <11><01><00><13><00><01><0E><9F> [11][01][01][01][94][88] Waiting for a indication <11><0F><00><13><00><25><05><CD><6B><B2><0E><1B><10><35> [11][0F][00][13][00][25][67][45] Waiting for a indication <client> Opening /dev/pts/8 at bauds (N, 8, 1) ** UNIT TESTING ** TEST WRITE/READ: [11][05][00][13][FF][00][7F][6F] Waiting for a confirmation <11><05><00><13><FF><00><7F><6F> 34 # 요청 메시지 # 응답을 기다림 # 응답 메시지 Chapter 6 modbus

39 System monitoring Documentation, Release 01 1/2 modbus_write_bit: OK [11][01][00][13][00][01][0E][9F] Waiting for a confirmation <11><01><01><01><94><88> 2/2 modbus_read_bits: OK [11][0F][00][13][00][25][05][CD][6B][B2][0E][1B][10][35] Waiting for a confirmation <11><0F><00><13><00><25><67><45> 1/2 modbus_write_bits: OK modbus 명세서 를 참고하여 각 메시지의 값들을 비교해 보라 63 pymodbus 본 글에서는 pymodbus 를 이용하여 python 코드로 modbus를 사용하는 방법을 살펴본다 테스트 환경은 ubuntu 1204와 1304이며, python 27 버전을 이용한다 pymodbus는 시리얼 쪽 구현이 온전하지 않고 오류가 발생한다 하지만, TCP쪽은 안정적으로 동작하는 것을 확인하였다 631 pymodbus 설치 아래 명령을 통해 간단히 설치가 가능하다 pymodbus는 asynchronous 모드를 지원하기 위해 twisted를 이용한다 $ sudo apt-get install python-setuptools $ sudo apt-get install python-twisted $ sudo easy_install -U pymodbus 문제가 발생한다면, https://githubcom/bashwork/pymodbus 를 참고하라 632 Modbus TCP 구동 예제 pymodbus는 server와 client 모두에 대해 synchronous 및 asynchronous 모드를 지원한다 먼저 synchronous 모드의 TCP 예제를 살펴보자 소스 코드를 다운로드 받으면, pymodbus/examples/common 위치에 synchronous-clientpy 화일을 아래와 같이 수정한다 input register는 센서 값에서 읽어오는 것이기 때문에 쓸 수가 없다 예제에 이렇게 되어 있는 것이 좀 의아하다 --- synchronous-clientpy :35: synchronous-client-tcppy :37: ,7 +55,7 # # client = ModbusClient( localhost, retries=3, retry_on_empty=true) # # -client = ModbusClient( localhost, port=502) +client = ModbusClient( localhost, port=5020) #client = ModbusClient(method= ascii, port= /dev/pts/2, timeout=1) #client = ModbusClient(method= rtu, port= /dev/pts/2, timeout=1) clientconnect() -83,7 +83,8 assert(rrbits == [True]*8) # test the expected value rq = clientwrite_coils(1, [False]*8) -rr = clientread_discrete_inputs(1,8) +#rr = clientread_discrete_inputs(1,8) +rr = clientread_coils(1,8) 63 pymodbus 35

40 System monitoring Documentation, Release 01 assert(rqfunction_code < 0x80) assert(rrbits == [False]*8) -93,7 +94,7 assert(rrregisters[0] == 10) # test that we are not an error # test the expected value # test the expected value rq = clientwrite_registers(1, [10]*8) -rr = clientread_input_registers(1,8) +rr = clientread_holding_registers(1,8) assert(rqfunction_code < 0x80) # test that we are not an error assert(rrregisters == [10]*8) # test the expected value -104,7 +105,7 write_registers : [20]*8, } rq = clientreadwrite_registers(**arguments) -rr = clientread_input_registers(1,8) +rr = clientread_holding_registers(1,8) assert(rqfunction_code < 0x80) # test that we are not an error assert(rqregisters == [20]*8) # test the expected value assert(rrregisters == [20]*8) # test the expected value 동작을확인하기위해서는옵션없이 synchronous-serverpy 를실행시킨후, 다른창에서 synchronous-clientpy 를실행시키면된다 36 Chapter 6 modbus

41 CHAPTER 7 로그 (syslog) 모니터링 시스템에서 로그 보다 더 중요한 것이 있을까? 나는 없다고 생각한다 자신만의 로그를 만들어 사용할 수 도 있겠지만, 사실상의 로그 표준으로 사용되고 있는 syslog, 그 중에서도 ubuntu에서 기본으로 사용하는 rsyslog를 이용하여 로그를 출력하고자 한다 편의상 rsyslog를 syslog로 부르도록 하고 꼭 rsyslog 로 구분하여 나타낼 필요가 있을 때만 rsyslog 를 사용할 것이다 syslog를 이용하면, 원격시스템 내부에서는 물론이고 로그의 내용을 서버로 전송하여 화일이나 DB에 저장하여 볼 수 있다 단순한 기능 같지만, 원격시스템 모니터링에 있어서 가장 중요한 기능 중 하나라고 할 수 있다 빈번하게 변화하는 값들은 modbus 프로토콜을 이용하여 모니터링하고, 중요한 이벤트나 디버깅 정보등은 syslog로 관리하 면 편리하다 syslog는 특정 이벤트가 발생하는 시점들을 관리할 수도 있고, 시스템에 문제가 발생했을 때 원인을 분석하는 디버깅 용도로도 매우 유용하다 Note: syslog는 IETF의 RFC 5424 로 등록되어 있다 RFC 5424에는 syslog 메시지를 인터넷 상으로 전달하는 방법을 기술한다 71 syslog 출력의 예 다음은 /var/log/syslog 의 내용 일부이다 syslog가 설치된 시스템에서는 기본적으로 시스템에서 발생하는 로그들을 이 화일에 출력한다 Dec Dec 5 10:52:25 ymkim-ao756 anacron[1058]: Job crondaily terminated 5 10:52:25 ymkim-ao756 anacron[1058]: Normal exit (1 job run) ^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^ DATE TIME hostname process name ^^^^^^^^^^^^^^^^^^^^^^^^^ message (log content) 위의 예에서 보인바와 같이 syslog의 출력은 날짜와 시간으로 시작한다 이후 호스트 이름과 프로세스 이름을 출력 하며, 여기까지는 syslog에서 자동으로 출력해 주는 부분이다 콜론(:) 이후의 내용은 로그를 찍는 이유를 설명하는 메시지 부분이다 Note: apache와 같은 프로그램은 syslog의 기준을 따르지 않는 독자적인 로그를 별도의 로그 파일에 기록한다 ubuntu의 경우 /var/log/apache2/ 아래에 access log과 error log를 별도로 저장한다 72 log level 본격적으로 syslog를 설명하기 앞서서 기본적인 내용를 하나 공부하고 넘어가야 한다 바로 메시지의 특성을 정의 하는 facility와 severity에 대한 내용이다 facility는 메시지를 발생시킨 프로그램의 타입을 나타내는 값이며, sever- 37

42 System monitoring Documentation, Release 01 ity는 메시지의 성격 또는 중요도를 나타낸다 syslog에서는 이 값에 따라 로그 메시지를 어느 화일에 기록할지, 누구에게 이 사실을 알릴 것인지를 결정한다 facility : auth, authpriv, daemon, cron, ftp, lpr, kern, mail, news, syslog, user, uucp, local0,, local7 Facility Number Keyword kern user mail daemon auth syslog lpr news uucp clock authpriv ftp cron local0 local1 local2 local3 local4 local5 local6 local7 C code LOG_KERN LOG_USER LOG_MAIL LOG_DAEMON LOG_AUTH LOG_SYSLOG LOG_LPR LOG_NEWS LOG_UUCP LOG_CRON LOG_AUTHPRIV LOG_LOCAL0 LOG_LOCAL1 LOG_LOCAL2 LOG_LOCAL3 LOG_LOCAL4 LOG_LOCAL5 LOG_LOCAL6 LOG_LOCAL7 Facility Description kernel messages user-level messages mail system system daemons security/authorization messages messages generated internally by syslogd line printer subsystem network news subsystem UUCP subsystem clock daemon security/authorization messages FTP daemon NTP subsystem log audit log alert clock daemon local use 0 (local0) local use 1 (local1) local use 2 (local2) local use 3 (local3) local use 4 (local4) local use 5 (local5) local use 6 (local6) local use 7 (local7) severity : Emergency, Alert, Critical, Error, Warning, Notice, Info or Debug Code Severity Emergency Alert Critical Error Warning Notice Informational Debug Keyword emerg (panic) alert crit err (error) warning (warn) notice info debug C code LOG_EMERG LOG_ALERT LOG_CRIT LOG_ERR LOG_WARNING LOG_NOTICE LOG_INFO LOG_DEBUG Description System is unusable Action must be taken immediately Critical conditions Error conditions Warning conditions Normal but significant condition Informational messages Debug-level messages facility와 severity에 따라 어떤 화일에 로그를 쓸지에 대해, rsyslog의 경우 /etc/rsyslogd/50-defaultconf 에 정의되어 있다 73 쉘 명령어로 syslog 출력하기 시스템에서 발생하는 로그가 아닌 직접 생성한 로그를 만드는 가장 쉬운 방법은 logger 명령어를 이용하는 것이 다 man logger 에서 모든 옵션에 대한 설명을 찾을 수 있으며, 여기서는 몇 가지 예만을 보도록 한다 $ logger log test $ tail -f /var/log/syslog tail 명령어 출력 결과의 마지막에서 아래와 같은 내용을 볼 수 있을 것이다 38 Chapter 7 로그 (syslog)

43 System monitoring Documentation, Release 01 Dec 5 15:30:37 ymkim-ao756 ymkim: log test log level을 입력으로 넣기 위해서는 -p 옵션을 사용한다 -p 옵션 뒤에 facilityseverity 를 입력한다 -p 옵 션을 사용하기 전에 local0 facility의 새로운 출력화일을 지정하기 위해 /etc/rsyslogd/50-defaultconf 의 제일 아래 줄에 다음 내용를 추가하자 local0* /var/log/testlog Note: rsyslog의 메인 설정화일은 /etc/rsyslogconf 이다 이 화일에서 /etc/rsyslogd/50-defaultconf 을 불러와 추가 적인 내용을 설정한다 설정화일에 대한 자세한 내용은 man rsyslogconf 를 확인하라 변경내용을 저장한 후 아래 명령으로 rsyslog를 재시작한다 $ sudo restart rsyslog 이제 아래 명령을 실행시키면 /var/log/testlog 와 /var/log/syslog 에서 입력한 로그 메시지를 확인 할 수 있다 $ logger -p local0info log test 2 /var/log/syslog 로는 로그를 쓰지 않도록 하기 위해 /etc/rsyslogd/50-defaultconf 설정화일에 서 아래 내용을 찾아서, **;auth,authprivnone -/var/log/syslog 다음과 같이 local0none을 추가하라 **;auth,authprivnone,local0none -/var/log/syslog 이 줄의 의미는 모든 로그(**)를 /var/log/syslog에 기록하지만, 세미콜론(;) 이후의 facility들인 auth, authpriv, local0 은 제외(none)하라는 것이다 화일이름 앞의 - 은 로그를 화일에 바로 쓰지 말고 메모리에 로그를 가지고 있다가 디스크에 입출력 여유가 있을 경우 쓰라는 의미이다 (http://shallowskycom/blog/linux/rsyslog-conf-tutorialhtml 의 Rules Section을 보라) 74 hostname 설정 ubuntu 설치시 사용자 아이디와 컴퓨터 이름을 조합해 자동으로 hostname을 만들어 준다 참 편리한 기능이다 하지만, 동일한 장비에 ubuntu를 설치하면 모든 장비의 hostname이 같아지는 현상이 발생한다 syslog는 원격으로 로그를 보내 통합하여 관리하는 기능이 있으므로 hostname을 다르게 설정해 주는 것이 중요하다 /etc/hostname 과 /etc/hosts 를 열어 자동으로 설정된 hostname을 변경한다 예를 들어 hostname의 마지 막에 컴퓨터 마다 다른 숫자를 넣어 컴퓨터들을 구별할 수 있다 로그 아웃후 다시 로그인을 하면 변경된 hostname 이 적용된 것을 아래 명령으로 확인할 수 있다 $ hostname 75 C 코드에서 syslog 출력하기 joinc의 syslog 에서 잘 설명되어 있으며, 여기서는 간단한 따라하기를 소개한다 facility level에서 local0에서 7까지 총 8개의 facility를 사용자의 목적에 맞게 사용할 수 있다 로그를 발생시키는 프로그램별로 facility를 할당할 수도 있고, 이용목적에 따라 여러 프로그램에서 하나의 facility에 값을 쓰도록 할 수 있다 물론 같은 facility 내에서도 severity에 따라 다른 화일에 로그를 저장할 수도 있다 74 hostname 설정 39

44 System monitoring Documentation, Release 01 위에서부터 쭉 따라온 분은 /etc/rsyslogd/50-defaultconf 화일 아래에 다음 줄이 있을 것이다 local0* /var/log/testlog 아직 없다면 추가하고 sudo restart rsyslog 를 수행하라 c 코드에서 다음과 같이 local0에 쓰도록 하면 /var/log/testlog 에 로그가 기록된다 #include <syslogh> int main() { syslog(log_info LOG_LOCAL0, "write your log message"); return 0; } 실행결과는 아래와 같이 확인할 수 있다 $ gcc ttc $ /aout $ tail /var/log/testlog Dec 9 12:14:55 ymkim-sd550 aout: write your log message 76 logrotate로 최신 로그만 남기기 하나의 화일에 계속 로그가 쌓이다 보면 화일이 커져서 로딩하기 위해 걸리는 시간도 길어지고 디스크의 용량도 많이 차지하게 된다 이러한 문제를 해결하기 위해 일정시간 단위로 로그화일을 구분하여 저장하고 오래된 로그 화일은 지우는 방법이 있다 logrotate가 하는 일이 바로 이것이다 /etc/logrotated 는 logrotate의 설정화일들이 위치하는 곳이다 $ ls apport apt consolekit cups-daemon dpkg pm-utils ppp rsyslog samba speech-dispatcher ufw unattended-upgrades upstart 위의 화일들중에서 dpkg 을 이용해 설명하고자 한다 화일을 보면, 앞 부분에 이런 내용이 있다 /var/log/dpkglog { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root } 다른 화일이나 이 화일의 나머지 부분도 대략 이런 형식을 가지고 있다 첫 줄에는 화일 이름이 있다 즉 이 화일에 대해 설정을 하겠다는 뜻이다 여러 화일에 동일한 설정을 적용하고자 할경우, 화일 이름을 한 줄씩 적고 { 을 열 수 있다 /var/log/mailinfo /var/log/mailwarn /var/log/mailerr /var/log/maillog /var/log/daemonlog /var/log/kernlog 40 Chapter 7 로그 (syslog)

45 System monitoring Documentation, Release 01 /var/log/authlog /var/log/userlog /var/log/lprlog /var/log/cronlog /var/log/debug /var/log/messages { rotate 4 또는 아래와 같이 정규 표현식을 사용할 수도 있다 /var/log/mail* { 두번째 줄의 monthly는 cron에 의해 처리되는 부분이며, 한달 단위로 로그화일을 잘라서 관리하겠다는 의미이다 즉 cron에 의해 정해진 시간에, 첫줄에 명시된 화일을 화일명1 로 변경하고 새로운 빈 화일명의 화일을 생성한다 이 때 이전 로그들의 마지막 숫자도 전부 1씩 증가한다 Note: /etc/crondaily/logrotate 화일이 cron에 등록되어 매일 수행되며, /etc/crontab 에는 어떤 시간에 daily cron이 실행되는지 적혀있다 ubuntu 에서는 오전 6시 25분이다 25 6 * * * root test -x /usr/sbin/anacron ( cd / && run-parts --report /etc/crondaily ) 세번째 줄의 rotate 12는 총 12개의 화일, 즉, 화일명, 화일명1,, 화일명11 을 유지한다는 의미이며, 이 예에서는 1년치 로그를 보관한다 네번째와 다섯번째 줄은 마지막에 숫자가 붙은 로그들을 압축하여 관리하는 것을 뜻하며, 여섯번째 줄의 missingok 는 연속적으로 번호가 부여되어 존재해야 하는 로그 파일 중에서 빠진 부분이 있더라도 무시하고 넘어가겠다는 의미이다 notifempty 는 로그 화일이 비어 있을 경우에는 logrotate를 수행하지 않도록 한다 마지막 create 는 생성할 로그의 권한을 설정한다 Note: 화일크기에 따라 로그를 구분하기 위해서는 https://wwwdigitaloceancom/community/articles/how-tomanage-log-files-with-logrotate-on-ubuntu 을 보라 새로운 logrotate를 추가하기 위해서는 /etc/logrotate 아래에 임의의 화일을 생성하고 위의 내용을 참고하여 목적에 맞게 내용을 추가하면 된다 77 Centralized logging 원격시스템의 상태를 확인하기 위해 원격시스템에 접속하여 개별 로그를 확인하는 방법은 확실한 방법이기는 하지만, 원격시스템의 수가 많을 경우, 어려운 방법이 될 수 있다 centralized logging 이란 중앙에서 관리해야 할 중요한 정보들에 대해 원격시스템에서 서버로 로그를 전송한 후, 서버에서 이 로그들을 관리하는 방법을 의미한다 원격시스템에서 서버로 로그를 보내는 것은 비교적 간단하게 설정할 수 있지만, 서버에서는 로그를 화일에 저장할 지, DB에 저장할지, 저장된 내용을 어떻게 보여줄지 등은 좀 더 복잡한 설정이 필요하다 Note: 본 절은 을 참고하여 작성하였다 77 Centralized logging 41

46 System monitoring Documentation, Release 시간 동기화 원격시스템들의 시간이 일치하지 않는다면, 한 곳에 모아진 로그의 의미를 이상하게 만들 수도 있다 즉 정확한 시간 동기를 해야 한다는 의미이다 아래 명령을 이용하면 간단하게 인터넷에 연결된 시간서버로 부터 시간을 동기화한다 $ ntpdate ntpubuntucom 한 번 맞추어 놓은 시간도 시간이 지남에 따라 조금씩 차이가 생기기 마련이다 이를 방지하기 위해서 cron에 등록 하여 하루에 한 번씩 ntpdate를 수행하도록 한다 /etc/crondaily/ntpdate 파일을 생성하고 위의 명령어인 ntpdate ntpubuntucom 을 입력하고 저장한다 실행권한을 주기 위해 아래 명령을 수행하라 $ chmod 755 /etc/crondaily/ntpdate 이제 매일 정해진 시각마다 시간동기화를 실행한다 772 서버에서 원격시스템의 로그 받기 원격시스템에서 보내는 로그를 서버에서 받아들이기 위해서는 /etc/rsyslogconf 화일에서 아래 부분을 찾 아 주석을 해제하여야 한다 TCP를 사용할지 UDP를 사용할지에 따라 선택적으로 주석을 해제할 수도 있다 # provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 # provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514 rsyslog에서 통신 모듈의 작명방법은 input module일경우, im으로 시작하고 output module일 경우 om으로 시작 하며, 그 뒤에 프로토콜의 이름이 붙는다 imudp는 UDP input module 이라는 의미이다 이상의 설정에서 514 TCP/UDP 포트를 열어 원격시스템의 로그를 받아들일 수 있다 아래와 같이 rsyslog를 재시작하여 설정을 적용 한다 $ sudo restart rsyslog or $ sudo service rsyslog restart Note: 서버로 전송하는 로그의 양이 엄청나게 많고 원격시스템의 수도 많다면 서버에서는 넘쳐나는 로그를 처리 하지 못할 수도 있다 이런 상황에서도 모든 로그를 처리하도록 하기 위해 RELP (Reliable Event Logging Protocol) 라는 프로토콜이 제안되었으며, 로그를 버퍼에 저장하는 방법과 함께 활용하여 신뢰성을 향상시킬 수 있다 을 참고하라 773 서버로 syslog 출력 보내기 /etc/rsyslogd/50-defaultconf 에 추가했던 아래 내용을 다시 보자 local0* /var/log/testlog UDP로 로그를 보내고자 한다면, 아래처럼 수정하고 TCP를 통해 로그를 보내고자 한다면, 아래처럼 수정한다 42 Chapter 7 로그 (syslog)

47 System monitoring Documentation, Release 01 local0* 서버에서 대기포트번호를 변경하였을 경우에는 아래와 같은 형식으로 514 포트번호를 바꿀 수 있다 local0* ex) local0info Note: 본 절의 내용은 이 문서 를 참고하라(18쪽 중간쯤) 전송한 로그는 서버의 /var/log/syslog 에 기록된다 Note: 원격시스템에서 로그 메시지를 전송할 시점에 통신이 불가능하였을 경우 통신이 복구되고 나서 다음 로그 메시지를 전송할 때 이전에 전송되지 못한 메시지도 함께 전송된다 774 웹에서 syslog 결과보기 (Log Analyzer) Log Analyzer 를 개발하고 있는 Adiscon 사는 RFC 5424 (The syslog protocol) 을 제출한 회사이다 즉 syslog 전문 회사로 웹에서 syslog를 분석할 수 있는 툴을 제공한다 Log Analyzer는 php로 작성된 프로그램으로 웹서버인 apache와 mysql 데이터베이스를 이용하여 사용자에게 최종 화면을 제공한다 Note: ubuntu에서는 tasksel 이라는 명령어를 이용하여 LAMP 를 선택하면 쉽게 Apache + Mysql + Php 환경을 구축할 수 있다 추가적으로 phpmyadmin 을 설치하면 웹에서 mysql 을 편리하게 관리할 수 있다 $ sudo apt-get install phpmyadmin apache와 mysql, php가 설치되어 있다는 가정하에 이하 내용을 진행한다 syslog의 로그를 화일이 아닌 데이터베이 스에 저장하면, 검색어를 이용해 보고 싶은 로그만을 간추려 보기에 편리하다 $ sudo apt-get install rsyslog-mysql 위의 명령어를 입력하여 syslog의 로그를 mysql로 입력하는 프로그램을 설치한다 설치중에 새로운 데이터베이스 와 테이블을 만들 것을 요구하는 화면이 나온다 Yes를 눌러 데이터베이스를 만들어라 다음은 mysql 관리자(root)의 비밀번호를 묻는다 mysql 설치시 또는 이후 변경한 관리자 비밀번호를 입력한다 그 다음으로 rsyslog-mysql 사용자를 위한 새로운 비밀번호 입력을 요구한다 확인을 위해 한 번 더 비밀번호를 입력하라 (이 부분은 phpmyadmin을 설치할 때도 동일하게 묻는 것이다) rsyslog-mysql의 설치가 완료되면 /var/log/syslog 뿐만 아니라, mysql 데이터베이스에도 로그 메시지들이 저장된다 이제 데이터베이스에 대한 준비는 완료되었다 본격적으로 Log Analyzer를 설치해 보자 에서 최신 버전을 다운받으라 다운 받은 폴더로 이동한 후 아래를 차례대로 실행하라 $ $ $ $ $ $ $ $ tar zxvf loganalyzer-365targz cd loganalyzer-365/ sudo mkdir /var/www/logs sudo cp -R src/* /var/www/logs sudo cp -R contrib/* /var/www/logs cd /var/www/logs sudo chmod +x configuresh securesh sudo /configuresh 77 Centralized logging 43

48 System monitoring Documentation, Release Chapter 7 로그 (syslog)

49 System monitoring Documentation, Release 01 이제 브라우저에 를 입력하면, 아래와 같은 오류 화면이 나온다 오류가 나오는 것이 정상이므로 놀라지 말라~~ Click here to Install Adiscon LogAnalyzer! 에서 here 를 누르면 설정화면으로 이동한다 다음 내용을 참고하여 설정을 진행하라 Note: 설치 후에도 웹에서 아래 설정들을 변경할 수 있다 Number of syslog messages per page = 50 (default) 페이지당 출력되는 메시지의 수를 정의한다 웹 인터페이스에서도 이 값을 변경할 수 있으므로 우선은 default를 선택하라 Message character limit for the main view = 80 (default) 로그 메시지를 몇 글자까지 표시할 지 결정한다 잘린 부분은 마우스를 가져다 대면 볼 수 있다 이 값을 0으로 설정하면, 전체 메시지를 모두 출력하므로 많은 사람들이 사용하는 값이다 Show message details popup = yes (default) 팝업을 싫어하시는 분은 no를 사용하라 Enable User Database = no (default) 화일이 아닌 데이터베이스에 로그를 저장하였을 경우 yes로 변경하고 그 아래에 정보들을 입력한다 Database Name = Syslog 77 Centralized logging 45

50 System monitoring Documentation, Release 01 Step 6 - Creating the Main Useraccount loganalyzer 웹 화면에 접근할 때 물어보는 아이디와 비밀번호를 설정한다 Step 7 정상적으로 설정을 마쳤다면 Step 6에서 입력한 아이디와 비밀번호로 로그인 후 아래와 같은 결과를 볼 수 있다 46 Chapter 7 로그 (syslog)

51 System monitoring Documentation, Release 01 search 버튼을 누르면 다양한 검색 옵션을 사용할 수 있다 775 최근 동향 에는 최근에 새로 등장하고 있는 centralized logging 툴 들을 소개하고 있다 google trends로 분석해 본 결과 logstash 의 인기가 급상승하고 있다 77 Centralized logging 47

52 System monitoring Documentation, Release Chapter 7 로그 (syslog)

53 CHAPTER 8 nagios 모니터링이 무엇이냐고 묻는다면, 뭐라고 답할 수 있을까? modbus와 syslog, nagios 차원에서의 답은 이런식이 아닐까 한다 모니터 링 방법 modbus syslog nagios 모니터링이란 원격시스템의 변화하는 값들을 주기적으로 관찰하여 표시하고, 필요할 경우 서버에서 원격시스템의 설정값을 변경한다 원격시스템에서 발생하는 이벤트 메시지를 서버에서 통합관리한다 서버에서 원격시스템에게 정의된 내용을 묻거나, 원격시스템에 정의된 이벤트가 발생할 경우 서버로 보고한다 단순 정보 수집에 그치지 않고 미리 정해진 횟수 만큼 연속적으로 오류가 발생하면, 정해진 관리자들에게 알림 기능을 제공한다 정보의 방향 차원에서는 아래표를 보라 모니터링 방법 modbus syslog nagios 정보의 방향 양방향 (서버 주도: 서버에서 질의를 보내고 원격시스템에서 응답을 받는 형식) 단방향 (원격시스템에서 서버로 로그 메시지 전달) 양방향 (원격시스템에서 서버로 정보를 전달할 수도 있고 서버 주도로 정보를 수신하거나 원격시스템을 제어할 수도 있음) nagios는 간단한 명령어에서 스케쥴링, 알림, 웹 UI 까지 넓은 영역을 포함하고 있어 한마디로 쉽게 설명하기 어렵 다 이 글이 nagios의 전반적인 이해를 돕는데, 도움이 되기를 바란다 Note: Icinga, Shinken 등 nagios 와 동일한 또는 비슷한 기능을 하는 소프트웨어 변종들이 존재한다 81 nagios 설치 Note: 이 절은 을 참고하여 작성되었다 ubuntu에서 nagios 설치는 간단하다 apache는 이미 설치되어 있다는 가정하에 아래 명령을 수행한다 $ sudo apt-get install -y nagios3 명령 수행 후 몇 몇 입력창을 보게 될 것이다 제일 먼저 나오는 창은 메일 전송을 담당하는 postfix 에 대한 설정 이다 postfix는 nagios를 설치하고 웹화면을 구경한 후에 설치 및 설정할 수 있으므로 이 시점에서 중요한 부분은 아니라고 할 수 있다 Postfix Configuration 이 제목인 첫 창에서 아래와 같이 Internet Site를 선택한 후 OK를 클릭한다 49

54 System monitoring Documentation, Release 01 다음에 나오는 도메인 네임은 보내는 메일 주소에 뒷 부분을 입력한다 다음으로는 nagios 웹 화면에 접속할 비밀번호를 입력하는 창이 나온다 아이디는 nagiosadmin 이며, 이 아이디와 여기서 입력한 비밀번호로 웹화면에 로그인 할 수 있다 설치를 마친 후 브라우저에서 를 입력하면 로그인 창이 나오고 아이디와 비밀 번호를 입력하면 nagios 웹 화면을 볼 수 있다 nagios는 기본적으로 localhost의 load, 현재 사용자, 디스크 공간 등을 검사하도록 설정화일을 자동으로 생성한다 nagios 웹 화면 좌측 메뉴에서 services 를 누르면 아래와 같이 기본으로 설정된 항목들을 볼 수 있다(ubuntu 1304 환경) Note: Disk Space와 SSH에서 발생한 에러에 대해서는 https://helpubuntucom/community/nagios3 에서 Post Install Tasks를 참고하라 50 Chapter 8 nagios

55 System monitoring Documentation, Release 01 이제 nagios 설치를 완료하였으므로 설정을 해야 하지만, 그전에 nagios의 기본 개념에 대한 이해를 하고 넘어가자 82 nagios core에 대한 간단한 소개 Note: 이 절은 David Dosephen의 Building a Monitoring Infrastructure with Nagios 를 참고하여 작성되었다 nagios의 핵심은 작은 크기의 모니터링 프로그램인 plugin 의 스케쥴링과 알림(notification)을 위한 프레임워크라고 정의할 수 있다 본 절에서는 nagios plugin의 원리와 구조에 대해 알아본 후, nagios의 스케쥴링에 대해 알아보고자 한다 821 nagios plugin plugin은 exit 코드를 반환하여 plugin의 실행결과를 nagios에게 알릴 수 있으며, exit 코드는 아래와 같은 의미를 갖는다 Code Meaning Ok Warning Critical Unknown Note: ls와 같은 유닉스 명령어도 nagios plugin과 동일한 방식으로 exit code를 반환하며, echo $? 명령어로 결과를 확인할 수 있다 nagios plugin은 exit code 이외에도 문자열을 반환하여 세부 정보를 관리자에게 알릴 수 있다 다음은 예제 plugin 이며, echo문에서 문자열을 출력하고 exit문으로 exit code를 반환한다 #!/bin/sh OUTPUT= ping -c tail -n2 if [ $? -gt 0 ] then echo "CRITICAL!! $OUTPUT" exit 2 else echo "OK! $OUTPUT" exit 0 fi nagios plugin의 역할은 다음 두가지로 나눌 수 있다 Host로부터 정보를 가져온다 (예, CPU 로드, indexhtml) Host의 특정 상태나 비교 결과를 exit code로 반환한다 이상의 내용에서 알 수 있는 바와 같이 nagios plugin은 독립적인 명령어의 역할도 수행할 수 있으므로 테스트 목적으로 간단하게 사용해 볼 수 있다 Note: nagios에서는 많은 수의 plugin을 제공하고 있다 https://wwwnagios-pluginsorg/ 를 참고하라 원격지의 호스트에 대해서도 nagios를 실행할 수 있다 이 절에서는 ssh를 이용한 원격 모니터링의 원리 설명에 집 중할 것이다 원격 호스트의 상태를 모니터링하기 위해서 ssh의 원격지 명령어 수행방법을 이용한다 아래 명령은 원격 호스트 exampleorg의 test 계정 홈 디렉토리에서 ls를 수행한 결과를 반환한다 82 nagios core에 대한 간단한 소개 51

56 System monitoring Documentation, Release 01 $ ssh "ls -CF" build/ tmp/ log/ 이 명령어에서 ls -CF 부분을 nagios plugin으로 교체하면 ssh 문 자체로 nagios plugin과 같은 역할을 하게 된다 원격호스트(exampleorg)에 /usr/local/bin/load_checkersh 를 생성하고 아래 코드를 내용으로 입력하 라 시스템 부하의 값이 1를 넘어가면 Critical 오류를 발생시키는 코드이다 #!/bin/bash LOAD= uptime awk {print $12} if (( $(bc <<< "$LOAD > 1") )) then echo "Critical! load on hostname is $LOAD" exit 2 else echo "OK! Load on hostname is $LOAD" exit 0 fi 다음 명령을 실행하여 실행권한을 주고 실행시켜 보자 $ sudo chmod a+x /usr/local/bin/load_checkersh $ load_checkersh OK! Load on hostname is 015 $ echo $? 0 이제 아래 명령으로 원격호스트의 명령을 실행시킬 수 있다 $ ssh /usr/local/bin/load_checkersh OK! Load on hostname is 013 $ echo $? 0 위의 ssh 문을 nagios의 plugin으로 만들기 위해 아래와 같은 스크립트를 작성하여 서버에 저장한다 #!/bin/sh #get the ouput from the remote load_checker script OUTPUT= ssh "/usr/local/bin/load_checkersh" #get the exit code CODE=$? echo $OUTPUT exit $CODE nagios 서버에 위치한 위 코드는 완벽한 nagios plugin으로 원격호스트의 시스템 부하에 대한 출력문과 exit 코드를 반환한다 이 방법은 nagios에서의 원격 모니터링 원리를 잘 설명하지만, 하나의 단점이 존재한다 서버에서 원격 시스템으로 로그인 없이 ssh 접속이 가능해야 한다 이에 대해서는 서버에서 원격시스템 접근 을 참고하라 nagios에서는 ssh를 이용하는 방법이외에 nagios에서 개발한 NRPE (Nagios Remote Plugin Executor)를 이용해 원 격시스템의 모니터링을 수행할 수 있다 자세한 방법은 각자 알아보시고, 여기서는 이 정도로 마무리하고자 한다 822 host 와 service 아래 명령어를 cron에 등록해 두면 특정 서버로의 연결이 불가능할 경우 이메일을 받을 수 있다 이 명령은 icmp 메 시지 5개를 server1으로 전송하여 한번이라도 응답을 받지 못했을 경우 서버가 다운되었다는 메시지를 메일주소로 52 Chapter 8 nagios

57 System monitoring Documentation, Release 01 보내는 스크립트이다 $ ping -qc 5 server1 (echo "server1 is down" mail 간단하면서도 강력한 모니터링 방법이라고 할 수 있다 하지만, 이 방법에는 약간의 문제가 있다 관리하는 서버가 40대 있다고 하자 모니터링 정비와 원격 서버들 사이의 라우터에 고장이 발생했을 경우, 관리자는 40개의 중복된 메일을 한꺼번에 받게 된다 또, 메일을 받을 사람이 늘어나면, 메일링 리스트를 관리해야 한다 모니터링 항목에 따라 그룹핑을 해야 할 경우에는, 두 개이상의 메일링 리스트에 포함되어 중복된 메일을 수신하는 사람이 생길 것이다 nagios는 바로 이런 문제를 해결하는 방법을 제시하며, 이 과정에서 host와 service의 개념을 정의하였다 host는 인터넷에 연결된 장비를 가리키며, service는 host에서 제공하는 소프트웨어 데몬을 의미한다 그러므로 하 나의 장비에 대해 host는 up/down 의 단일 정보만 존재하지만, service에 대해서는 여러 개의 서비스 check들이 있을 수 있다 host 와 service의 구분이 필요한 이유는 다음과 같다 host로의 접근이 불가능한 상태에서 그 host의 service에 대한 점검을 진행하지 않으며, host가 up 상태일때만, service에 대한 스케쥴링을 수행한다 이와 같은 계층구조를 host간에 또는 service간에도 설정할 수 있다 host들 간에는 앞으로 언급할 설정화일에서 parents 지시자(directive)를 사용하여 설정하며, 물리적인 계층 구조로 설명할 수 없는 경우에는 의존성 정의 (dependency defintions)를 이용하여 논리적 계층구조를 정의한다 host 와 service 개념으로 나타내기 어려운 모니터링 대상도 있다 예를 들어 대학내의 메일 서비스를 예로 들면 메인 메일 서버와 메일을 전송하는 통신 장비들, 사용자용 웹 메일 관리자 등 여러 host와 service들이 하나의 통합 서비 스를 구성하는 경우도 있다 이런 경우를 위해 nagios에서는 host group과 service group이라는 개념을 제시한다 즉 하나의 service group을 구성하는 host들과 service들을 하나로 묶어서 관리할 수 있는 기법이다 nagios 웹 화면의 왼쪽 메뉴를 보면 hosts 와 services, host groups, service groups 가 있다 nagios 웹을 활용할 때 제일 많이 볼 내용들이므로 이 시점에서 한 번씩 보면 좋을 것 같다 물론 아직 아무런 설정도 하지 않아, localhost 에 대한 내용만 들어 있지만, 이 곳에 나의 목적상 무엇이 추가될 수 있는지 각자 고민해 보기 바란다 823 스케쥴링 사용자 입장에서 보면, nagios는 주기적으로 plugin을 수행하면서 exit code에 변화가 발생할 때 사용자에게 알려주 는 역할을 한다 여기서 주기적으로 plugin을 수행할 때 어떤 주기로 진행되는지, 그리고 exit code가 우연히 한번만 변화했을 때가 아니라 몇 번 동안 변화된 값을 유지하는지에 따라 상태 변화가 있는 것으로 간주하는지를 결정하는 방식을 스케쥴링(scheduling)에서 처리한다 service에 대한 점검은 host가 살아있는 상태에서만 의미를 갖는다 그러므로 일반적인 상황에서 host에 대한 점검은 service에 대한 plugin에서 오류 (0이 아닌 exit 코드값)를 반환할 때에만 수행된다 cron에서는 명시적인 날짜와 시간을 이용하여 특정 작업을 수행한다 하지만, nagios에서는 plugin에서 결과값을 반환할 때까지 기다리는 시간을 정해 스케쥴링을 수행한다 이 지점에서 중요한 두 가지 점이 있을 수 있다 plugin을 정해진 시간에 수행할 수 있는가? 정해진 시간 내에 plugin의 수행을 완료할 수 있는가? 첫 번째 지적에 대해, 정상적인 또는 시스템에 여유가 있는 상황에서는 정해진 시간에 plugin을 실행할 수 있겠지만, 관리하는 모니터링의 대상이 많아질수록 제시간에 실행하지 못하는 상황이 발생할 수 있다 제때에 실행하지 못했 을 경우 다음 스케쥴링은 지연되지 않고 원래 실행되었어야 할 시간을 기준으로 그 다음 스케쥴링 시간에 plugin을 실행하기 위해 시도한다 두 번째 경우에서는, 네트워크의 문제 등으로 결과값을 받는데까지 걸리는 시간이 길어질 수 있다 다음 그림은 두 번째 경우에 대해 잘 설명해 주고 있다 82 nagios core에 대한 간단한 소개 53

58 System monitoring Documentation, Release 01 Normal check interval 은 설정화일에서 정해지는 값으로 exit 코드 0(OK)을 반환할 경우의 스케쥴링 기본 간격을 의미한다 exit 코드의 반환이 늦어지는 경우에는 Normal check interval 을 무시하고 결과값을 받은 잠시 후에 plugin의 수행을 시도한다 Normal check interval 의 반대되는 개념으로 retry check interval 이 존재한다 0 이외의 exit 코드를 반환한 경우 해당 오류가 지속되는지를 검사하기 위한 간격이다 정해진 횟수 (max check attempts)만큼 plugin 실행 오류가 지 속될 경우 관리자에게 메일을 전송한다 Max check attempts 에는 최초의 오류를 감지한 건도 포함한다 그러므로 max check attempts 를 1로 설정하면, 재시도 없이 바로 notification 을 발생시킨다 아래 그림은 Max check attempts 를 3으로 설정한 환경에서 plugin 실행 오류 발생시 check interval의 변화를 나타낸다 재시도(retry)의 단계에서는 아직 완전한 상태변화를 인정하지 않는다 이 상태를 soft states 라고 말하며, 이는 soft error states 와 soft recovery states 로 나눌수 있다 예상할 수 있는 바와 같이 OK상 태에서 그 이외에 상태로 변화하는 상황을 soft error states 라고 하며, 반대의 경우는 soft recovery states 라고 한다 상태가 확정되면 hard states 라고 부른다 824 알림 (Notification) 이메일 에이전트인 postfix에 대한 설정을 마쳤다면, hard states 로 변화가 발생하는 시점에 nagios는 자동으로 알림을 보낸다 알림에 대한 현재 설정은 웹화면의 Tactical Overview 에서 확인할 수 있다 알림과 관련한 문제발생시 유용한 정보를 제공할 것이다 알림의 상태는 plugin의 exit 코드와 비슷한 듯하며 다르다 host와 service 각각의 알림 상태는 아래 표와 같다 54 Chapter 8 nagios

59 System monitoring Documentation, Release 01 Host States Unreachable (u) Down (d) Recovered (r) Flapping (f) Service States Unknown (u) Critical (c) Warning (w) Recovered (r) Flapping (f) 사용자는 nagios 설정시 위 표중에서 어떤 상태가 발생했을 때 알림을 받을지 결정할 수 있다 Flapping은 상태 변 화가 빈번하게 발생할 때 반환되는 상태값이고, recovered는 비정상상태에서 동작상태로 복귀된 상태를 나타낸다 825 External commands Note: 이 절의 내용은 을 참고하여 작성하였다 nagios는 기본적으로 nagios에서 명령어를 실행하는 주도권을 가지고 응답을 받아 모니터링을 수행한다 하지만, 이러한 주기적인 방식이 아닌 외부에서 발생한 간헐적인 이벤트들을 처리하기 위한 방법을 제공한다 외부 명령어 (external command)에는 cgi 명령어들도 포함된다 아래 그림을 보면, 외부 명령어에서 External Command File 에 결과를 기록하면 nagios의 External Command Logic 에서 주기적으로 이 결과를 읽어 모니터링을 수행한다 External Command File에는 아래와 같은 내용이 기록된다 외부에서 기록이 가능해야 하므로 이 화일의 권한 설정 을 기록 가능으로 해 줘야 한다 [time] command_id;command_arguments 위에서 time은 unix의 timestamp로 ubuntu에서는 date "+%s" 명령어로 현재의 timestamp를 얻을 수 있다 82 nagios core에 대한 간단한 소개 55

SBR-100S User Manual

SBR-100S User Manual ( 1 / 13 ) SBR-100S 모델에 대한 사용자 펌웨어 업그레이드 방법을 안내해 드립니다. SBR-100S 는 신규 펌웨어가 있을시 FOTA(자동업데이트) 기능을 통하여 자동 업그레이드가 되며, 필요시 사용자가 신규 펌웨어를 다운받아 수동으로 업그레이드 할 수 있습니다. 1. 준비하기 1.1 연결 장치 준비 펌웨어 업그레이드를 위해서는 SBR-100S

More information

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

Microsoft Word - windows server 2003 수동설치_non pro support_.doc Windows Server 2003 수동 설치 가이드 INDEX 운영체제 설치 준비과정 1 드라이버를 위한 플로피 디스크 작성 2 드라이버를 위한 USB 메모리 작성 7 운영체제 설치 과정 14 Boot Sequence 변경 14 컨트롤러 드라이버 수동 설치 15 운영체제 설치 17 운영체제 설치 준비 과정 Windows Server 2003 에는 기본적으로

More information

<3035313230325FBBE7B0EDB3EBC6AE5FB5F0C6FAC6AEC6D0BDBABFF6B5E5C3EBBEE0C1A128BCF6C1A4292E687770>

<3035313230325FBBE7B0EDB3EBC6AE5FB5F0C6FAC6AEC6D0BDBABFF6B5E5C3EBBEE0C1A128BCF6C1A4292E687770> 네트워크 장비의 디폴트 로그인 패스워드 취약점 및 대책 2005. 11. 30 본 보고서의 전부나 일부를 인용시 반드시 [자료: 한국정보보호진흥원(KISA)]룰 명시하여 주시기 바랍니다. - 1 - 1. 개요 패스워드 관리는 보안의 가장 기본적인 사항으로 유추하기 어려운 패스워드를 사용하고, 주기적 으로 패스워드를 변경하는 등 패스워드 관리에 신경을 많이 쓰고

More information

시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1)

시스코 무선랜 설치운영 매뉴얼(AP1200s_v1.1) [ Version 1.3 ] Access Point,. Access Point IP 10.0.0.1, Subnet Mask 255.255.255.224, DHCP Client. DHCP Server IP IP,, IP 10.0.0.X. (Tip: Auto Sensing Straight, Cross-over.) step 1]. step 2] LAN. step

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Install the PDI on CentOS 2013.04 G L O B E P O I N T 1 Ⅰ linux 구성 II Pentaho Install 2013, Globepoint Inc. All Rights Reserved. 2 I. Linux 구성 2013, Globepoint Inc. All Rights Reserved. 3 IP 설정 1. 설정파일

More information

OPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block

More information

TTA Journal No.157_서체변경.indd

TTA Journal No.157_서체변경.indd 표준 시험인증 기술 동향 FIDO(Fast IDentity Online) 생체 인증 기술 표준화 동향 이동기 TTA 모바일응용서비스 프로젝트그룹(PG910) 의장 SK텔레콤 NIC 담당 매니저 76 l 2015 01/02 PASSWORDLESS EXPERIENCE (UAF standards) ONLINE AUTH REQUEST LOCAL DEVICE AUTH

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D313939392D382E687770> i ii iii iv v vi 1 2 3 4 가상대학 시스템의 국내외 현황 조사 가상대학 플랫폼 개발 이상적인 가상대학시스템의 미래상 제안 5 웹-기반 가상대학 시스템 전통적인 교수 방법 시간/공간 제약을 극복한 학습동기 부여 교수의 일방적인 내용전달 교수와 학생간의 상호작용 동료 학생들 간의 상호작용 가상대학 운영 공지사항,강의록 자료실, 메모 질의응답,

More information

APOGEE Insight_KR_Base_3P11

APOGEE Insight_KR_Base_3P11 Technical Specification Sheet Document No. 149-332P25 September, 2010 Insight 3.11 Base Workstation 그림 1. Insight Base 메인메뉴 Insight Base Insight Insight Base, Insight Base Insight Base Insight Windows

More information

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상 Android 용 Brother Image Viewer 설명서 버전 0 KOR 아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상표입니다. Android는

More information

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수 사용 설명서 TeraStation Pro II TS-HTGL/R5 패키지 내용물: 본체 (TeraStation) 이더넷 케이블 전원 케이블 TeraNavigator 설치 CD 사용 설명서 (이 설명서) 제품 보증서 www.buffalotech.com 소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를

More information

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks

XSS Attack - Real-World XSS Attacks, Chaining XSS and Other Attacks, Payloads for XSS Attacks XSS s XSS, s, May 25, 2010 XSS s 1 2 s 3 XSS s MySpace 사건. Samy (JS.Spacehero) 프로필 페이지에 자바스크립트 삽입. 스크립트 동작방식 방문자를 친구로 추가. 방문자의 프로필에 자바스크립트를 복사. 1시간 만에 백만 명이 친구등록. s XSS s 위험도가 낮은 xss 취약점을 다른 취약점과 연계하여

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인

본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게 해 주는 프로그램입니다. 다양한 기능을 하는 플러그인과 디자인 스마일서브 CLOUD_Virtual 워드프레스 설치 (WORDPRESS INSTALL) 스마일서브 가상화사업본부 Update. 2012. 09. 04. 본문서는 초급자들을 대상으로 최대한 쉽게 작성하였습니다. 본문서에서는 설치방법만 기술했으며 자세한 설정방법은 검색을 통하시기 바랍니다. 1. 설치개요 워드프레스는 블로그 형태의 홈페이지를 빠르게 만들수 있게

More information

Assign an IP Address and Access the Video Stream - Installation Guide

Assign an IP Address and Access the Video Stream - Installation Guide 설치 안내서 IP 주소 할당 및 비디오 스트림에 액세스 책임 본 문서는 최대한 주의를 기울여 작성되었습니다. 잘못되거나 누락된 정보가 있는 경우 엑시스 지사로 알려 주시기 바랍니다. Axis Communications AB는 기술적 또는 인쇄상의 오류에 대해 책 임을 지지 않으며 사전 통지 없이 제품 및 설명서를 변경할 수 있습니다. Axis Communications

More information

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드] 리눅스 설치 Vmware를 이용한 Fedora Core 8 설치 소프트웨어실습 1 Contents 가상 머신 실습 환경 구축 Fedora Core 8 설치 가상 머신 가상 머신 가상 머신의 개념 VMware의 설치 VMware : 가상 머신 생성 VMware의 특징 실습 환경 구축 실습 환경 구축 Fedora Core 8 설치 가상 머신의 개념 가상 머신 (Virtual

More information

휠세미나3 ver0.4

휠세미나3 ver0.4 andromeda@sparcs:/$ ls -al dev/sda* brw-rw---- 1 root disk 8, 0 2014-06-09 18:43 dev/sda brw-rw---- 1 root disk 8, 1 2014-06-09 18:43 dev/sda1 brw-rw---- 1 root disk 8, 2 2014-06-09 18:43 dev/sda2 andromeda@sparcs:/$

More information

10X56_NWG_KOR.indd

10X56_NWG_KOR.indd 디지털 프로젝터 X56 네트워크 가이드 이 제품을 구입해 주셔서 감사합니다. 본 설명서는 네트워크 기능 만을 설명하기 위한 것입니다. 본 제품을 올바르게 사 용하려면 이 취급절명저와 본 제품의 다른 취급절명저를 참조하시기 바랍니다. 중요한 주의사항 이 제품을 사용하기 전에 먼저 이 제품에 대한 모든 설명서를 잘 읽어 보십시오. 읽은 뒤에는 나중에 필요할 때

More information

UDP Flooding Attack 공격과 방어

UDP Flooding Attack 공격과 방어 황 교 국 (fullc0de@gmail.com) SK Infosec Co., Inc MSS Biz. Security Center Table of Contents 1. 소개...3 2. 공격 관련 Protocols Overview...3 2.1. UDP Protocol...3 2.2. ICMP Protocol...4 3. UDP Flood Test Environment...5

More information

o o o 8.2.1. Host Error 8.2.2. Message Error 8.2.3. Recipient Error 8.2.4. Error 8.2.5. Host 8.5.1. Rule 8.5.2. Error 8.5.3. Retry Rule 8.11.1. Intermittently

More information

SIGIL 완벽입문

SIGIL 완벽입문 누구나 만드는 전자책 SIGIL 을 이용해 전자책을 만들기 EPUB 전자책이 가지는 단점 EPUB이라는 포맷과 제일 많이 비교되는 포맷은 PDF라는 포맷 입니다. EPUB이 나오기 전까지 전 세계에서 가장 많이 사용되던 전자책 포맷이고, 아직도 많이 사 용되기 때문이기도 한며, 또한 PDF는 종이책 출력을 위해서도 사용되기 때문에 종이책 VS

More information

untitled

untitled Step Motor Device Driver Embedded System Lab. II Step Motor Step Motor Step Motor source Embedded System Lab. II 2 open loop, : : Pulse, 1 Pulse,, -, 1 +5%, step Step Motor (2),, Embedded System Lab. II

More information

1

1 1 2 3 4 5 6 b b t P A S M T U s 7 m P P 8 t P A S M T U s 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Chapter 1 29 1 2 3 4 18 17 16 15 5 6 7 8 9 14 13 12 11 10 1 2 3 4 5 9 10 11 12 13 14 15

More information

목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host) 서버 설정... 9 W7CLIENT (Windows 7 Client) 클라이얶트 설정

목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host) 서버 설정... 9 W7CLIENT (Windows 7 Client) 클라이얶트 설정 W2K8 R2 RemoteApp 및 Web Access 설치 및 구성 Step-By-Step 가이드 Microsoft Korea 이 동 철 부장 2009. 10 페이지 1 / 60 목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host)

More information

VZ94-한글매뉴얼

VZ94-한글매뉴얼 KOREAN / KOREAN VZ9-4 #1 #2 #3 IR #4 #5 #6 #7 ( ) #8 #9 #10 #11 IR ( ) #12 #13 IR ( ) #14 ( ) #15 #16 #17 (#6) #18 HDMI #19 RGB #20 HDMI-1 #21 HDMI-2 #22 #23 #24 USB (WLAN ) #25 USB ( ) #26 USB ( ) #27

More information

ThinkVantage Fingerprint Software

ThinkVantage Fingerprint Software ThinkVantage 지문 인식 소프트웨어 First Edition (August 2005) Copyright Lenovo 2005. Portions Copyright International Business Machines Corporation 2005. All rights reserved. U.S. GOVERNMENT USERS RESTRICTED RIGHTS:

More information

1. GigE Camera Interface를 위한 최소 PC 사양 CPU : Intel Core 2 Duo, 2.4GHz이상 RAM : 2GB 이상 LANcard : Intel PRO/1000xT 이상 VGA : PCI x 16, VRAM DDR2 RAM 256MB

1. GigE Camera Interface를 위한 최소 PC 사양 CPU : Intel Core 2 Duo, 2.4GHz이상 RAM : 2GB 이상 LANcard : Intel PRO/1000xT 이상 VGA : PCI x 16, VRAM DDR2 RAM 256MB Revision 1.0 Date 11th Nov. 2013 Description Established. Page Page 1 of 9 1. GigE Camera Interface를 위한 최소 PC 사양 CPU : Intel Core 2 Duo, 2.4GHz이상 RAM : 2GB 이상 LANcard : Intel PRO/1000xT 이상 VGA : PCI x

More information

노트북 IT / 모바일 데스크탑 34 올인원PC 35 PC 소프트웨어 포터블SSD / SSD / 메모리카드 36 태블릿 37 휴대폰 39 PC 솔루션 IT / 모바일 IT / 모바일 노트북 29 삼성전자는 Windows 를 권장합니다. 삼성전자만의 편리하고 다양한 소프트웨어를 통해 초보자도 보다 쉽고 빠르게 이용 가능합니다. Easy Settings 삼성 패스트

More information

ActFax 4.31 Local Privilege Escalation Exploit

ActFax 4.31 Local Privilege Escalation Exploit NSHC 2013. 05. 23 악성코드 분석 보고서 [ Ransomware 악성코드 ] 사용자의 컴퓨터를 강제로 잠그고 돈을 요구하는 형태의 공격이 기승을 부리고 있 습니다. 이러한 형태의 공격에 이용되는 악성코드는 Ransomware로 불리는 악성코 드 입니다. 한번 감염 시 치료절차가 복잡하며, 보고서 작성 시점을 기준으로 지속 적인 피해자가 발생되고

More information

TCP.IP.ppt

TCP.IP.ppt TCP/IP TCP/IP TCP/IP TCP/IP TCP/IP Internet Protocol _ IP Address Internet Protocol _ Subnet Mask Internet Protocol _ ARP(Address Resolution Protocol) Internet Protocol _ RARP(Reverse Address Resolution

More information

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre

무시하고진행합니다. $ sudo rootstock -d precise --seed ubuntu-standard -x en_us.utf-8 -f ubuntu -l ubuntu -p ubuntu -i 2G I: Running on a x86_64 machine I: Cre ( 망고 220 ubuntu 포팅 ) $ wget http://launchpadlibrarian.net/52888742/rootstock_0.1.99.4-0ubuntu1_i386.deb --2014-09-23 18:02:26-- http://launchpadlibrarian.net/52888742/rootstock_0.1.99.4-0ubuntu1_i386.deb

More information

View Licenses and Services (customer)

View Licenses and Services (customer) 빠른 빠른 시작: 시작: 라이선스, 라이선스, 서비스 서비스 및 주문 주문 이력 이력 보기 보기 고객 가이드 Microsoft 비즈니스 센터의 라이선스, 서비스 및 혜택 섹션을 통해 라이선스, 온라인 서비스, 구매 기록 (주문 기록)을 볼 수 있습니다. 시작하려면, 비즈니스 센터에 로그인하여 상단 메뉴에서 재고를 선택한 후 내 재고 관리를 선택하십시오. 목차

More information

슬라이드 1

슬라이드 1 DHCP (Dynamic Host Configuration Protocol) Oct 2006 Technical Support Div. Tel : 031-739-6800 Mail : support@corecess.com DHCP Motivations Automatic network configuration for clients No administrator intervention

More information

Microsoft Word - Automap3

Microsoft Word - Automap3 사 용 설 명 서 본 설명서는 뮤직메트로에서 제공합니다. 순 서 소개 -------------------------------------------------------------------------------------------------------------------------------------------- 3 제품 등록 --------------------------------------------------------------------------------------------------------------------------------------

More information

컴퓨터관리2번째시간

컴퓨터관리2번째시간 Company 컴퓨터 관리 참고 자료 PC 운영체제 POST 기능 :, ROM BIOS ( : [F8]) 1. Windows XP Windows XP 사용자 계정 :,,, 강화된 디지털 미디어 지원 기능 : (Windows Movie Maker), CD (Windows Media Player), Windows 홈 네트워크 기능 :, 강화된 시스템 관리 :,

More information

Microsoft Word - Installation and User Manual_CMD V2.2_.doc

Microsoft Word - Installation and User Manual_CMD V2.2_.doc CARDMATIC CMD INSTALLATION MANUAL 씨앤에이씨스템(C&A SYSTEM Co., Ltd.) 본사 : 서울특별시 용산구 신계동 24-1(금양빌딩 2층) TEL. (02)718-2386( 代 ) FAX. (02) 701-2966 공장/연구소 : 경기도 고양시 일산동구 백석동 1141-2 유니테크빌 324호 TEL. (031)907-1386

More information

1. 무선 이미지 유틸리티 설명 1-1. 기능 이 Wireless Image Utility 는 안드로이드용 응용 프로그램입니다. 안드로이드 태블릿 또는 안드로이드 스마트폰에서 사용할 수 있습니다. 안드로이드 기기에 저장된 파일을 프로젝터로 무선 전송 컴퓨터에서 USB

1. 무선 이미지 유틸리티 설명 1-1. 기능 이 Wireless Image Utility 는 안드로이드용 응용 프로그램입니다. 안드로이드 태블릿 또는 안드로이드 스마트폰에서 사용할 수 있습니다. 안드로이드 기기에 저장된 파일을 프로젝터로 무선 전송 컴퓨터에서 USB 무선 이미지 유틸리티 버전 1.1 NEC 프로젝터용 안드로이드 응용 프로그램 무선 이미지 유틸리티 작동 설명서 NEC's Image 목차 1. 무선 이미지 유틸리티 설명...2 1-1. 기능...2 1-2. 작동 조건...5 1-3. 작동 순서...6 2. 안드로이드 기기에 Wireless Image Utility 설치...6 3. 안드로이드 기기에 투사할

More information

R50_51_kor_ch1

R50_51_kor_ch1 S/N : 1234567890123 Boot Device Priority NumLock [Off] Enable Keypad [By NumLock] Summary screen [Disabled] Boor-time Diagnostic Screen [Disabled] PXE OPROM [Only with F12]

More information

MySQL-.. 1

MySQL-.. 1 MySQL- 기초 1 Jinseog Kim Dongguk University jinseog.kim@gmail.com 2017-08-25 Jinseog Kim Dongguk University jinseog.kim@gmail.com MySQL-기초 1 2017-08-25 1 / 18 SQL의 기초 SQL은 아래의 용도로 구성됨 데이터정의 언어(Data definition

More information

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가 www.kdnetwork.com 특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가능할 삭제할 건전지 사용자를 위한 개별 비밀번호 및 RF카드

More information

Windows 네트워크 사용 설명서

Windows 네트워크 사용 설명서 Windows 네트워크 사용 설명서 (Wireless Manager mobile edition 5.5) 그림의 예로 사용된 프로젝터는 PT-FW300NTEA 입니다. 한국어 TQBH0205-5 (K) 목차 소프트웨어 라이센스 계약 3 무선 연결 사용 시 참고 사항 4 보안 관련 참고 사항 6 소프트웨어 요구 사항 12 시스템 요구 사항 12 Wireless

More information

untitled

untitled (Rev. 1.6) 1 1. MagicLAN.......8 1.1............8 1.2........8 1.3 MagicLAN.......10 2.........12 2.1.... 12 2.2 12 2.3....12 3. Windows 98SE/ME/2000/XP......13 3.1.....13 3.2 Windows 98SE.... 13 3.3 Windows

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

Adobe Flash 취약점 분석 (CVE-2012-0754)

Adobe Flash 취약점 분석 (CVE-2012-0754) 기술문서 14. 08. 13. 작성 GNU C library dynamic linker $ORIGIN expansion Vulnerability Author : E-Mail : 윤지환 131ackcon@gmail.com Abstract 2010 년 Tavis Ormandy 에 의해 발견된 취약점으로써 정확한 명칭은 GNU C library dynamic linker

More information

05Àå

05Àå CHAPTER 05 NT,, XP,. NT NTFS, XP. D,,. XP x NT,,, ( x, x ). NT/ /XP,.. PC NT NT. + Guide to Software: Understanding and Installing Windows 2000 and Windows NT + SOFTWARE Guide to Software 3/e SOFTWARE

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Verilog: Finite State Machines CSED311 Lab03 Joonsung Kim, joonsung90@postech.ac.kr Finite State Machines Digital system design 시간에배운것과같습니다. Moore / Mealy machines Verilog 를이용해서어떻게구현할까? 2 Finite State

More information

목차 제 1 장 inexio Touch Driver소개... 3 1.1 소개 및 주요 기능... 3 1.2 제품사양... 4 제 2 장 설치 및 실행... 5 2.1 설치 시 주의사항... 5 2.2 설치 권고 사양... 5 2.3 프로그램 설치... 6 2.4 하드웨

목차 제 1 장 inexio Touch Driver소개... 3 1.1 소개 및 주요 기능... 3 1.2 제품사양... 4 제 2 장 설치 및 실행... 5 2.1 설치 시 주의사항... 5 2.2 설치 권고 사양... 5 2.3 프로그램 설치... 6 2.4 하드웨 최종 수정일: 2010.01.15 inexio 적외선 터치스크린 사용 설명서 [Notes] 본 매뉴얼의 정보는 예고 없이 변경될 수 있으며 사용된 이미지가 실제와 다를 수 있습니다. 1 목차 제 1 장 inexio Touch Driver소개... 3 1.1 소개 및 주요 기능... 3 1.2 제품사양... 4 제 2 장 설치 및 실행... 5 2.1 설치 시

More information

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지 PX-8000 SYSTEM 8 x 8 Audio Matrix with Local Control 2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지역에

More information

IRISCard Anywhere 5

IRISCard Anywhere 5 이 빠른 사용자 가이드는 IRISCard Anywhere 5 및 IRISCard Corporate 5 스캐너의 설치와 시작을 도와 드립니다. 이 스캐너와 함께 제공되는 소프트웨어는: - Cardiris Pro 5 및 Cardiris Corporate 5 for CRM (Windows 용) - Cardiris Pro 4 (Mac OS 용) Cardiris 의

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

H3250_Wi-Fi_E.book

H3250_Wi-Fi_E.book 무선 LAN 기능으로 할 수 있는 것 2 무선 LAN 기능으로 할 수 있는 것 z q l D w 3 Wi-Fi 기능 플로우차트 z q l D 4 Wi-Fi 기능 플로우차트 w 5 본 사용 설명서의 기호 설명 6 각 장별 목차 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 목차 1 2 3 4 8 목차 5 6 7 8 9 9 목차 10 11 12

More information

Microsoft PowerPoint - chap9 [호환 모드]

Microsoft PowerPoint - chap9 [호환 모드] 제 9 장프로세스관계 숙대창병모 1 Contents 1. Logins 2. Process Groups 3. Sessions 4. Controlling Terminal 5. Job Control 숙대창병모 2 로그인 숙대창병모 3 터미널로그인 /etc/ttys: 1 line per terminal device getty: opens terminal device

More information

1

1 2/33 3/33 4/33 5/33 6/33 7/33 8/33 9/33 10/33 11/33 12/33 13/33 14/33 15/33 16/33 17/33 5) 입력을 다 했으면 확인 버튼을 클릭합니다. 6) 시작 페이지가 제대로 설정이 되었는지 살펴볼까요. 익스플로러를 종료하고 다시 실행시켜 보세요. 시작화면에 야후! 코리아 화면이 뜬다면 설정 완료..^^

More information

Microsoft Word - ZIO-AP1500N-Manual.doc

Microsoft Word - ZIO-AP1500N-Manual.doc 목 차 사용자 설명서 1 장 제품 소개 ------------------------------ 1 2 장 제품 내용물 ---------------------------- 2 3 장 AP 연결 설정 방법 ------------------------ 3 4 장 동작 방식별 설정 방법 --------------------- 7 (1) 엑세스 포인트 모드 -----------------------

More information

안전을 위한 주의사항 제품을 올바르게 사용하여 위험이나 재산상의 피해를 미리 막기 위한 내용이므로 반드시 지켜 주시기 바랍니다. 2 경고 설치 관련 지시사항을 위반했을 때 심각한 상해가 발생하거나 사망에 이를 가능성이 있는 경우 설치하기 전에 반드시 본 기기의 전원을

안전을 위한 주의사항 제품을 올바르게 사용하여 위험이나 재산상의 피해를 미리 막기 위한 내용이므로 반드시 지켜 주시기 바랍니다. 2 경고 설치 관련 지시사항을 위반했을 때 심각한 상해가 발생하거나 사망에 이를 가능성이 있는 경우 설치하기 전에 반드시 본 기기의 전원을 Digital Video Recorder 간편설명서 XD3316 안전을 위한 주의사항 제품을 올바르게 사용하여 위험이나 재산상의 피해를 미리 막기 위한 내용이므로 반드시 지켜 주시기 바랍니다. 2 경고 설치 관련 지시사항을 위반했을 때 심각한 상해가 발생하거나 사망에 이를 가능성이 있는 경우 설치하기 전에 반드시 본 기기의 전원을 차단하고, 전원 플러그를 동시에

More information

별지 제10호 서식

별지 제10호 서식 국립국어원 정보 보안 업무 처리 규정 제정 2013. 12. 26. 국립국어원 예규 제 95호 일부개정 2014. 3. 10. 국립국어원 예규 제111호 제 1 장 총 칙 제 1 조(목적) 이 규정은 국립국어원의 정보보안업무 수행에 필요한 사항을 규정함을 목적으로 한다. 제 2 조(정의) 이 규정에서 사용하는 용어의 정의는 다음 각 호와 같다. 1. 부서 라

More information

*2008년1월호진짜

*2008년1월호진짜 3. USB 이동식저장장치를이용하여전파되는악성코드분석 1. 개 요 최근 USB 이동식 저장장치를 통하여 전파되는 악성코드에 대한 감염피해가 증가하고 있어 주의가 필요하다. 이번에 확인된 ntion.exe 악성코드는 감염 시, 특정 사이트에 접속하여 추가 악성코드를 다운로드하는 Dropper 기능을 수행한다. 또한, 웹 서버가 감염될 경우는 웹 서버내의 웹 페이지가

More information

SBR-100S User Manual

SBR-100S User Manual ( 1 / 25 ) SBR-200S 모델에 대한 Web-CM 사용을 위한 방법을 안내해 드립니다. 아래 안내 사항은 제품의 초기 설정값을 기준으로 작성되어 있습니다. 1. Web-CM 이띾? SBR-200S 의 WIFI, LTE 의 상태 확인 및 설정을 변경하기 위해서는 Web-CM 을 사용해야 하며, Web-CM 은 SBR-200S 에 연결된 스마트폰이나

More information

i-movix 특징 l 안정성 l 뛰어난화질 l 차별화된편의성

i-movix 특징 l 안정성 l 뛰어난화질 l 차별화된편의성 i-movix 소개 2005 년설립 ( 벨기에, 몽스 ), 방송카메라제작 2005년 Sprintcam Live System 개발 2007년 Sprintcam Live V2 2009년 Sprintcam Live V3 HD 2009년 Sprintcam Vvs HD 2011년 Super Slow Motion X10 2013년 Extreme + Super Slow

More information

BEef 사용법.pages

BEef 사용법.pages 1.... 3 2.... 3 (1)... 3 (2)... 5 3. BeEF... 7 (1) BeEF... 7 (2)... 8 (3) (Google Phishing)... 10 4. ( )... 13 (1)... 14 (2) Social Engineering... 17 (3)... 19 (4)... 21 5.... 22 (1)... 22 (2)... 27 (3)

More information

설치 순서 Windows 98 SE/Me/2000/XP 1 PC를 켜고 Windows를 시작합니다. 아직 컴퓨터에 프린터를 연결하지 마십시오. 2 PC에 P-S100 CD-ROM(프 린터 드라이버)을 삽입합니다. 3 설치 프로그램을 시작합니다. q CD-ROM의 PS1

설치 순서 Windows 98 SE/Me/2000/XP 1 PC를 켜고 Windows를 시작합니다. 아직 컴퓨터에 프린터를 연결하지 마십시오. 2 PC에 P-S100 CD-ROM(프 린터 드라이버)을 삽입합니다. 3 설치 프로그램을 시작합니다. q CD-ROM의 PS1 디지털 사진 프린터 P-S100 프린터 드라이버 설치 가이드 사용하는 컴퓨터에 따라 제공된 프린터 드라이버를 설치합니다. 설치 절차 에 대한 자세한 내용은 CD-ROM의 Readme 파일을 참조하십시오. 작동 환경 Windows 호환 모델: IBM PC/AT 및 호환품 운영 체제: Windows 98 SE/Me/2000/XP (Windows 98 SE/Me/2000/XP

More information

IP Cam DDNS 설정설명서(MJPEG)-101021.hwp

IP Cam DDNS 설정설명서(MJPEG)-101021.hwp PH-MIP001 PH-MIP002 PH-MIP003 기능이란? 대부분의 자가 가입한 인터넷 서비스는 유동IP 방식을 합니다. 유동IP 방식은 필요에 따라 할당되는 IP가 변화하기 때문에 공유기 또는 공유기에 연결된 를 외부에서 접근이 필요할 경우 불편함을 느낄 수 있습니다. (Dynamic DNS)는 이와같은 불편함을 해소하기 위해 자가 지정한 도메인 이름으로

More information

슬라이드 1

슬라이드 1 사용 전에 사용자 주의 사항을 반드시 읽고 정확하게 지켜주시기 바랍니다. 사용설명서의 구성품 형상과 색상은 실제와 다를 수 있습니다. 사용설명서의 내용은 제품의 소프트웨어 버전이나 통신 사업자의 사정에 따라 다를 수 있습니다. 본 사용설명서는 저작권법에 의해 보호를 받고 있습니다. 본 사용설명서는 주식회사 블루버드소프트에서 제작한 것으로 편집 오류, 정보 누락

More information

<4D6963726F736F667420576F7264202D2045564552554E20B4DCB8BB20C1A1B0CB20B9D720C1B6C4A120B8C5B4BABEF35F76312E335F2E646F63>

<4D6963726F736F667420576F7264202D2045564552554E20B4DCB8BB20C1A1B0CB20B9D720C1B6C4A120B8C5B4BABEF35F76312E335F2E646F63> EVERUN 단말 점검 및 조치 매뉴얼(v1.3) 2008-09-04 1. 기본 점검사항 1.1 KT WIBRO CM 프로그램 정보 1.2 장치관리자 진입경로 1.2.1 시작/제어판에서 실행 1.2.2 바탕화면에서 실행 1.3 장치 관리자에서 드라이버 확인 1.3.1 WIBRO 드라이버 확인 1.3.2 Protocol 드라이버 확인 1.4 Windows 스마트

More information

Copyright 2009 Hewlett-Packard Development Company, L.P. Intel 은 미국 및 다른 국가에서 Intel Corporation 의 상표입니다. Microsoft 및 Windows 는 Microsoft Corporation 의

Copyright 2009 Hewlett-Packard Development Company, L.P. Intel 은 미국 및 다른 국가에서 Intel Corporation 의 상표입니다. Microsoft 및 Windows 는 Microsoft Corporation 의 HP ENVY 15 사용 설명서 Copyright 2009 Hewlett-Packard Development Company, L.P. Intel 은 미국 및 다른 국가에서 Intel Corporation 의 상표입니다. Microsoft 및 Windows 는 Microsoft Corporation 의 미국 등록 상표입니다. Bluetooth 는 해당 소유권

More information

untitled

untitled 이 사용설명서와 제품은 저작권법에 의해 보호되어 있습니다. 삼성전자 ( 주 ) 의 사전 서면 동의 없이 사용설명서 및 제품의 일부 또는 전체를 복사, 복제, 번역 또는 전자매체나 기계가 읽을 수 있는 형태로 바꿀 수 없습니다. 이 사용설명서와 제품은 표기상의 잘못이나 기술적인 잘못이 있을 수 있으며 사전 통보 없이 이러한 내용들이 변경될 수 있습니다. CLP-310K,

More information

cam_IG.book

cam_IG.book 설치 안내서 AXIS P3301 고정형 돔 네트워크 카메라 AXIS P3301-V 고정형 돔 네트워크 카메라 한국어 AXIS P3304 고정형 돔 네트워크 카메라 AXIS P3304-V 고정형 돔 네트워크 카메라 문서 정보 본 문서에는 사용자 네트워크에 AXIS P3301/P3304 고정형 돔 네트워크 카메라를 설치하는 방법에 대 한 지침이 포함되어 있습니다.

More information

목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5. 구입하였습니다만, 배터리는 어떻게 장착하

목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5. 구입하였습니다만, 배터리는 어떻게 장착하 사용자 FAQ (URoad-LFM300) 2015. 08. 26 1 / 19 Copyright c MODACOM Co., Ltd. 목차 Q-1. 데이터를 통한 음성통화가 되지 않습니다.... 4 Q-2. WiFi 연결이 안됩니다.... 4 Q-3. 인터넷 또는 네트워크 연결이 안됩니다.... 5 Q-4. 표준 부속품을 알려주시기 바랍니다.... 6 Q-5.

More information

KDTÁ¾ÇÕ-1-07/03

KDTÁ¾ÇÕ-1-07/03 CIMON-PLC CIMON-SCADA CIMON-TOUCH CIMON-Xpanel www.kdtsys.com CIMON-PLC Total Solution for Industrial Automation PLC (Program Logic Controller) Sphere 8 Total Solution For Industrial Automation PLC Application

More information

6강.hwp

6강.hwp ----------------6강 정보통신과 인터넷(1)------------- **주요 키워드 ** (1) 인터넷 서비스 (2) 도메인네임, IP 주소 (3) 인터넷 익스플로러 (4) 정보검색 (5) 인터넷 용어 (1) 인터넷 서비스******************************* [08/4][08/2] 1. 다음 중 인터넷 서비스에 대한 설명으로

More information

LG-LU6200_ICS_UG_V1.0_ indd

LG-LU6200_ICS_UG_V1.0_ indd 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

More information

Microsoft PowerPoint - 04-UDP Programming.ppt

Microsoft PowerPoint - 04-UDP Programming.ppt Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여

More information

목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows

목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows 삼성SDS 하이패스 USB 드라이버 설치 매뉴얼 삼성SDS(주) 목 차 1. 드라이버 설치...3 1.1 설치환경...3 1.2 드라이버 설치 시 주의사항...3 1.3 USB 드라이버 파일...3 1.4 Windows XP에서 설치...4 1.5 Windows Vista / Windows 7에서 설치...7 1.6 Windows 8에서 설치...9 2. 드라이버

More information

airDACManualOnline_Kor.key

airDACManualOnline_Kor.key 5F InnoValley E Bldg., 255 Pangyo-ro, Bundang-gu, Seongnam-si, Gyeonggi-do, Korea (Zip 463-400) T 031 8018 7333 F 031 8018 7330 airdac AD200 F1/F2/F3 141x141x35 mm (xx) 350 g LED LED1/LED2/LED3 USB RCA

More information

untitled

untitled CAN BUS RS232 Line CAN H/W FIFO RS232 FIFO CAN S/W FIFO TERMINAL Emulator COMMAND Interpreter PROTOCOL Converter CAN2RS232 Converter Block Diagram > +- syntax

More information

KISA-GD

KISA-GD KISA-GD-2011-0002 2011.9 1) RD(Recursive Desired) 플래그 : 리커시브네임서버로하여금재귀적 (recursive) 질의 ( 항목 1.3. 참고 ) 요청을표시함. RD 플레그값이 0 이면반복적 (iterative) 질의를요청 2) AA 플래그 : Authoritative Answer 의약자로써, 네임서버가해당응답데이터를자신이보유하고있는지유무를표시

More information

Xcovery 사용설명서

Xcovery 사용설명서 ㄱ 센티리온 프리미엄 사용설명서 목 차 Chapter 1 프로그램 소개 및 기본개념 1) 시스템 복구 2) 시스템백업 3) 시스템 백업 및 시스템 복구 활용하기 4) 폴더보호 Chapter 2 프로그램 설치하기 1) 프로그램 설치 방법 2) Centillion 설치 소프트웨어 사용권 계약서 3) 제품 인증 키 입력 4) Centillion 폴더보호 5) Windows

More information

歯Enet_목차_.PDF

歯Enet_목차_.PDF GLOFA-GM - TCP ( ) 1) IEC(International Electrotechnical Commission : ), 2), 2,.,. RUN CPU I/F RUN FB-SERVICE HS-SERVICE GMWIN-SERV GLOFA-SERV FTP-SERVICE H/W ERROR 10B5 enable 10B2 enable 10BT

More information

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp l Y ( X g, Y g ) r v L v v R L θ X ( X c, Yc) W (a) (b) DC 12V 9A Battery 전원부 DC-DC Converter +12V, -12V DC-DC Converter 5V DC-AC Inverter AC 220V DC-DC Converter 3.3V Motor Driver 80196kc,PWM Main

More information

1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정 및 모니터링 등의 기능을 제공하여 관리대상 클라이언트 시스템에 설치된 V3

1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정 및 모니터링 등의 기능을 제공하여 관리대상 클라이언트 시스템에 설치된 V3 CR-15-59 AhnLab Policy Center 4.6 for Windows 인증보고서 인증번호 : ISIS-0631-2015 2015년 7월 IT보안인증사무국 1. 제품 개요 AhnLab Policy Center 4.6 for Windows(이하 TOE)는 관리대상 클라이언트 시스템에 설치된 안랩의 안티바이러스 제품인 V3 제품군에 대해 보안정책 설정

More information

RFID USN_K_100107

RFID USN_K_100107 U B I Q U I T O U S S O L U T I O N RFID/USN C O N T E N T S LEADING YOU TOWARD A GREATER FUTURE THAN YOU IMAGINE WONDERFUL UBIQUITOUS WORLD 04 RFID/USN 05 06 LEADING RFID/USN SOLUTION PEOPLE PRODUCT PROCESS

More information

LCD Display

LCD Display LCD Display SyncMaster 460DRn, 460DR VCR DVD DTV HDMI DVI to HDMI LAN USB (MDC: Multiple Display Control) PC. PC RS-232C. PC (Serial port) (Serial port) RS-232C.. > > Multiple Display

More information

목 차 Ⅰ. 정보기술의 환경 변화 Ⅱ. 차량-IT Convergence Ⅲ. 차량 센서 연계 서비스 Ⅳ. 차량-IT 융합 발전방향

목 차 Ⅰ. 정보기술의 환경 변화 Ⅱ. 차량-IT Convergence Ⅲ. 차량 센서 연계 서비스 Ⅳ. 차량-IT 융합 발전방향 차량-IT 융합 기반의 미래형 서비스 발전 동향 이범태 (현대자동차) 목 차 Ⅰ. 정보기술의 환경 변화 Ⅱ. 차량-IT Convergence Ⅲ. 차량 센서 연계 서비스 Ⅳ. 차량-IT 융합 발전방향 Ⅰ. 정보 기술의 환경변화 1. 정보기술의 발전 2. 자동차 전장 시스템의 발전 1. 정보기술의 발전 정보기술은 통신 네트워크의 급속한 발전, 단말의 고기능화,

More information

KDTÁ¾ÇÕ-2-07/03

KDTÁ¾ÇÕ-2-07/03 CIMON-PLC CIMON-SCADA CIMON-TOUCH CIMON-Xpanel www.kdtsys.com CIMON-SCADA Total Solution for Industrial Automation Industrial Automatic Software sphere 16 Total Solution For Industrial Automation SCADA

More information

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

Microsoft Word - FS_ZigBee_Manual_V1.3.docx FirmSYS Zigbee etworks Kit User Manual FS-ZK500 Rev. 2008/05 Page 1 of 26 Version 1.3 목 차 1. 제품구성... 3 2. 개요... 4 3. 네트워크 설명... 5 4. 호스트/노드 설명... 6 네트워크 구성... 6 5. 모바일 태그 설명... 8 6. 프로토콜 설명... 9 프로토콜 목록...

More information

1.LAN의 특징과 각종 방식

1.LAN의 특징과 각종 방식 0 Chapter 1. LAN I. LAN 1. - - - - Switching - 2. LAN - (Topology) - (Cable) - - 2.1 1) / LAN - - (point to point) 2) LAN - 3) LAN - 2.2 1) Bound - - (Twisted Pair) - (Coaxial cable) - (Fiber Optics) 1

More information

목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2

목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy... 6 2.2 Compare... 6 2.3 Copy & Compare... 6 2.4 Erase... 6 2 유영테크닉스( 주) 사용자 설명서 HDD014/034 IDE & SATA Hard Drive Duplicator 유 영 테 크 닉 스 ( 주) (032)670-7880 www.yooyoung-tech.com 목차 1. 제품 소개... 4 1.1 특징... 4 1.2 개요... 4 1.3 Function table... 5 2. 기능 소개... 6 2.1 Copy...

More information

목차 소프트웨어 라이센스 계약 3 무선 연결 사용 시 참고 사항 4 보안 관련 참고 사항 6 Wireless Manager mobile edition 5.5 로 수행 가능한 작업 7 컴퓨터 확인 10 컴퓨터를 연결하기 위해 필요한 환경 10 소프트웨어 설치 / 제거 1

목차 소프트웨어 라이센스 계약 3 무선 연결 사용 시 참고 사항 4 보안 관련 참고 사항 6 Wireless Manager mobile edition 5.5 로 수행 가능한 작업 7 컴퓨터 확인 10 컴퓨터를 연결하기 위해 필요한 환경 10 소프트웨어 설치 / 제거 1 Windows 사용 설명서 Wireless Manager ME 5.5 Wireless Manager mobile edition 5.5 F1111-0 KOREAN WM-LY8JC-K 목차 소프트웨어 라이센스 계약 3 무선 연결 사용 시 참고 사항 4 보안 관련 참고 사항 6 Wireless Manager mobile edition 5.5 로 수행 가능한 작업

More information

1. 회사소개 및 연혁 - 회사소개 회사소개 회사연혁 대표이사: 한종열 관계사 설립일 : 03. 11. 05 자본금 : 11.5억원 인 원 : 18명 에스오넷 미도리야전기코리 아 미도리야전기(일본) 2008 2007 Cisco Premier Partner 취득 Cisco Physical Security ATP 취득(진행) 서울시 강남구 도심방범CCTV관제센터

More information

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리 ArcGIS for Desktop 10.4 Single Use 설치가이드 Software: ArcGIS for Desktop 10.4 Platforms: Windows 10, 8.1, 7, Server 2012, Server 2008 ArcGIS for Desktop 10.4 시스템 요구사항 1. 지원 플랫폼 운영체제 최소 OS 버전 최대 OS 버전 Windows

More information

Chapter ...

Chapter ... Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준

More information

2

2 2013 Devsisters Corp. 2 3 4 5 6 7 8 >>> import boto >>> import time >>> s3 = boto.connect_s3() # Create a new bucket. Buckets must have a globally unique name >>> bucket = s3.create_bucket('kgc-demo')

More information

iOS5_1±³

iOS5_1±³ IDG Deep Dive ios 5 2 3 4 5 6 7 8 9 10 11 12 ios 5 토어 버튼이 상단 좌측에 추가되어 아이튠즈 스토 어의 적합한 영역으로 연결해 준다. 또한 블루투스의 원격제어 기능인 AVRCP(AV Remote Control Profile)가 1.3 버전으로 업데이 트되어 음악을 블루투스로 스트리밍할 때 트랙과 아티스트, 앨범 정보를

More information

GLOFA Series Cnet

GLOFA Series Cnet LS Industrial Systems GLOFA-GM Series Fast Ethernet Driver 1 시스템 구성 2 접속기기 선택 3 통신 설정 예 4 설정 항목 5 결선도 6 사용 가능 디바이스 7 디바이스 코드와 어드레스 코드 8 에러 메시지 04 06 07 09 12 13 14 15 1 개정 이력 버전 날짜 설명 작성자 검수 V1.0.0 2008.08.28

More information

vi 사용법

vi 사용법 네트워크프로그래밍 6 장과제샘플코드 - 1:1 채팅 (udp 버전 ) 과제 서버에서먼저 bind 하고그포트를다른사람에게알려줄것 클라이언트에서알려준포트로접속 서로간에키보드입력을받아상대방에게메시지전송 2 Makefile 1 SRC_DIR =../../common 2 COM_OBJS = $(SRC_DIR)/addressUtility.o $(SRC_DIR)/dieWithMessage.o

More information

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe

정적으로 설치된 mod_ssl 모듈확인 동적으로 설치된 mod_ssl 모듈확인 웹서버에 설치된 모듈중 mod_so.c 를 먼저 확인후 동적으로 설치된 모듈중 mod_ssl.so 를 확인합니다. 동적으로 설치된 경우 apache 설치 디렉토리의 module 이나 libe Apache 설치방법 보기 Apache 웹서버에 SSL를 적용하기 위해 아래 두 항목이 웹서버에 설치되어 있어야 합니다. Openssl 암호화 라이브러리 Mod_ssl 모듈 위 두 항목이 웹서버에 설치되어 있다면 개인키를 생성하고 생성된 개인키를 바탕으로 CSR 파일을 생성합니다. 생성된 CSR 파일을 한비로에 접수하여 정식 인증서를 발급받습니다. 발급된 인증서를

More information

제20회_해킹방지워크샵_(이재석)

제20회_해킹방지워크샵_(이재석) IoT DDoS DNS (jaeseog@sherpain.net) (www.sherpain.net) DDoS DNS DDoS / DDoS(Distributed DoS)? B Asia Broadband B Bots connect to a C&C to create an overlay network (botnet) C&C Provider JP Corp. Bye Bye!

More information

4) CRC - 16bit MODBUS crc 4. MODBUS Exception Codes Code 01h 02h 03h 04h 05h 06h 10h 11h 12h 13h 14h Name ILLEGAL FUNCTION ILLEGAL DATA ADDRESS ILLEGA

4) CRC - 16bit MODBUS crc 4. MODBUS Exception Codes Code 01h 02h 03h 04h 05h 06h 10h 11h 12h 13h 14h Name ILLEGAL FUNCTION ILLEGAL DATA ADDRESS ILLEGA MODBUS Protocol for GIMAC Series 1. Introduction MODBUS RTU protocol 2. Physical Layer - Communication port : RS485 - Asynchronous format : 한 character는 10 로구성된다. (1 start bit + 8 data bits + (No parity

More information

User Guide

User Guide HP Pocket Playlist 사용 설명서 부품 번호: 699916-AD2 제 2 판: 2013 년 1 월, 초판: 2012 년 12 월 Copyright 2012, 2013 Hewlett-Packard Development Company, L.P. Microsoft, Windows 및 Windows Vista 는 Microsoft Corporation

More information