1. 개요

지난 포스트에서 ftp를 설치했기 때문에 자동으로 설정되어 테마와 플러그인 설치를 쉽게 할 수 있다. 만약 다른 방법으로 설치했다면 wp-config.php 파일에 다음 내용을 추가한다.

define('FTP_USER', '[ftp계정]');
define('FTP_PASS', '[ftp 비밀번호]');
define('FTP_HOST', '[ftp 서버 ip:포트번호]');
define('FTP_SSL', false);
define('FTP_BASE', '/www/var/wordpress/');
define('FTP_CONTENT_DIR', '/www/var/wordpress/wp-content/');
define('FTP_PLUGIN_DIR ', '/www/var/wordpress/wp-content/plugins/');

이제 워드프레스 관리 페이지에서 외모 > 테마 > 선택 > 활성화를 클릭하여 테마를 활성화 할 수 있다. 테마가 설치 되었을 땐 웹 서비스로 접근하면 아름다운 테마를 확인 가능하다.

그림 1. 워드프레스 테마 설치

똑같은 방식으로 플러그인 > 플러그인 추가 > 지금 설치하기 를 통해 플러그인을 추가하고 설치 가능하다. 특히 플러그인 설치가 완료되면 다음 그림과 같이 "성공적으로 설치했습니다." 로그를 확인할 수 있다. 만약 해당 메시지를 볼 수 없거나 실패 메시지를 보게 된다면 ftp 관련 문제이다.

그림 2. 플러그인 설치

설치 직후 바로 활성화 하지 않았다면 플러그인 > 설치된 플러그인으로 들어가서 각각의 플러그인을 활성화 할 수 있고, 기존에 설치된 플러그인이 업데이트를 요구할 경우 여기서 업데이트를 간편하게 진행 가능하다.

그림 3. 플러그인 활성화/비활성화

1.1. 다른 방법으로 플러그인 설치

1.1.1. 서버 플러그인 디렉터리에 직접 설치

다른 방법으로 플러그인 설치는 웹 서버에서 직접적으로 설치하는 방법이다. 플러그인이 설치되는 주소인 /var/www/wordpress/wp-content/plugin/ 에 플러그인을 직접 다운로드하여 저장한다. 저장 이후 설정은 위에서 설명한 내용과 동일하다. 이렇게 설치하는 것의 단점은, 플러그인의 퍼미션과 소유권을 재설정 해야 하는 경우가 필요 할 수 있다.

1.1.2. 관리자 패널에서 플러그인 설치하기

플러그인 설치는 관리자 패널에서 플러그인을 설치할 수 있다. 다음과 같이 플러그인에서 플러그인 추가하기 버튼을 누르고, 플러그인 업로드를 클릭한다.

그림 4. 플러그인 업로드 버튼 클릭

그러면 파일 업로드 창을 볼 수 있는데, 여기에 압축 형태가 zip 인 파일을 업로드 한다. 대부분 플러그인을 다운로드하면, zip 파일로 다운로드 받기에 무리없이 업로드 가능하다.

그림 5. 플러그인 추가 및 설치 완료

1. 개요

전 세계적으로 가장 많이 사용하는 CMS(Contents Management System)로 워드프레스를 손꼽는다. 특히 오픈 소스로 구현되어 있고, 쉽게 설치가 가능하며, 여러 형태로 구현된 다양한 플러그인으로 쉽게 기능을 추가할 수 있는 것이 매력적이다. 또한 이쁘다. 해외 동향자료들을 살펴보면 워드프레스 사용률이 23%에 육박한다. 국내 중소기업뿐만 아니라 공공기관에서도 워드프레스를 선택해 사용하는 것을 보면 그 인기를 실감할 수 있다.

