분류 전체보기 47

젠킨스와 github 연동하기

1.먼저 젠킨스가 설치되어있는 서버에 git이 설치가 되어있어야 한다.([root@localhost ~]yum install git -y 로 git 설치)2.Dashboard > jenkins관리 > system Configuration로 이동 3. system Configuration상세에서 GitHub부분을 찾아 아래와 같이 설정하면 팝업발생 4.아래와 같이 깃 정보를 입력후 저장  5. 설정에서 나와서 Dashboard >Jenkins 관리 > Tools로 이동   -> 아래와 같이 빌드시킬 gradle 설정을 한다.(버전에 맞게 설정)  6.새로운Item클릭 > Enter an item name을 입력한 다음 Freestyle project클릭 후 다음7. GitBug project url 등록8..

SERVER/centos 2025.02.12

32.[오라클]컬렉션 사용자정의 데이터타입 정리

사용자 정의 타입으로 사용할수 있는 컬렉션 타입은 연관배열을 제외한 VARRAY와 중첩테이블만 사용할수 있다.컬렉션은 아니지만 OBJECT타입도 사용자 정의 타입으로 사용할수 있다.(객체지향과 비슷한 개념이지만 메소드나 함수등에 따라 쫌 다르다..) ※컬렉션 타입별 선언구문VARRAY : CREATE OR REPLACE TYPE [타입명] IS VARRAY(최대크기) OF [값타입];중첩 테이블 : CREATE OR REPLACE TYPE [타입명] IS TABLE OF 값타입;OBJECT : CERATE OF REPLACE TYPE [타입명] IS OBJECT(타입1 타입1_데이터타입 , 타입2 타입2_데이터타입......);별도 타입을 선언하지 않고 사용자가 정의한 컬렉션 타입을 생성하여 매번 선언할..

DB/ORACLE 2025.01.25

31.[오라클]컬렉션 메소드

메소드명메소드타입설명사용법DELETE프로시저컬렉션 요소 삭제컬렉션.DELETETRIM프로시저VARRAY나 중첩테이블의 끝에서 요소를 삭제컬렉션.TRIM(2)  → 맨마지막부터2개요소제거EXTEND프로시저VARRAY나 중첩테이블의 끝에서 요소추가컬렉션.EXTEND → 맨끝에NULL추가 컬렉션.EXTEND(2,1)  → 맨끝에 첫번째요소를 2개복사하여 추가EXISTS함수VARRAY나 중첩테이블에 특정요소가 존재하면 TRUE를 반환일반적인 EXISTS부분과 동일하게 쓰면 된다.(특정값이 존재하는지여부)FIRST함수컬렉션이 첫번째 인덱스 반환FOR 컬렉션.FIRST..컬렉션.LASTLAST함수컬렉션의 마지막인덱스를 반환FOR 컬렉션.FIRST..컬렉션.LASTCOUNT함수컬렉션의 요소 총 갯수를 반환컬렉션.CO..

DB/ORACLE 2025.01.25

3.[spring boot]JavaConfig(@Configuratio)와 @Bean

JavaConfig정리JavaConfig란 DI컨테이너에 불러올 설정을 자바의 클래스에 작성하기 위한 스프링의 기능.JavaConfig클래스는 여러파일로 나눠 작성할수 있고, 작성한여러 JavaConfig클래스를 DI컨테이너로 불러오는 방법은 크게3가지AnnotationConfigApplicationContext클래스의 생성자 인수로 지정@Import로 가져오기컴포넌트 스캔1.AnnotationConfigApplicationContext클래스의 생성자 인수로 지정하여 가져오려면 각 @Configration를 선언한 후   ApplicationContext context = new AnnotationconfigApplicationContext(AConfig.class,BConfig.class); 으로 각 ..

WEB/SPRING 2024.11.03

2.[spring boot]프로파일로 설정 전환하기

프로파일 : 설정을 그룹화하는 DI컨테이너의 기능이다. 그룹화 할떄의 그룹이름이 프로파일 이름이되므로 그룹화 한 후에는 DI컨테이너를 생성할때 활성화할 프로파일 이름을 지정하는 것이다.이를 통해 애플리케이션을 실행할때 사용할 설정을 전화할수 있다. 예를 들어 serviceImple클래스의 Bean정의를 하고 각 repository(데이터 베이스에 접근하는 구상클래스)에 profile을 설정을 하면 아래와 같은 모형이 된다.    아래의 예와 같이 Profile을 설정하고 실행을하면아래와 같이 spring.profile.active에 설정값에 따라 실행이 된다. 이런 형식으로 property에 Profile을 설정하면 각 화면을 그룹화 시켜 실행할수 있다.

