Jost Do It.

그냥 IT해.

반응형

서버 및 환경 60

[Ubuntu] ssh 접속 허용하고 OTP 접속 설정하기

[개요] 외부 ip에서 집 데스크톱으로 접근하다보니 보안설정이 필요했다. 여러 설정 방법들이 있겠지만 관리하는 코스트는 줄이면서 최대한 간단하게 설정하고 싶었다. 그 중 사이트에 접속할 때마다 사용하는 OTP를 우분투에서 사용하는 방법이 있어 OTP로 보안을 적용하였다. [ssh 설정하기] 먼저 ssh 관련 패키지를 설치해준다. sudo apt-get install openssh-server 설치 후 ssh 상태가 정상적인지 확인한다. sudo systemctl status ssh 정상적이라면 아래와 같은 결과가 나온다. ● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; v..

[Ubuntu] 방화벽 설정 및 외부 포트 허용 설정

[방화벽 설정/해제] 우분투에서 기본적으로 방화벽은 ufw 명령어를 통해 설정할 수 있다. 디폴트로 우분투 방화벽은 해제 상태이기 때문에 아래 명령어로 설정해줄 수 있다. sudo ufw enable 설정한 방화벽은 다음 병령어로 해제할 수 있다. sudo ufw disable [방화벽 상태 확인] 아래 명령어를 통해 방화벽 상태를 확인할 수 있다. sudo ufw status verbose 간략한 상태만 보려면 verbose를 입력하지 않아도 된다. 방화벽 상태는 다음과 같다. Status: active Logging: on (low) Default: deny (incoming), allow (outgoing), deny (routed) New profiles: skip To Action From 방화..

[Gitlab] CI/CD에서 Merge Request 시 CI_PIPELINE_SOURCE가 push로 실행되는 이유

문제 상황 gitlab에서 특정 브랜치에 Merge Request(MR)가 발생하면 특정 stage를 실행하려고 아래와 같이 코드를 작성하였다. stage1: stage: example rules: - if: $CI_COMMIT_BRANCH == "prod" && $CI_PIPELINE_SOURCE == "merge_request_event" script: - echo "hello world!" 그런데 MR 후에도 해당 stage의 코드가 실행되지 않았다... 다음과 같이 ci/cd 테스트 스테이지를 작성해서 변수 값이 뭘로 설정되는지 확인해보니 push로 나오는걸 확인했다. test_stage: stage: test script: - echo "$CI_PIPELINE_SOURCE" 문제 원인 처음에는 ..

[docker] 유저에게 도커 권한 주기

개요 루트 계정이 아니면 특정 도커 명령어를 사용할 때마다 sudo를 적어줘야된다. 아래 방법으로 유저에게 도커 권한을 주면 sudo 명령어를 적지 않아도 된다. 방법 도커를 설치하면 호스트 내 도커 그룹이 생성된다. 아래 명령어를 통해 도커 그룹에 사용자를 추가하면 된다. sudo usermod -aG docker {유저명} 여기서 {유저명} 부분에 추가할 사용자명을 입력하면 된다. 나는 heenj라는 유저명을 입력했다. 제대로 적용됐는지 확인하기 위해 다음 명령어를 실행한다. cat /etc/group 그럼 아래와 같이 group명 docker에 heenj 유저가 할당된 것을 확인할 수 있다. Reference https://seulcode.tistory.com/557

[docker] 우분투에 도커 설치하기

OS 요구 사항 64bit의 우분투 운영체제가 설치돼야 하며, 아래 버전 중 하나여야 한다. Ubuntu Mantic 23.10 Ubuntu Lunar 23.04 Ubuntu Jammy 22.04 (LTS) Ubuntu Focal 20.04 (LTS) 도커 관련 패키지 삭제 설치된 도커 관련 패키지들이 있으면 충돌을 일으킬 수 있으므로 아래 명령어로 삭제를 먼저 진행한다. for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done 참고> 위 명령어는 설치된 관련 패키지들만 제거하므로 기존 도커 엔진 자체를 제거하고 싶으면 이 링크를 ..

[컴퓨터] 데스크톱 조립 (1) - 컴퓨터 부품 및 조립 전 고려 사항