반면 공격자 입장에서도 이러한 워드프레스를 대상으로 공략하기 쉽다. 우선 공격 대상의 웹 사이트를 스캔하여 얻은 플러그인 정보로 동일한 환경을 구축한 다음 소스코드 분석을 진행한다. 그리고 취약점을 찾아 공격에 사용한다. 또한 공격자들은 수 많은 워드프레스를 일일이 공격할 수 없기 때문에 워드프레스에서 인기 있는 플러그인 취약점을 발견하기 위해 연구하고, 웜(Worm) 형태로 제작하여 공격하는 행위를 자주 볼 수 있다.

그림 1. 워드프레스 공격 동향

반대로 이야기하면 쉽게 구축하여 다양한 웹 해킹 실습을 할 수 있는 것이 워드프레스이다.

2. 워드프레스 설치

2.1. LAMP

LAMP는 어려운 것이 아니고 단순히 Linux, Apache, MySQL 그리고 PHP의 첫 글자를 가지고 와서 만들어진 용어이다. 리눅스 서버를 웹 서버로 사용하겠다는 의미와 일맥상통한다. 우선 가장 자신 있는 리눅스를 미리 설치한다. 여기서는 우분투 데스트톱 버전 14.04 LTS 를 사용한다. 그리고 설정된 리눅스 저장소(Repository)와 동기화 한다.

sudo apt-get update

만약 저장소가 국내가 아니라면 설정을 변경하는 것이 설치하기 위해 패키지를 다운로드 받는 과정을 시간 절약할 수 있다.

AMP 설치는 다음과 같이 진행한다. 마지막에 설치하는 vsftpd는 워드프레스와 서버간에 파일을 FTP 형태로 교환하는데 사용하기 위해 설치하는 간단한 FTP로, AMP에 포함되는 항목은 아니다.

sudo apt-get install -y apache2 php5 mysql-server mysql-client php5-mysql phpmyadmin vsftpd

설치하는 과정에서 다음과 같은 TUI(Terminal User Interface)를 만나게 된다. AMP 설치하는 과정에 묻는 질문들은 비밀번호 관련된 항목이다. 우리는 테스트 목적으로 사용할 예정이기 때문에 간단한 비밀번호를 사용하면 된다.

그림 2. 중간 중간 입력하는 TUI

설치가 완료되면 /var 디렉터리에 www 디렉터리가 생성된 것을 확인 할 수 있고, apach2와 mysql 데몬이 동작하는 것을 확인 할 수 있다.

2.2. 워드프레스 다운로드

워드프레스를 다운로드 받기 위해 wordpress.org로 접속한다. 만약 wordpress.com으로 접속하면 상술에 속아나니 조심한다. wordpress.org에 접속하면 메인 화면에서 워드프레스 다운로드 부분을 볼 수 있다. 영어이지만 두려워 말자.

그림 3. Wordpress.org 메인 페이지

다운로드는 다음 그림과 같이 zip 파일과 tar.gz 파일로 제공되는데 우리는 리눅스에서 사용할 예정이기 때문에 좀 더 친숙한 tar.gz을 다운로드 받는다. (사실 뭘 다운로드 받아도 크게 상관은 없다.)

그림 4. 워드프레스 다운로드

보통 최신버전을 다운로드 받으면 latest.tar.gz으로 다운로드 되고, 압축을 해제하면 wordpress 디렉터리가 생성된다. 이제 wordpress 디렉터리는 /var/www로 복사하자. 복사할 때 주의 할 점은 /var 디렉터리의 권한은 root이기에 sudo 명령을 사용해야 하는 부분이다.

sudo mv wordpress/ /var/www/

2.3. 아파치 설정

아파치 기본 디렉터리는 /var/www/html 이다. 이 디렉터리에 들어가보면 index.html이 있는데, 이 경로가 기본 경로이기 때문에 wordpress를 옮겼다고 하더라도 index.html를 계속 읽어 들일 것이다.

그림 5. 아파치의 index.html 페이지

