05 웹 서버 활용

Download Report

Transcript 05 웹 서버 활용

웹 서버 활용
RaspberryPi
Sejin Oh
웹 서버 활용
Raspberry Pi
2
웹 서버 활용
워드프레스 설치과정
 워드프레스(WordPress)
 세계 최대의 오픈 소스 저작물 관리 시스템
 홈페이지를 만들고 관리할 수 있는 솔루션
 무료이며 PC, 스마트폰, 태블릿 등 다양한 기기에 최적화
 워드프레스 설치에 필요사항
 웹 서버
• 예제 : 엔진엑스 웹서버 사용
 php
• 예제 : php-fpm, php-gd, php-apc 사용
 DBMS(DataBase Management System)
• 예제 : MySQL 사용
Raspberry Pi
3
웹 서버 활용
엔진엑스 웹서버 구축
 엔진엑스 설치
 데비안 계열인 라즈비안의 경우 apt-get install 명령어를 사용하여
패키지를 설치한다.
 $ sudo apt-get install nginx
 엔진엑스 서비스 시작
 $ sudo service nginx start
Raspberry Pi
4
웹 서버 활용
PHP설치
 PHP 설치
 엔진엑스(nginx)와 사용되는 PHP는 Apache2와 사용되는 php와 다
르다.
 nginx와 사용되는 php는 FastCGI를 사용(부하가 높은 사이트에 효율
적임)
 $ sudo apt-get install php5-fpm
 nginx와 php 설정
 $ sudo nano /etc/nginx/sites-available/default
#listen 80; ## listen for ipv4; this line is default and implied
주석 제거하여 아래와 같이 수정
listen 80; ## listen for ipv4; this line is default and implied
Raspberry Pi
5
웹 서버 활용
PHP설치
 nginx와 php 설정
 $ sudo nano /etc/nginx/sites-available/default
index index.html index.htm;
아래와 같이 수정
index index.php index.html index.htm;
Raspberry Pi
6
웹 서버 활용
PHP설치
 nginx와 php 설정
 $ sudo nano /etc/nginx/sites-available/default
#location ~ .php$ {
# fastcgi_split_path_info ^(.+.php)(/.+)$;
# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
# fastcgi_pass unix:/var/run/php5-fpm.sock;
# fastcgi_index index.php;
# include fastcgi_params;
#}
location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
Raspberry
Pi
}
7
주석제거 아래와
같이 수정
웹 서버 활용
PHP설치
 nginx와 php 설정
 $ sudo nano /etc/php5/fpm/php.ini
 보안상 약점 수정
;cgi.fix_pathinfo=1
아래와 같이 수정
cgi.fix_pathinfo=0
 서비스 재시작
 $ sudo service php5-fpm restart
 $ sudo service nginx restart
 nginx 오류 시 해결법
 $ sudo fuser –k 80/tcp
Raspberry Pi
8
웹 서버 활용
MySQL 설치
 워드프레스 저장을
 MySQL 설치
 $ sudo apt-get
 $ sudo apt-get
 $ sudo apt-get
 mysql 암호
위한 DBMS 설치
update
upgrade
install mysql-server --fix-missing
• 예시) raspberry 입력
Raspberry Pi
9
웹 서버 활용
MySQL 설치
 MySQL 추가 패키지 설치
 php를 통해서 MySQL 서버 접속을 가능하게 함
 mysql-client를 통해 MySQL 서버에 접속을 가능하게 함
 $ sudo apt-get install mysql-client php5-mysql
Raspberry Pi
10
웹 서버 활용
MySQL의 DB와 유저 생성
 워드프레스를 위한 데이터베이스와 MySQL 유저를 생성
 접속
• $ mysql –uroot –hlocalhost –p
• 접속 명령 실행 후 암호 입력(raspberry)
Raspberry Pi
11
웹 서버 활용
MySQL의 DB와 유저 생성
 워드프레스를 위한 DB생성
 MySQL의 Create 명령으로 DB생성
 mysql> create database wpdb;
 MySQL 사용자 생성
 mysql> create user ‘wpuser’@’localhost’ identified by ‘raspberry’;