개요 예전부터 내손으로 데스크톱을 맞추고 싶었는데 여러 핑계를 대며 차일피일 미루고 있었다. 그러던 중 연말에 갑자기 급뿜뿌가 와서 갑자기 컴퓨터 부품들을 구매하기 시작.... 이번에 조립하면서 많은 우여곡절들도 있고 컴퓨터에 대해 알게된 지식들도 많아서 그 과정들을 정리한다. 컴퓨터 부품 컴퓨터 부품들은 크게 메인보드, CPU, 메모리, 저장장치, 파워, 그래픽카드, 케이스 등으로 나뉜다. 컴퓨터는 각 부품들이 모여야 온전한 기능을 할 수 있는데, 각 부품들은 아래와 같이 사람에 비유할 수 있다. 1. CPU: 두뇌 CPU는 사람의 두뇌로 생각할 수 있다. CPU는 컴퓨터의 연산들을 처리하는데 좋은 CPU일수록 처리속도가 빠르고 연산량이 많다. CPU는 코어와 클럭이 크게 중요하다. 코어는 머리 개수로..

[인터넷] 집 랜선 포트가 안될 때 해결방법 (스위칭 허브 연결)

문제 상황 컴퓨터를 새로 맞추면서 기존 랜포트 외에 새로운 곳에 컴퓨터 랜선을 연결해야 했다. 하지만 우리 집에서는 기존 랜포트 외에 다른 곳에서는 인터넷 연결이 되지 않았다. 문제 원인 기본적으로 인터넷 회사에 인터넷 신청을 하면 1회선만 들어온다. 즉, 회선이 1개이기 때문에 회선과 연결된 특정 랜포트를 제외하면 다른 포트에서는 인터넷을 사용할 수 없다. 집 안에 찾아보면 통신단자함을 찾을 수 있다. 통신 단자함을 확인하면 통신사로 부터 집으로 들어오는 국선이 특정 포트에만 연결돼 있음을 확인할 수 있다. 해결 방법 다른 랜포트도 사용하게 하려면 해당 1회선을 여러 포트에 나눠줘야 한다. 이는 스위칭 허브를 통해서 여러 포트에 나눌 수 있다. 통신단자함 내부에 스위칭 허브를 연결하려면 UTP선을 각 ..

[공유기] 공유기 교체 후 속도 비교 (와이파이 4에서 와이파이 6로 변경)

개요 우리집에는 포항에 살 때부터 함께한 공유기가 있다. 국민 공유기로도 불리는 iptime의 제품인데, 최근까지 불편함을 느끼지 못해서 계속 사용하고 있었다. 그러던 중 IoT에 꽂혀 집에 여러 제품들을 인터넷에 연결하면서 인터넷 속도가 많이 느려지는게 느껴졌다. 와이파이 버전별 특징 비교 공유기는 기본적으로 와이파이를 통해 무선으로 인터넷에 접근할 수 있게 한다. 여기서 와이파이는 버전이 나뉘는데 버전이 올라갈수록 속도나 안정성, 보안, 기능 등이 개선되고 있다. 우리집에서 사용하던 공유기는 와이파이 4였는데 요즘은 6까지 사용되고 있으니 꽤 구식이라고 할 수 있다. 특히 최근 와이파이 6는 여러 기기간 다중 접속을 효율적으로 처리하기 때문에 성능 향상이 기대됐다. 와이파이 4부터 6까지의 특징은 아..

[git] copy한 레포에서 submodule이 있을 때 초기화 방법

문제 상황 성질이 다른 데이터에 대해 거의 비슷한 작업을 해야해서 기존에 작업했던 모듈을 copy해 작업했다. 기존에 작업했던 모듈들은 git submodule을 가지고 있는데 copy한 작업을 git에 올리니까 submodule로 인식이 안됐다. .gitmodules에는 submodule 경로와 url이 잘 잡혀있지만... push된 결과는 일반 레포로 잡힌걸 확인할 수 있다. git submodule status를 확인 해보니 기존 레포와 달리 서브모듈이 인식안되는걸 확인할 수 있었다 (결과가 안나옴). 원래 레포에선 이렇게 서브모듈에 대한 상태정보가 나온다. 원인 깃을 초기화하고 새로운 원격 레포에 push 하면 git은 submodule에 대한 정보를 알 수 없다. 즉, submodule에 대한 ..

[클릭하우스] config 세팅 정보 변경 및 확인

문제 상황 보통 클릭하우스 configuration 파일(config.xml)에서 변수를 변경하면 자동으로 반영이 되지만 xml 파일을 함부로 수정하기엔 문제가 발생할 수 있어 쉽지 않다. 따라서 직접적인 xml 파일 수정 없이 클릭하우스 config를 변경하고, 반영이 잘 되었는지 확인할 방법이 필요했다. 해결 방법 클릭하우스 클라이언트를 이용해 설정할 수 있다. 먼저 클릭하우스 클라이언트의 옵션 정보들을 아래 명령어로 출력할 수 있다. clickhouse-client --help 이를 출력해보면 아래처럼 다양한 옵션을 설정할 수 있는 것을 확인할 수 있다. Main options: --help produce help message -V [ --version ] print version informat..

반응형