아파치에는 이러한 설정은 간단하게 해결할 수 있는 서브 유틸을 제공하고 있다. 먼저 a2dissite 명령으로 기본 경로를 해제한다.

sudo a2dissite 000-default.conf

이제 /var/www/wordpress 디렉터리를 기본 경로 설정을 위해 다음 설정 내용을 /etc/apache2/sites-available 디렉터리에 wordprss.conf 파일로 생성한다. /etc 디렉터리도 root 사용자 권한을 가지고 있어 sudo 명령을 사용해야 한다.

sudo vi /etc/apache2/sites-available/wordpress.conf
<VirtualHost *:80>
        ServerAdmin wordpress@localhost
        ServerName wordpress.local
        DocumentRoot /var/www/wordpress
        <Directory /var/www/wordpress>
                Options -Indexes
                AllowOverride all
                Order allow,deny
                allow from all
        </Directory>

        LogLevel warn
        ErrorLog /var/log/apache2/wordpress.local_error.log
        CustomLog /var/log/apache2/wordpress.local_access.log combined
        ServerSignature Off
</VirtualHost>

저장했다면 a2ensite 명령으로 wordpress.conf 설정을 활성화한다.

sudo a2ensite wordpress.conf

그리고 마지막으로 아파치 서비스를 재시작하여 변동사항을 적용시켜준다.

sudo service apache2 reload

적용 후 웹 서버에 접근하면 다음과 같은 화면을 볼 수 있다.

그림 6. 웹 서비스 메인 페이지 변경

2.4. 권한 설정

비록 웹 서비스에 접근했을 때 워드프레스 설치하도록 버튼이 활성화 되지만 아직은 이르다. 아파치가 좋아하는 아파치 전용 사용자 권한을 설정한다. 아파치를 설치하지 않더라도 www-data 사용자와 그룹은 사용할 수 있다. www-data 사용자와 그룹이 가지는 의미는 "nologin" 이다. 즉, 이 사용자로 설정되어 있는 애플리케이션은 로그인 없이 일련의 작업을 수행할 수 있음을 의미한다.

sudo chown -R www-data:www-data /var/www/wordpress

그리고 다음과 같이 디렉터리와 파일에 대해 서로 다른 권한을 부여한다.

sudo find /var/www/wordpress -type d -exec chmod 755 {} \;
sudo find /var/www/wordpress -type f -exec chmod 644 {} \;

2.5. 데이터베이스 생성

이제 워드프레스가 사용할 데이터베이스를 생성한다. MySQL 쉘로 접근하여 데이터베이스를 생성한다. 다음 명령을 입력하고 설치할 때 설정한 MySQL 접근 비밀번호를 입력한다. 그리고 다음과 같이 명령을 입력하여 데이터베이스를 생성하고, 잘 생성되었는지 확인한다. 그리고 워드프레스 데이터베이스를 이용할 MySQL 계정과 비밀번호를 새롭게 만든다.

mysql -u root -p
Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 52
Server version: 5.5.43-0ubuntu0.14.04.1 (Ubuntu)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create database wordpress;

Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| phpmyadmin         |
| wordpress          |
+--------------------+
5 rows in set (0.00 sec)

mysql> CREATE USER wordpress@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@localhost;
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> exit

2.6. 워드프레스 설치

이제 워드프레스 설치를 진행하면 된다. 다시 웹 서버로 접속하면 그림 6과 다른 언어 선택부터 시작하는 것을 볼 수 있다. 당연히 한국어 지원하는데 안 쓸 이유가 없다.

그림 7. 워드프레스 설치 및 운영 언어 선택

다음 그림과 같이 질문이 나오면 친절하게 생성해둔 wordpress 데이터베이스를 사용하고, MySQL 접근 계정과 패스워드를 입력해준다. 여기서 사용자 이름에 root가 아닌 새롭게 생성한 데이터베이스 이름과 패스워드를 입력한다.

그림 8. 워드프레스 데이터베이스 설정

