본문 바로가기

:SERVER

(30)
[easyupclass] EC2 서버 세팅 - jar 파일 실행 1. Git 설치 확인 git --version 2. Github repository 다운로드 copy url git clone [URL] 3. gradle로 빌드 - gradlew 파일 소유자에게 실행 권한 주기 cd [github 다운로드한 폴더] chmod u+x gradlew - 자바 11 설치(JDK, JRE) sudo apt update sudo apt-cache search jdk | grep openjdk-11 [openjdk-11-jdk - OpenJDK Development Kit (JDK)] 설치하기 sudo apt install -y openjdk-11-jdk [java설치 확인] java --version - gradlew로 프로젝트를 jar 파일 생성 ./gradlew build..
[easyupclass] 배포 흐름도 고정IP는 유동IP보다 비쌈 유동IP는 가정집에서 많이 사용 [EC2 고정아이피] 프리티어에서 탄력적 IP를 하나 무료 제공하지만 조건이 있다. 조건은 1개의 EC2와 탄력적 IP가 연결되어 있어야한다는 점이다. 출처: 이지업클래스 | 개발자를 위한 AWS DevOps 입문 [CI/CD 무중단 배포] https://easyupclass.e-itwill.com/course/course_view.jsp?id=74&rtype=0&ch=course
[easyupclass] 리눅스 기본 명령어 5 - 표준 입출력 cd /var/lib/tomcat8/webapps/ROOT/index.html cd /var/lib/tomcat/conf/server.xml 포트 변경 후 서비스 재시작 sudo service tomcat8 restart 포트 변경 후 사이트가 열리지 않으면 aws 방화벽을 수정해줘야함 인바운드 규칙에 변경한 포트 번호로 추가 [표준 입출력] sudo find / -name catalina.out cd /var/log/tomcat8 sudo tail : 파일의 제일 끝 부분을 출력 sudo tail -f [파일명]: 표준 출력. 파일의 제일 끝부분 10줄을 보여줌. 실시간으로 계속 로그를 보여줌. 모니터링 파일디스크립터 설명 0 표준 입력(Standard Input) 1 표준 출력(Standard Out..
[easyupclass] 리눅스 기본 명령어 4 - 권한과 그룹 - vim [파일명] 1. 엔터 누르면 일반모드로 넘어간다 일반모드에서 dd를 클릭하면 현재 행 삭제가 되지만 글자를 적을 순 없다 마우스 오른쪽 버튼 클릭 : 붙여넣기 yy : 현재 행 복사 p : 붙여넣기 ctrl+b : 위로 한 화면 스크롤 ctrl+f : 아래로 한 화면 스크롤 $ : 행의 맨 끝으로 이동 home : 행의 맨 처음으로 이동 shift+v : 현재 행 블럭 지정 y : 블럭 지정된 부분을 복사 u: undo ctrl+r : redo 2. i(insert)키를 누르면 입력모드로 넘어감 3. 내용 작성 후 esc키를 누르면 명령행모드로 넘어감 :wq 적고 엔터를 누르면 저장 후 종료한다 :w 저장 :q 에디터 종료 :q! 에디터 강제 종료 r: 4 w: 2 x: 1 su root 입력..
[easyupclass] 리눅스 기본 명령어 3 - 프로세스와 서비스 1. 프로세스와 서비스 apt install 로 설치할 경우 서비스로 등록이 된다 > 실행 파일을 직접 찾아서 실행할 필요가 없어진다 service --status-all sudo service tomcat9 stop : 톰캣9 서비스 종료 sudo service tomcat9 start : 톰캣9 서비스 시작 sudo service tomcat9 restart : 톰캣9 서비스 재시작 service 명령어 보다 systemctl 명령어 사용하는 걸 추천함. service 명령어는 systemctl 명령어의 wrapper script 여서 사용할 수 있는 명령어가 더 제한적이다. sudo systemctl list-unit-files: 등록되어있는 systemctl 명령어 목록을 확인할 수 있다 s..
[easyupclass] 리눅스 기본 명령어 1. clear: 화면의 내용을 지움 2. pwd: 현재 경로 확인 3. cd: 폴더 이동. 절대 경로와 상대경로로 이동하는 방법이 있음. 절대경로는 최상위 폴더 / (슬러쉬)를 포함해서 이동하면 됨. ex: cd /home/ubuntu 상대경로는 지금 위치에서 바로 위 혹은 바로 아래 폴더로 이동할 때 ex: 내 현재 위치가 home 폴더일 때 cd ubuntu 4. ls: 현재 폴더의 모든 파일(+폴더)과 파일의 상태를 보여줌 ls -l : 현재 폴더의 내용을 자세히 볼 수 있음 ls -a: 숨김 파일도 포함하여 모두 보여줌. 숨김 파일은 .으로 시작함 5. --help: 모든 명령어의 사용법을 알려줌 ex: ls --help 6. mkdir: 폴더 생성함 ex: mkdir user 7. touch:..
[easyupclass] RSA - 대칭키: 암호화, 복호화 할 때 같은 키를 사용. 열쇠 교환이 힘들다 - 공개키 기반 암호화 방식: RSA. 상대방의 공개키로 암호화해서 데이터를 보냄. A공개키로 암호화하면 A비밀키로 복호화하고 A비밀키로 암호화하면 A공개키로 복호화하는 방식. A. ------ B. A는 데이터를 보낼 때 B의 공개키로 암호화해서 데이터를 보내면, B는 B비밀키로 북호화한다 그러고나서 A의 비밀키로 한번 더 감싼다 [데이터 전송 방법 A to B] 1. 데이터를 수신자.B의 공개키로 암호화한다(데이터 암호화) 2. 암호화한 데이터를 다시 송신자.A의 비밀키로 암호화한다(전자서명) 3. 전송 [데이터 받는 방법] 1. 데이터를 송신자.A의 공개키로 복호화한다(서면 검증) 2. 복호화가 될 경우 수신자.B의 개인키로 ..
[easyupclass] EC2 서버 EC2 - 컴퓨터, 인프라 (운영체제, 톰캣, 자바를 설치해서 사용, 원격으로 접속하기 위해서 22번 port를 개방해서 ssh 명령어 사용) AWS 는 각 나라에 컴퓨터(서버)를 가지고 있고 특정 운영체제(ex: ubuntu)를 선택해서 컴퓨터를 임대하는 것 로컬 컴퓨터에서 AWS 컴퓨터로 [IP주소:포트번호]를 가지고 원격 접속을 하려면 방화벽의 차단을 풀어야함 Inbound 규칙(외부에서 내부로) 초기값은 모든 포트(0~65535)가 차단되어 있음 22번 포트를 개방 => SSH(Secure Shell) 사람 -명령->OS-제어->하드웨어,CPU,RAM 사람이 OS에 명령을 내릴 때 Shell 언어 사용 ex: cd, mkdir, dir, ... 원격 Shell 명령이 가능해진다. CLI 환경 출처..