Raspberry Pi
12
웹 서버 활용
MySQL의 DB와 유저 생성
 생성된 계정의 권한 부여
 생성한 계정(wpuser)이 생성한 DB(wpdb)에 접근 가능하도록 권한
부여
 mysql> grant all privileges on wpdb.* to ‘wpuser’@’localhost’;
 권한 부여관련하여 시스템에 적용
 mysql> flush privileges;
Raspberry Pi
13
웹 서버 활용
MySQL의 DB와 유저 생성
 생성된 계정으로 mysql 접속
 $ mysql –uwpuser –hlocalhost wpdb –p
 mysql 접속 종료
• mysql> exit
Raspberry Pi
14
웹 서버 활용
워드프레스 설치
 워드프레스 설치경로 이동
 웹 문서 루트 폴더로 이동
• $ cd /usr/share/nginx/www
• 웹 문서 루트 폴더 파일들 삭제하여 빈 공간으로 설정
– $ sudo rm –rf *
– 반드시 /usr/share/nginx/www에서 실행할 것
 wget으로 워드프레스 다운로드
• sudo wget http://wordpress.org/latest.tar.gz
Raspberry Pi
15
웹 서버 활용
워드프레스 설치
 다운로드한 워드프레스 파일 압축해제
 $ sudo tar xzvf latest.tar.gz
Raspberry Pi
16
웹 서버 활용
워드프레스를 위한 추가 패키지 설치
 워드프레스를 위한
 $ sudo apt-get
 $ sudo apt-get
 $ sudo apt-get
Raspberry Pi
추가 패키지 설치
update && sudo apt-get upgrade
install php5-curl php5-gd libssh2-php
install php-apc
17
웹 서버 활용
워드프레스 설정
 워드프레스설정
 워드프레스 설정하기 위해 설정파일 복사
• $ cd /usr/share/nginx/www/wordpress
• $ sudo cp wp-config-sample.php wp-config.php
 wp-config.php파일을 나노편집기로 아래와 같이 수정
• $ sudo nano wp-config.php
define(‘DB_NAME’, ‘database_name_here’);
define(‘DB_USER’, ‘username_here’);
define(‘DB_PASSWORD’, ‘password_here’);
아래와 같이 수정
define(‘DB_NAME’, ‘wpdb’);
define(‘DB_USER’, ‘wpuser’);
define(‘DB_PASSWORD’, ‘raspberry’);
Raspberry Pi
18
웹 서버 활용
워드프레스 기본 설정
 워드프레스 기본 설정을 위한 웹 브라우저로 접속
 http://ip주소/wordpress
 사이트 이름, 유저이름,
패스워드, 이메일 입력 후 설치
Raspberry Pi
19
웹 서버 활용
워드프레스 기본 설정
 워드프레스 웹 브라우저로 접속
 워드프레스 기본 설정에서 생성한 유저이름과 패스 입력 후 로그인
Raspberry Pi
20
FTP 서버 구축
vsftp 설치
 vsftp 설치
 $ sudo apt-get install vsftpd
Raspberry Pi
21
FTP 서버 구축
vsftp 설치
 vsftpd.conf 파일 설정하기
 $ sudo nano /etc/vsftpd.conf
 아래와 같이 주석을 해제
listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
passwd_chroot_enable=YES
local_root=/home/
 /etc/vsftpd.chroo.list 파일 생성
 sudo nano /etc/vsftpd.chroot_list
 pi입력 후 저장 및 종료
Raspberry Pi
22
FTP 서버 구축
ftp접속
 vsftpd 서버 재시작
 $ sudo service vsftpd restart
 ftp접속 SW로 접속하기
Raspberry Pi
23
Thank you
Raspberry Pi
24