AWS Lightsail CentOS 7 (OS전용) 인스턴스 기준으로 인스턴스 생성 후 Apache Server + MariaDB 10.* + PHP 7.* + phpMyAdmin(외부접속 허용) + SFTP 루트권한으로 접속까지 한방 정리해 보았다. 작업은 SSH 키를 이용하여 putty에서 함.
1. 루트권한으로 변경
# sudo su
2. LAMP스택과 달리 CENTOS 인스턴스는 초기 루트비번이 없으므로 비번 설정
# passwd
3. 업데이트
# yum update -y
4. 재부팅(안해도 되지만 권장함)
# reboot
5. 아파치서버 설치
# yum install httpd -y
6. 아파치서버 시작
# systemctl start httpd
※ 서버 IP나 도메인으로 접속하여 확인.
7. 아파치서버 부팅시 자동시작 등록
# systemctl enable httpd.service
8. 방화벽 설치(aws 인스턴스는 방화벽 설치가 안되어 있다)
# yum install firewalld -y
9. 방화벽 시작
# systemctl start firewalld
10. 방화벽 부팅시 자동시작 등록
# systemctl enable firewalld
11. 방화벽 웹포트 설정
# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload
12. vi편집기를 이용해 mariaDB 설치를 위한 영역설정
# vi /etc/yum.repos.d/MariaDB.repo
13. insert키를 누르고 아래 내용 붙여넣기(그냥 마우스 우클릭하면 된다)
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
14. vi편집 저장하고 빠져나가기
:wq
15. mariaDB 설치
# yum install MariaDB-server -y
16. mariaDB 시작
# systemctl start mariadb
17. mariaDB 설치 상태 보기
# systemctl status mariadb
18. mariaDB 부팅시 자동시작 등록
# systemctl enable mariadb
19. mariaDB 보안설정
# mysql_secure_installation
Switch to unix_socket authentication [Y/n] Y
Change the root password? [Y/n] Y
New password: Type new root password
Re-enter new password: Re-enter new root password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
20. PHP 7.4 설치(with 관련모듈 설치)
# yum install epel-release yum-utils -y
# yum install rpms.remirepo.net/enterprise/remi-release-7.rpm -y
# yum-config-manager --enable remi-php74
# yum install php php-common php-mcrypt php-cli php-gd php-curl php-mysql -y
아파치서버, DB, PHP 설치가 끝났다.
이제 vsftpd와 ssh를 설치하고 간단한 설정으로 root권한으로 sftp에 접속하고 phpmyadmin까지 설치한다음 외부접속이 가능하게 해보자. 이것을 하는 이유는 phpmyadmin을 yum으로 설치할 시 외부접속이 가능하게 하는 과정이 복잡하고 서버 환경에 따라 안되는 경우가 많기 때문. 그냥 phpmyadmin을 통째로 루트디렉토리(html, public_html 등)의 하위 디렉토리에 업로드하고 직접 접속하는 것이 편하다.
21. openssh-server 설치
# yum install openssh-server openssh-clients openssh-askpass
22. openssh 설정
# vi /etc/ssh/sshd_config
=> port 22라고 되어 있는 곳의 주석(#)을 제거.
=> PermitRootLogin yes라고 되어 있는 곳의 주석을 제거.
# service sshd restart
23. vsftpd 설치
# yum install vsftpd -y
24. vsftpd.conf 파일 수정
# vi /etc/vsftpd/vsftpd.conf
=> 94 라인 쯤에 있는 chroot_list_enable을 YES로.
=> 96 라인 쯤에 있는 chroot_list_file=/etc/vsftpd/chroot_list 활성화(주석처리 되어 있으면 제거)
:wq로 저장
25. vsftpd 설정 2가지
# vi /etc/vsftpd/ftpusers
=> 상단의 root을 제거 후 저장
# vi /etc/vsftpd/user_list
=> 상단의 root을 제거 후 저장
26. vsftpd에 허용할 계정 등록
# vi /etc/vsftpd/chroot_list
=> 상단에 root을 적고 저장.
27. selinux 해제 하기
# vi /etc/selinux/config
=> SELINUX=enforcing 을 disabled로 변경 후 저장.
28. vsftpd 활성화 및 재시작
# systemctl enable vsftpd
# systemctl restart vsftpd
29. httpd 재시작
# systemctl restart httpd
30. phpmyadmin 설치를 위한 unzip 설치.
# yum install unzip -y
31. phpmyadmin 다운로드
files.phpmyadmin.net/phpMyAdmin/5.0.4/phpMyAdmin-5.0.4-all-languages.zip
phpmyadmin-5.0.4-all-languages.zip의 압축을 푼 다음 폴더로 들어가서 모든 파일들을 모두 선택하고 다시 압축하고 이름을 phpmyadmin.zip으로 변경한다(임의대로 이름 정해도 된다. ex) 1.zip 등)
32. 파일질라 접속
CENTOS는 키를 사용한 FTP 접속시 업로드가 안되지만, 위 작업으로 가능하게 되었다. 파일질라에 서버 IP 입력하고 계정이름은 root로, 비번은 설정한 비번을 입력하고 포트번호는 22로 해서 접속한다.
31. 루트디렉토리에 phpmyadmin 디렉토리를 생성 후 그곳에 압축한 zip파일을 업로드하고 압축을 푼다.
# unzip phpmyadmin.zip
32. 웹브라우저로 phpmyadmin 접속해 본다.
http://www.******.com/phpmyadmin
- 끝 -
'잡담' 카테고리의 다른 글
냉각수가 흔적도 없이 증발(사라짐)하는 현상 (2) | 2022.11.25 |
---|---|
12V DC 차량용 캠핑용 냉장고 추천(가성비 위주 18L~26L) (1) | 2022.09.24 |
탐지 출정 1~2박(차박)을 위한 아이템 추천 (0) | 2022.09.10 |
승용차(세단) 차박매트 종류별 장단점, 후기 (4) | 2022.02.24 |
내가 금속탐지 정보공유 블로그를 개설한 이유 (3) | 2019.12.19 |
댓글