설정이 끝나고 계속 진행하면 워드프레스 사이트 이름, 관리자 계정 및 비밀번호, 이-메일 입력 구간이 나온다. 친절하게 자주 사용하지 않는 것들로 채워 설정한다. 이-메일 주소는 관리자 계정과 비밀번호를 잊었을 때 사용하는 것인데, 웹 서버는 우리 손에 있기에 까먹었다면 크랙킹을 해보자.

설정 및 설치가 완료되면 로그인 화면을 볼 수 있다. 관리자 아이디와 패스워드를 입력하여 로그인하면 다음과 같이 볼 수 있다.

그림 9. 관리자 로그인 화면


1. 개요


요즘 보안 관련된 요소들을 테스트 할 겸 다양한 환경을 구축하는데 괜찮은 사이트를 발견하여 소개하고자 한다. 이 사이트는 윈도우 버전(XP, Vista, 7, 8, 8.1, 10)에 따라, 인터넷 익스플로러 버전에 따라 영문판으로 가상환경을 제공해준다. 제공하는 파일은 OVF(Open Virtualization Format)으로 제공한다. 그리고 이 사이트는 본래 모던 웹 개발을 지원하기 위해 만들어진 사이트이다.


OVF (Open Virtualization Format)

가상 어플라이언스의 패키징 및 배포를 위한 개방형 포맷으로 플랫폼 독립적이며, 확장가능하게 정의되어 있다. OVF는 가상 어플라이언스를 위한 메타데이터 표현 형식으로 XML을 사용한다.


특히 중요한 점은 새로운 환경을 구성하기 위해 운영체제를 설치하는 과정이 없어지며, 설치를 한다 하더라도 운영체제에 대한 라이선스 문제가 발생할 수 있는 단점을 해결해 준다. (물론 정식 라이선스는 아니고 30일 트라이얼 버전이다. 하지만 매번 설치 할 때마다 30일을 받기 때문에 이용에 문제 없다.) 해당 사이트는 마이크로소프트社에서 서비스를 운영하고 있기 때문이다.


아쉬운 점은 대용량 이미지를 제공하는 만큼 토렌트나 클라우드 서비스 형태로 다운로드 서비스의 분산으로 속도적인 측면을 신경써 주었으면 좋지 않았을까 싶다. 또한 32비트 운영체제만 제공을 하고 있다. 그래도 이러한 단점 보다 장점들이 더욱 부각되며 무엇보다도 한번 다운로드 받으면 지속적으로 이용 가능하다는 점이 매력적일 수 밖에 없다.


2. 사이트


www.modern.ie 사이트에 접속하면 다음과 같이 사이트를 볼 수 있다. 만약 영문으로 보인다면 오른쪽 위 마이크로소프트 기업 아이덴티티 옆 지구 아이콘에 마우스 오버를 하면 한국어를 선택할 수 있다. 물론 똑똑한 마이크로소프트는 아이피 기반으로 자동으로 언어에 맞게 변경해준다.


화면 아이콘 중 보라색으로 표시된 "가상 컴퓨터"를 클릭한다.


www.modern.ie


"가상 컴퓨터"를 클릭하면 다음 페이지를 볼 수 있다. 최신 VM 빌드한 날짜는 2014년 10월 27일 임을 알 수 있다. 


"Select Virtual Machine" 에서 윈도우 버전별, 인터넷 익스플로러 버전별 선택할 수 있다.


"Select Platform" 에서 가상화 지원하는 하이퍼바이저 종류를 선택할 수 있다. 선택 가능한 하이퍼바이저들은 다음과 같다.


  • Hyper-V (윈도우 서버군)
  • VirtualBox
  • VMware
  • Virtual PC



2번 까지 선택이 완료되면 다운로드를 받을 수 있다. 다운로드 받는 방법은 다음과 같이 가능하다.


  • 단일 압축파일
  • 분할 압축파일
  • 패치 파일 생성을 위한 다운로드 주소
  • cURL을 위한 스크립트


