MY MEMO

[SERVER] CentOS7 웹 서버 setting 본문

STUDYING/OS

[SERVER] CentOS7 웹 서버 setting

l_j_yeon 2017. 7. 4. 12:06

[설치 과정]

jdk -> tomcat -> mysql -> ftp install -> ssh install


[아래의 설치 방법]

tomcat만 설치 (80port를 열어서 apache를 대체함) => apache를 설치하지 않고도 apach+tomcat 서버 만듬

mariadb사용 : mysql과 뿌리는 같지만 일부분이 다름


이유)

tomcat만 설치해도 80포트로 접속이 가능

왜? open jdk가 자동으로 설치되기 때문


open jdk란? opensource jdk -> jdk를 오픈소스화 한것 -> 완벽하지 않음

oracle jdk -> 완벽함


따라서 oracle jdk를 설치해 주는 것이 좋음


===========================================================================================


[설치된 package 검색]

 rpm -qa | grep 찾고 싶은 package 이름

 sudo yum list installed "패키지 이름"

  

[설치된 파일 삭제]

 sudo yum remove httpd* -y

 sudo yum remove jdk* -y  

 sudo yum remove java* -y

 sudo yum remove my* -y


 sudo reboot


[기존 방화벽 포트 확인]

 sudo firewall-cmd --list-ports

  

[기존 방화벽 포트 제거 => 포트 제거]

 sudo firewall-cmd --permanent --zone=public --remove-port=80/tcp

 sudo firewall-cmd --permanent --zone=public --remove-port=8080/tcp

 sudo firewall-cmd --permanent --zone=public --remove-port=8443/tcp

 sudo firewall-cmd --reload


[방화벽 포트 추가 => 포트 풀음]

 sudo firewall-cmd --permanent --zone=public --add-port=21/tcp

 sudo firewall-cmd --permanent --zone=public --add-port=22/tcp

 sudo firewall-cmd --permanent --zone=public --add-port=80/tcp

 sudo firewall-cmd --permanent --zone=public --add-port=443/tcp

 sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp

 sudo firewall-cmd --permanent --zone=public --add-port=5938/tcp


[port forwarding sample]

 firewall-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080 --permanent

 firewall-cmd --reload


[마리아DB 시스템 시작 시 시작(등록)]

 sudo systemctl enable mariadb


[마리아DB 서비스 시작 및 보안설정]

 sudo systemctl start mariadb

 sudo systemctl status mariadb

 sudo mysql_secure_installation


[DB 보안설정]

 1.root 비밀번호 설정여부 - y 비밀번호 2번 입력

 2.익명계정 제거여부 - y

 3.root 계정 외부접속 차단 - y

 4.테스트 DB 및 접속이력 삭제 - y

 5.테이블 권한 재로드 - y

 

[SELINUX 상태 확인]

 sudo sestatus


 mode가 enforcing 즉 실행상태

 +) SELINUX는 인터넷이 연결된 상태에서 필수!



[port 풀기]

semanage port -l | grep mysqld_port_t

-> SELINUX에서는 자신이 기본적으로 열고있는 port 이외에는 막음 따라서 풀어줘야함


[mariaDB 서버 언어설정]

sudo vi /etc/my.cnf.d/server.cnf


(추가)

[mysqld]

character-set-server=utf8

collation-server=utf8_general_ci


저장 후 sudo systemctl restart mariadb


[mariadb 사용자 계정 추가 및 권한 설정]

sudo mysql -uroot -p

비밀번호


use mysql;


* charset 변경 확인

show variables like 'c%';


[사용자 계정 생성]

create user '계정 이름'@'%' identified by '비밀번호';


[모든 DB, 모든 테이블 권한 부여]

grant all privileges on *.* to '계정 이름'@'%';


[권한 적용 및 재로드]

flush privileges;


[mysql 나가기]

exit


[mariadb 재시작]

sudo systemctl restart mariadb 


[maria DB 시작하기]

mysql -u user 이름 -p

비밀번호 


[filezilla 접속 방법]


host : ip port :22

protocol : SFTP를 이용하여 접속

user : ID

password : 비밀번호


[SSH 서비스 설정]

sudo vi /etc/ssh/sshd_config


#Port 22 -> Port 22

#Protocol 2 -> Protocol 2

#ServerKeyBits 1024 -> ServerKeyBits 2048

#LoginGraceTime 2m -> LoginGraceTime 3m

#PermitRootLogin no -> PermitRootLogin no

#MaxAuthTries 5 -> MaxAuthTries 5

#MaxSessions 6 -> MaxSessions 6

#IgnoreRhosts yes -> IgnoreRhost yes


[저장 후 재시작]

sudo systemctl restart sshd

 

[톰캣 설치]

sudo yum install -y tomcat*

sudo systemctl enable tomcat

sudo systemctl start tomcat


[jdk 다운로드]

wget -c 주소랑 cookie

=> 주소랑 cookie 값 얻어오는 방법

   jdk linux버전을 다운받은 후 chrome://downloads에 들어가서 다운로드 된 주소를 복사해서 붙여넣기


[설치 파일 이름 변경하기]

mv jdk-8u131-linux-x64.rpm\?AuthParam\=1495957368_9164317af788b0392a02d2334b6dc573 jdk-8u131-linux-x64.rpm

[파일 풀기]

rpm -ivh jdk-8u131-linux-x64.rpm

alternatives --config java

open jdk말고 새로 설치한 jdk 선택


그럼 완성!!!


+) webapps/ROOT => apache+tomcat 즉 tomcat의 기본 폴더 변경하기


cd /var/lib/tomcat


만약 내가 원하는 디렉토리 폴더이름이 a라면

sudo mkdir a


cd a


sudo vim index.html


<html>

<body>

Hello

</body>

</html>

   

esc를 누르고 wq

하면 writing을 한 이후에 quit를 하게 될 것이다


ls를 누르면 index.html파일이 생성된 것이 보일 것이다.


sudo vi /etc/tomcat/server.xml 보면 맨 마지막에 


<Context 는 추가되어있지 않은 상태일 것이다

자신이 원하는 기본 폴더 위치를 아래와 같이 추가해준다 (docBase에 설정)

<Context 앞에서 tab을 눌러서 간격을 띄워준다 



그리고 http://자신의 ip로 들어가서 Hello가 뜨면 성공



+) tomcat이 servlet을 실행시켜주기 때문에 servlet 실행 됨

+) spring java의 war 파일을 tomcat이 자동으로 풀어줌 따라서 jsp파일 war파일로 만든후 넣어주면 완성


+) 명령어


[설치 할 수 있는 pakcage 검색]

sudo yum list install "패키지 이름"

  

[java jdk version 알기]

javac -version : jdk version

java -version : java version


[파일을 찾을 때]

whereis 찾고싶은 파일 이름

sudo find -name '찾을 파일 이름' -print

sudo find / | grep 찾을 파일 이름


[파일의 권한을 볼 때]

ls -al | grep 파일 이름 : 파일의 권한을 알아볼때

 

[apache error log 보기]

sudo tail -f /var/log/httpd/error_log


[enable과 disable을 알려주는 명령어]

systemctl list-unit-files


[rpm 명령어]

설치용


'STUDYING > OS' 카테고리의 다른 글

[SERVER] CentOS7 apache+tomcat mysql 설치  (0) 2017.07.07
[SERVER] 추가  (0) 2017.07.07
[SERVER] cafe24 web hosting하기  (1) 2017.06.30
[SERVER] ubuntu에 apm설치하기  (0) 2017.06.08
[NETWORK] NETWORK에 관한 간단한 정의  (0) 2017.04.26
Comments