WEB/SPRING 2024.11.02

[리눅스 오류 관련]가상화머신 waiting for cache lock 및 apt update오류

가상화 머신에서 apt update를 하려고 하는데 아래와 같은 에러 발생확인해 보니 캐시가 남아있어서 lock걸린거라고 하는듯????(외적으로 apt update할때 오류가 발생을 하는데 이는 서버시간과 현재 시간이 불일치하여 오류가 난다고 한다. 이럴때는 시스템을 끈 다음 실행하면 현재시간이 맞춰진다.) ※아래와 같이파일을 삭제한 다음 apt를 update하면 된다.root@k-VirtualBox:/# rm /var/lib/apt/lists/lock           root@k-VirtualBox:/# rm /var/cache/apt/archives/lock root@k-VirtualBox:/# rm /var/lib/dpkg/lock*root@k-VirtualBox:/# dpkg --configur..

SERVER/공통 2024.08.16

[리눅스시스템 보안]웹서버 구축 및 취약점을 통한 해킹2

1.웹 로그분석웹서버의 접근 로그는 /var/log/apache2에 위치하며 다음과 같이 기본 점근 로그의 구조를 파악해야한다.192.168.156.18 - - [06/Jul/2024:15:07:24 +0900] "GET /board/login_chk.php HTTP/1.0" 200 394 "-" "Mozilla/5.0 (Hydra)"[순서대로] 접속자IP주소 ,접속시간 ,요청방식/요청페이지 ,프로토콜버전 ,HTTP응답코드 ,전송크기 ,접속브라우저도구 2.아파치 보안 설정2.1 심볼릭 링크 기능 비활성화 웹서버를 운영할때 리눅스의 심볼릭 링크 기능을 활용하면 웹 문서 경로이외의 경로에 접근할수 있다.1.심볼릭 링크 생성root@k-VirtualBox:/var/www/html# ln -s / sym.htm..

SERVER/ubuntu 2024.07.06

[리눅스시스템 보안]웹서버 구축 및 취약점을 통한 해킹

웹서버 구축은 아래와 같이 한다.※웹 서버 구축>아파치 + php + maria db설치1.패키지 정보 update   # apt update2.아파치 웹서버 설치(기본2.4.x버전)    # apt install apache2 -y3.mariadb설치    # apt install mariadb-server -y4.php모듈 설치    # apt install php php-mysql -y5.패키지 정보를 확인하여 취약한 버전이 설치되어있는지 점검    # apt show apache26.웹서비스 시작 및 mariadb시작    #systemctl start apache2    #systemctl start mariadb7.방화벽 확인 후 정책 추가    # ufw enable     # root@k-..

SERVER/ubuntu 2024.06.30

[리눅스시스템보안]PAM으로 사용자 계정 보안

PAM(인증모듈)은 Pluggable Authentication Modules의 약자로 리눅스 시스템의 사용자의 인증을 담당하는 모듈이다. ※PAM처리 흐름도1.로그인시도 >2.구성확인(PAM구성파일)>3.PAM모듈에 사용자 신원 확인 >4.확인 후 로그인 허용  ※PAM의 구성 파일은 모듈타입,ControlFlag,PAM모듈,Module Arguments총 네가지이다.#모듈 타입 4가지모듈설명authentication module비밀번호,공개키(public key)를 이용하여 사용자의 신원을 확인하는 모듈account module계정만료,시간,특정 서비스 접근 권한등 인증 조건을 검사하는 모듈password module비밀번호갱신,비밀번호 복잡도등을 설정하는 모듈session module사용자 세션의 ..

SERVER/ubuntu 2024.06.23

[리눅스시스템보안]방화벽

정의 : 방화벽이란 불법으로 외부에서 침입하는 것을 차단하고 내부에 정보가 유출되는것을 방지하는 침입차단 시스템 서버간 통신 데이터를 패킷이라고 부르는데 외부에서 들어오는 패킷은 인바운드라고 하고, 서버에서 나가는 패킷은 아웃바운드라고한다. 이 패킷의 정책을 설정하여 정책에 따라 패킷을 허가하거나 거부하는 방식으로 동작한다. 리눅스 방화벽은 크게 리눅스 커널을 제어하여 실제 네트워크 패킷을 필터링하는 방화벽 처리부와 필터링 정책을 추가/제거하는 방화벽 제어부로 구성된다. 우분투는 ufw(Uncomplicated Firewall)방화벽 시스템을 사용하고, redhat linux는 firewalld방화벽 시스템을 사용한다. 방화벽 처리 흐름을 보면 리눅스 커널에는 nftables프레임워크가 패킷을 필터링(허..

SERVER/ubuntu 2024.06.23