마지막으로 다른 운영체제(리눅스, Mac)에서 가상환경을 테스트를 할 수 있게 제공해 주는 페이지가 있다. Mac 운영체제의 경우 Parallels, VirtualBox, VMware Fusion) 에서 구동가능하고 리눅스의 경우 Virtualbox에서 운영 가능하게 제작하여 배포하고 있다. 해당 부분은 3번 항목 맨 아래 작은 글자로 표현하고 있다.



해당 가상머신을 설치해보면 다음과 같은 바탕화면을 볼 수 있다.



3. 참조 사이트



  1. 비버킴 2015.06.01 15:50

    리눅스 vm 이미지가 있는 곳도 소개해주세요~
    http://www.osboxes.org/

사물 인터넷 패러다임과 주목해야 할 기술

http://oojoo.tistory.com/573


현대경제연구소 사물인터넷 연구 보고서

http://hri.co.kr/board/ReportView.asp?numIdx=24451&skin=&mode=&GotoPage=&keyword=&column=&firstDepth=1&fourthDepth=&secondDepth=6%20&thirdDepth=


The Bible of IoTs

http://www.slideshare.net/jack0604/the-bible-of-iots


초연결 디지털 혁명의 선도국가 실현을 위한 사물인터넷 기본계획

http://www.aromasoft.com/data/admin/board_upload/1/files/85a06d040246268b5e92dde1ff595b48.pdf


Net Term - 사물인터넷

http://www.kisa.or.kr/uploadfile/201306/201306101740531675.pdf


전자부품연구원 - 사물인터넷 플랫폼

http://www.krnet.or.kr/board/data/dprogram/1856/A1-1.pdf




1. Introduction


여기서 소개하려는 레파지토리는 리눅스 운영체제 운영 시 다른 레파지토리 사용을 사용하면 빠른 다운로드 및 설치를 할 수 있다. 보통 귀찮아서 설정안하는데, 설정해보니 이건 꼭 해야겠다고 생각이 들어 정리해 보았다. 대부분 기본 국내 레파지토리는 kr.archive.ubuntu.com를 사용하는데 다음 리스트를 사용해 봐도 좋을 것 같다.


개인 레파지토리


  • mirror.premi.st
  • ftp.lecl.net

기업&대학 레파지토리


  • ftp.kaist.ac.kr
  • ftp.neowiz.com
  • ftp.daum.net
  • ftp.jaist.ac.jp

사용자 평가


사용자들이 레파지토리를 이용할때, 안정성, 속도, 레파지토리의 업데이트 속도 등 고려한다. 인터넷을 찾아 봤을 때 다음과 같이 평가되는 것으로 판단된다.


ftp.jaist.ac.jp > ftp.neowiz.com > ftp.daum.net > ftp.kaist.ac.kr > kr.archive.ubuntu.com


물론 평가하고자 하는 것이 아닌 정보 공유 차원이니 각자 판단해서 쓰시길 바란다.


2. Add Repository


  • Ubuntu, Mint, Debian

sudo vi /etc/apt/sources.list

:%s/kr.archive.ubuntu.com/ftp.jaist.ac.jp/g



sudo gedit /etc/apt/source.list



3. 추가


요즘 카이스트 레파지토리가 성능개선으로 속도가 많이 안정적이고 빨라졌다.


레파지토리(Repository)의 버츄얼박스(Virtualbox)를 설치하든 공식 홈페이지에서 deb 파일을 받아서 설치하든 root 권한이 아닌 사용자(User) 권한으로 버츄얼박스를 실행하면 다음과 같은 경고(WARNING)를 보게 된다.


$ virtualbox

Error opening file for reading: Permission denied

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "S&tart" under id 16 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "&Pause" under id 17 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "&Reset" under id 18 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "D&iscard saved state..." under id 24 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "Re&fresh..." under id 25 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "Show in File Manager" under id 27 

