1. 의존성 라이브러리 설치
아래는 라이브러리 설치되어있는지 확인해보는 부분이며 APM에 꼭 필요한 패키지가 있다.
rpm 라이브러리가 설치되어 있는지 확인
rpm -qa libjpeg* libpng* freetype* gd-* gcc gcc-c++ gdbm-devel libtermcap-devel
Yum으로 아래의 필요한 라이브러리를 한 번에 전부 설치 (한 번에 관련된 의존성도 같이 설치가 됨)
yum install libjpeg* libpng* freetype* gd-* gcc gcc-c++ gdbm-devel libtermcap-devel
2. [APM] Apache, PHP, MariaDB 설치 [순서 : Apache, Maria, PHP 진행]
(순서는 크게 상관은 없음)
아파치 설치
yum install httpd (yum으로 설치 시 전체 설치 httpd-tools도 같이 설치됨 )
마리아(Maria DB 10.1) 설치
기존의 Yum 으로 설치할 경우는 Maria DB 5.5 버전이 설치가 됩니다.
최신 버전으로 설치할 경우 Yum 미러 경로를 직접 지정해야 합니다.
배포 사이트 : http://mariadb.org/
버전별 세팅방법 : http://downloads.mariadb.org/mariadb/repositories
Yum 저장소 생성
vi /etc/yum.repos.d/MariaDB.repo
내용
# MariaDB 10.1 CentOS repository list
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb] name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
:wq(저장)
저장소 생성 후 설치
yum install MariaDB-server MariaDB-client
PHP 7 설치
PHP 역시 기존의 Yum으로 설치할 경우는 PHP 5.4 버전이 설치가 됩니다.
최신 버전으로 설치하기 위해 Webtatic EL 저장소를 추가합니다.
버전별 참고사이트 : https://webtatic.com/projects/yum-repositor/
Yum 저장소 생성
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
설치
yum install php70w
관련 PHP7 패키지 설치 (자주 쓰이는 것들)
yum install php70 w-mysql php70 w-pdo php70 w-pgsql php70 w-odbc php70 w-mbstring php70 w-mcrypt php70 w-gd
yum install php70 w-pear php70 w-pdo_dblib php70 w-pecl-imagick php70 w-pecl-imagick-devel php70 w-xml php70 w-xmlrpc
yum search php70 w : 명령어를 사용하면 php7 관련된 설치할 수 있는 리스트들을 확인 가능
설치 확인 및 버전 확인
httpd- v
php -v
mysql -v
■ [APM] Apache, PHP, MariaDB config(설정) 및 구동
1. 아파치(Apache) 설정 및 구동
vi /etc/httpd/conf/httpd.conf
■ apache → nobody 변경
ROOT 권한으로 실행된 아파치의 하위 프로세스를 이곳에서 지정한 사용자로 실행한다는 의미,
기본값으로 apache 또는 daemon으로 되어있지만 대부분 nobody로 변경하여 이용한다. 약간 보안적인 의미를 포함
■ ServerName
자기 서버가 이 도메인을 사용한다는 것을 알리기 위한 수단, 예를 들어
ServerName www.test.com:80 → 홈페이지 접속 시 해당 도메인(http://www.test.com)으로 연결
ServerName 192.168.122.128:80 → 홈페이지 접속시 해당 도메인((http://192.168.122.128)으로 연결 (도메인이 없을 경우 IP 입력)
■ IP는 자기 서버 IP 세팅
[root@localhost ~]# ifconfig
ens33: flags=4163 <UP, BROADCAST, RUNNING, MULTICAST> mtu 1500
inet 192.168.223.129 (이 부분) netmask 255.255.255.0 broadcast 192.168.223.255
vi /etc/vsftpd/vsftpd.conf
11 # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
12 anonymous_enable=NO (YES → NO 변경)
97 # (Warning! chroot'ing can be very dangerous. If using chroot, make sure that
98 # the user does not have write access to the top level directory within the
99 # chroot)
100 chroot_local_user=YES (# 주석 제거 / 또는 추가)
(맨 아래줄에 별도 추가)
129 pasv_enable=YES (추가)
130
131 pasv_min_port=50001 (추가)
132 pasv_max_port=50005 (추가)
133
134 allow_writeable_chroot=YES (추가)
:wq (저장)
참고]
■ anonymous_enable=NO / 익명 유저 로그인을 차단합니다. YES 되어있을 경우 아무나 접속할 수 있으므로 보안에 취약
■ chroot_local_user=YES / 일반계정의 유저 홈 디렉터리에서 상위 폴더로 이동하는 것을 제한합니다.
■ pasv_enable=YES / Passive 모드로 접속할 수 있게 설정합니다.
(Passive 모드의 특징)
- PC 클라이언트에서 서버 쪽으로 21번 포트 통신 응답을 시도합니다.
- 서버 측에서 응답을 받을 경우 서버에서 사용할 두 번째 포트(1024~65535 포트)를 알려줍니다.
- PC 클라이언트는 다른 포트를 열어 서버가 알려준 두 번째 포트로 접속을 시도하고 데이터를 전송합니다.
- 하지만 서버에서 모든 두번째 포트(1024~65535 포트)를 개방하고 알려야 하는 문제가 있지만 접속 범위를 설정하여 문제를 해결할 수 있습니다.
■ pasv_min_port=50001 / 접속 포트 설정의 최소 범위 (위 포트 범위 내에서 임의 설정 가능)
■ pasv_max_port=50005 / 접속 포트 설정의 최대 범위 (위 포트 범위 내에서 임의 설정 가능)
'linux > CentOS' 카테고리의 다른 글
vsftpd 설치 (0) | 2020.06.16 |
---|---|
가상호스트(virtual host)란? (2) | 2020.06.16 |
CentOS 7 firewall 방화벽 설정 (0) | 2020.04.01 |
CentOS7 - APM 웹서버 구축 (0) | 2020.04.01 |
CentOS 6 초기 세팅(2) (0) | 2020.03.15 |