Notice
Recent Posts
Recent Comments
Link
보안교과서
[SeSAC 성동캠퍼스] sesac 1기 성동캠퍼스 리눅스 11/09 본문
전날 복습
<WAS-WEB 연동하기>
--WAS 설치 및 설정--
** Tomcat 소스 설치하기 **
1. 터미널로 was서버에 접속하기
#ssh root@10.0.2.5
3. 톰캣 소스 다운로드
# wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.4/bin/apache-tomcat-9.0.4.tar.gz
4. 압축 해제 & 경로 이동
# tar xvzf ./apache-tomcat-9.0.4.tar.gz
# mkdir /usr/local/tomcat
# mv ./apache-tomcat-9.0.4/* /usr/local/tomcat/
5. java sdk 설치
# sudo apt-get install openjdk-8-jdk
5. 톰캣 실행
#/usr/local/tomcat/bin/startup.sh
=============
톰캣 구동 확인 : 포트번호 = 8080
=============
--WEB 설정--
#
vi /etc/nginx/sites-available/default
server {
listen 80 default_server;
server_name _;
location / {
index index.html index.htm index.jsp;
proxy_pass http://was_server:8080;
}
}
수정 후, 저장
7. nginx 재구동
#systemctl start nginx (또는 service nginx start)
8. 브라우저를 통해 웹서버로 요청한 결과가 고양이
오류
was서버에서는
- netstat -anp | grep [port number] 정상적으로 확인하기
- tomcat 작동하는 것 확인하기
- web 서버 설정할 때 나의 설정 was_server ip를 그대로 써줘야한다.
database
#mysql 서버 설치하는법
db서버에서 한다.
sudo apt-get install mariadb-server
sudo netstat -anp | grep (mariadb or mysql)
sudo systemctl enable mariadb
#sudo를 써서 실행가능하겠지만
**mariadb 특정버전에서 서버 구동이 로컬서버
디폴트설정이다. 그래서 이 부분에서 변경을 해줘야한다.**
#vi /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 0.0.0.0
#나와서
systemctl restart mariadb
sudo systemctl enable mariadb
#로 접속한다.
mysql -u root -h localhost
MYSQL 기본 명령어
https://leechoong.com/posts/2018/mysql_basic/
강사님이 알려주셨던 사이트
use mysql
#쓰면 MariaDB []에서 MariaDB [mysql]
show databases;
show tables;
create database TESTDB1;
Query OK, 1 row affected (0.001 sec)
use TESTDB1;
show tables;
#아무것도 안나옴 그러니 테이블 만들자
create table test_1 (se
-> name varchar(15)
->phone varchar(10) ) ;
#QUERY OK 뜸
show tables;
#그림1
desc test_1;
select name,phone from test_1;
#이름 폰번 가져온다
select name, phone from test_1;
DELETE FROM test_1 WHERE name="name2";
#이름을 테이블에 가져온다
select * from test_1;
#다 가져온다
SELECT *FROM test_1 WHERE name="user2";
#유저2 의 정보 가져옴
UPDATE test_! SET phone="3333-4444" WHERE name="user2"
#전화번호 변경
=========
was로 이동해서
mysql 입력하면
설치하라고 뜬다,.
sudo apt-get install mariadb-client-core-10.3
mysql -u mydb -p -h 10.10.10.4
비번 abcd ...
use
cd /usr/local/tomcat/webapps/ROOT
vi login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
String uid = request.getParameter("name");
String pwd = request.getParameter("pwd");
String DB_URL = "jdbc:mysql://10.10.10.4:3306/mycl";
String DB_USER = "mydb";
String DB_PASSWORD = "abcd";
String sel = "";
ResultSet rs = null;
Connection conn;
Statement stmt;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
stmt = conn.createStatement();
//사용자정보조회
sel = "select * from userInfo where uname='" + uid + "' and pass='" + pwd + "'";
rs = stmt.executeQuery(sel);
web서버에서는 nginx 재실행
systemctl restart nginx
DB 서버에서는 톰켓 재실행
#톰켓 재실행
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
그러면 web ip로 로그인해서 [ip].login.jsp로 실행하면
success가 나와야한다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
String uid = "admin"; // request.getParameter("name");
String pwd = "1234" ; //request.getParameter("pwd");
String DB_URL = "jdbc:mysql://10.10.10.6:3306/myd";
String DB_USER = "mydb";
String DB_PASSWORD = "abcd";
String sel = "";
ResultSet rs = null;
Connection conn;
Statement stmt;
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
stmt = conn.createStatement();
//사용자정보조회
sel = "select * from userInfo where uname='" + uid + "' and pass='" + pwd + "'";
rs = stmt.executeQuery(sel);
if (rs.next()) {
out.println("Success");
}
else
out.println("fail");
conn.close();
} catch(Exception e) {
out.println(e.getMessage());
}
%>
위 코드는 success가 나와있을 때의 페이지를 코드이다. 5,6 줄에 ; 와 // 주석처리를 통해서 하니까 나왔다..
다음은 login.html을 통해서 로그인 ID/PWD를 입력받도록 하고,
로그인 성공 시, main.html
주어진 코드를 활용해서 변경
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
로그인 창!
</head>
<body>
<form action = "login.jsp" method = "GET">
User ID : <input type="text" name="name" />
<br />
Password : <input type="password" name="pwd" />
<input type="submit" name="로그인" />
</form>
</body>
</html>
미션)
login.html을 통해서 로그인 ID/PWD를 입력받도록 하고,
로그인 성공 시, MAIN.html 페이지를 얄어서 보여준다
로그인 실패 시, login.html로 돌아간다.
이때, login.html에는 이전에 입력했던 값이 남아있으면 안된다.
전송 method는 post 방식을 사용하고, post 방식으로 동작하는지는
access.log를 통해서 확인할 수 있다.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
로그인 창!
</head>
<body>
<form action = "login.jsp" method = "post">
User ID : <input type="text" name="name" />
<br />
Password : <input type="password" name="pwd" />
<input type="submit" value="로그인" />
</form>
</body>
</html>
create database mycl;
use mycl;
create table userInfo (
uid int,
uname varvhar(20),
pass varchar(128),
profile varchar(200),
priority int );
insert into userInfo (uid, uname, pass, profile, priority)values(0, "admin", "1234", "관리자", 0);
insert into userInfo (uid, uname, pass, profile, priority)values(1, "user1", "abcd", "행인1", 0);
insert into userInfo (uid, uname, pass, profile, priority)values(2, "user2", "abcd", "행인2", 0);
insert into userInfo (uid, uname, pass, profile, priority)values(3, "user3", "abcd", "행인3", 0);
database
sudo apt-get install mariadb
sudo netstat -anp | grep (mariadb or mysql)
sudo systemctl enable mariadb
sudo mysql - u root -h localhost
#sudo로 접속을 했는데 원격지에서는 접속이 안될 수도 있다.
#mariadb 특정버전에서 서버구동이 로컬서버 디폴트설정이다.
# 그래서 vi /etc/mysql/mariadb.conf.d/50-server.cnf
#bind-address = 0.0.0.0으로 수정해줘야한다 .
나와서 재실행
#systemctl restart mariadb
'SK쉴더스' 카테고리의 다른 글
[SeSAC 성동캠퍼스] 어플리케이션 보안_취약점 진단 (0) | 2023.11.16 |
---|---|
Linux 기본 명령어 LIST (0) | 2023.11.08 |
[sesac 성동캠퍼스 1기] 11/08 리눅스교육 5일차 (0) | 2023.11.08 |
[sesac 성동캠퍼스 1기] 11/07 인프라 활용을 위한 파이썬프로그래밍 교육 6일차 (0) | 2023.11.07 |
[SeSAC 성동캠퍼스] server에 있는 doge사진 웹에 올리기 (0) | 2023.11.07 |