Qt WARNING: void DBusMenuExporterPrivate::addAction(QAction*, int): Already tracking action "Create Shortcut on Desktop" under id 28 


구글링을 통해 찾아본 결과 


  • Qt 관련 패키지를 지워라
  • WARNING이라 무시해도 된다
  • 버그다 최신버전을 설치해라
  • 버츄얼박스를 지원하는 커널을 업그레이드 하라
  • 기타 등등


virtualbox 등 다양한 해결방법들이 제시하는데 분별력이 없이 하나씩 테스트를 해 본 결과 문제의 WARNING을 잡지 못했다. 추가로 버츄얼박스 공식사이트에는 Ubuntu/Debian 사용자들은 DKMS 커널 업그레이드를 권장하고 있다.


virtualbox와 관련된 레파지토리 설치 패키지들 중에 왠지 될 만한 것들 몇 개를 테스트(삽질) 해본 결과 다음 패키지를 설치하면 위의 WARNING이 발생하지 않았다.


$ sudo apt-get install virtualbox-guest-additions


또는


$ sudo apt-get install virtualbox-guest-additions-iso


$ apt-cache search virtualbox

libvirt-bin - programs for the libvirt library

libvirt-dev - development files for the libvirt library

libvirt-doc - documentation for the libvirt library

libvirt0 - library for interfacing with different virtualization systems

libvirt0-dbg - library for interfacing with different virtualization systems

python-libvirt - libvirt Python bindings

virtualbox-guest-additions - transitional package for virtualbox-guest-additions-iso

virtualbox-guest-additions-iso - guest additions iso image for VirtualBox

imvirt - detects several virtualizations

libimvirt-perl - Perl module for detecting several virtualizations

testdrive-cli - run the daily Ubuntu ISO in a virtual machine (command line)

testdrive-common - run the daily Ubuntu ISO in a virtual machine (common files)

testdrive-gtk - run the daily Ubuntu ISO in a virtual machine (GTK Front-end)

vagrant - Tool for building and distributing virtualized development environments

virtualbox - x86 virtualization solution - base binaries

virtualbox-dbg - x86 virtualization solution - debugging symbols

virtualbox-dkms - x86 virtualization solution - kernel module sources for dkms

virtualbox-fuse - x86 virtualization solution - virtual filesystem

virtualbox-guest-dkms - x86 virtualization solution - guest addition module source for dkms

virtualbox-guest-source - x86 virtualization solution - guest addition module source

virtualbox-guest-utils - x86 virtualization solution - non-X11 guest utilities

virtualbox-guest-x11 - x86 virtualization solution - X11 guest utilities

virtualbox-ose - transitional package for virtualbox

virtualbox-ose-dbg - transitional package for virtualbox-dbg

virtualbox-ose-dkms - transitional package for virtualbox-dkms

virtualbox-ose-fuse - transitional package for virtualbox-fuse

virtualbox-ose-guest-dkms - transitional package for virtualbox-guest-dkms

virtualbox-ose-guest-source - transitional package for virtualbox-guest-source

virtualbox-ose-guest-utils - transitional package for virtualbox-guest-utils

virtualbox-ose-guest-x11 - transitional package for virtualbox-guest-x11

virtualbox-ose-qt - transitional package for virtualbox-qt

virtualbox-ose-source - transitional package for virtualbox-source

virtualbox-qt - x86 virtualization solution - Qt based user interface

virtualbox-source - x86 virtualization solution - kernel module source

xmount - tool to crossmount between multiple input and output harddisk images

unity-lens-vm - Lens to search/start available VirtualBox VMs


다운그레이드를 하여 경고 없이 사용하고자 하면 다음 버전을 설치하는 것도 좋다.


$ sudo apt-get install virtuslbox-qt


마지막으로 권한에 관한 에러가 발생한다.


Error opening file for reading: Permission denied


버츄얼박스 실행 권한이 root로 되어 있어 발생한다. user group을 새로 설정을 하든 권한을 바꾸든 해서 해결해도 되지만, 구태여 수정할 필요는 없어 보인다.


Add(4/30)

추가적으로 이미 가상머신(Virtualbox)를 운영중인 상태에서 guest-additions를 설치했다면 공유폴더를 재 설정한다.


"sudo apt-cache search virtualbox-guest-additions" 으로 버전을 확인하여, 설치된 virtualbox와 같은 버전을 설치한다.


virtualbox-guest-additions:

  Installed: (none)

  Candidate: 4.1.12-1

  Version table:

     4.1.12-1 0

        500 http://kr.archive.ubuntu.com/ubuntu/ precise/multiverse amd64 Packages



kali linux에서 vim은 syntax highlight 기능이 기본으로 셋팅이 안되어 있다. 매번 syn on을 할 수도 없다.

그래서 다음과 같이 미리 설정하여 vim을 사용할 때 마다 자동으로 설정 할 수 있도록 할 수 있다.

.vimrc 파일 생성 위치는 기본 홈 디렉토리 (/root/.vimrc)를 생성해서 사용하면 된다.

set nocompatible " 오리지날 VI와 호환하지 않음
set autoindent  " 자동 들여쓰기
set cindent " C 프로그래밍용 자동 들여쓰기
set smartindent " 스마트한 들여쓰기
set wrap 
set nowrapscan " 검색할 때 문서의 끝에서 처음으로 안돌아감
set nobackup " 백업 파일을 안만듬
set visualbell " 키를 잘못눌렀을 때 화면 프레시
set ruler " 화면 우측 하단에 현재 커서의 위치(줄,칸) 표시
set shiftwidth=4 " 자동 들여쓰기 4칸
set number " 행번호 표시, set nu 도 가능
set fencs=ucs-bom,utf-8,euc-kr.latin1 " 한글 파일은 euc-kr로, 유니코드는 유니코드로
set fileencoding=utf-8 " 파일저장인코딩 
set tenc=utf-8      " 터미널 인코딩
set expandtab " 탭대신 스페이스
set hlsearch " 검색어 강조, set hls 도 가능
set ignorecase " 검색시 대소문자 무시, set ic 도 가능
set tabstop=4 "  탭을 4칸으로
set lbr
set incsearch "  키워드 입력시 점진적 검색
syntax on "  구문강조 사용
filetype indent on "  파일 종류에 따른 구문강조
set background=dark " 하이라이팅 lihgt / dark
colorscheme desert  "  vi 색상 테마 설정
set backspace=eol,start,indent "  줄의 끝, 시작, 들여쓰기에서 백스페이스시 이전줄로
set history=1000 "  vi 편집기록 기억갯수 .viminfo에 기록

reference

[1] : http://blog.outsider.ne.kr/518

듀얼 부팅을 선택 하게 된 이유는 단지 Cuckoo Sandbox를 구성하기 위해서 였습니다. Cuckoo Sandbox는 가상머신에 파일을 실행시켜 행위를 후킹하여 분석결과를 제공해 주는 오픈소스 프로그램인데, 가상머신 안에 가상머신을 구현할 수 없어서 듀얼 부팅을 선택하게 되었습니다.

현재 제 컴퓨터 환경은 기본 Windows 7이 설치되어 있고, 이번에 데비안 계열로 배포중인 Kali Linux(aka. Backtrack 6)를 선택하였습니다.

 

먼저 디스크 관리에 들어가서 파티션을 분할 합니다.

 

위와 같이 파티션을 분할하여 포맷하지 않은 상태로 Kali Linux로 부팅합니다.

 

그래픽 설치 모드로 사용

 

듀얼 부팅에서 중요한 부분은 아니니 기본적으로 설치하는 듯이 설정하면 됩니다.

 

중요한 파티션 분할 입니다.

 

#3 아래 주/논리 파티션이 Windows 7에서 분할해 놓은 파티션입니다. 해당 파티션을 선택하고 계속 넘어갑니다. 먼저 /boot 파티션을 만들 것입니다.

 

새 파티션 만들기를 선택하고 다음

 

300 MB정도 잡고 다음

 

논리 파티션 선택하고 다음

 

설정 하는 파티션이 남는 파티션의 시작 부분으로 설정하고 다음

 

용도는 EXT4 저널링 파일 시스템으로 설정하고 마운트 위치는 /boot로 설정되었음을 확인하고 파티션 준비를 마칩니다.

 

남은 파티션을 작업하여 위와 같이 설정합니다.

 

용량(size)

파일시스템

용도

#5

200 MB

Ext4 저널링 시스템

/boot

#6

남는 모든 용량

Ext4 저널링 시스템

/

#7

2 GB

Ext4 저널링 시스템

/home

#8

2 GB

Swap

swap

 

파티션 나누기를 마치고 바뀐 사항을 디스크에 쓰기를 선택하고 다음으로 넘어갑니다.

 

예를 선택하고 다음으로 넘어가면 Kali를 설치하기 시작합니다.

 

아무거나 선택하시면 됩니다.

 

마스터 부트 레코드에는 윈도우 시스템의 부트로더가 설치되어 있기 때문에 아니오를 선택합니다.

 

/boot 파티션이 #5번이고, 파티션 디스크는 sda(첫번째 물리 디스크 = a)이기 때문에 GRUB 부트로더를 위와 같이 설정합니다.

 

Kali Linux의 설치가 완료되었습니다. 재부팅을 하면 아직은 Kali Linux로 부팅하는 것이 아닌 Windows 7으로만 부팅 할 수 있습니다.

바로 Windows로 부팅이 될 수 있지만 때로는 Windows 부트로더 자동 복구 모드가 작동 할 수도 있습니다. 자동 복구 모드가 동작할 때는 복구가 끝날 때 까지 기다려주시면 됩니다.

이젠 준비물이 있습니다. 바로 "EasyBCD 2.2"입니다. 개인 사용자들에겐 free로 제공되는 도구입니다. 한글 버전도 지원하기 때문에 쉽게 사용 할 수 있습니다. - Download

 

설치 후 실행하면 위와 같습니다.

 

새로운 부팅 추가 > 운영 시스템 > 리눅스/BSD 탭 > GRUB (레거시) 선택 후 이름을 설정하고, 드라이브를 /boot 파티션을 선택합니다. 여기서는 순서대로 표시되기 때문에 /boot 파티션의 용량인 300 MB를 보고 파악하면 됩니다. 그리고 부팅 추가를 누릅니다.

 

설정이 끝난 후 부트 메뉴 수정에 들어가면 위와 같이 볼 수 있습니다.

 

원하는 설정을 하고 설정 저장을 합니다.

 

디스크 관리에 들어가면 위와 같이 꽤 많은 파티션을 볼 수 있습니다. 재부팅 하여 정상적으로 동작하는지 확인해 봅니다.

 

위와 같이 선택하여 부팅할 수 있게 되었습니다.

 

Kali linux를 선택하면 Kali의 GRUB에서 다시 한번 선택할 수 있습니다. 여기서 Windows Vista는 Windows 7 부트로더 입니다.

  1. 2015.02.26 03:36

    비밀댓글입니다

    • Favicon of https://www.hakawati.co.kr BlogIcon hakawati 2015.03.02 09:59 신고

      아뇨 듀얼 부팅한다고 해서 두 개의 운영체제가 한번에 구동되는건 아니에요! 그래서 아이피는 기존에 쓰시는걸로 계속 쓰시면 됩니다.

+ Recent posts