pm2 포트 모니터링

리눅스/OS 일반|2024. 6. 27. 08:51
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Proxmox 에서 Load Balancer 사용하는 네가지 방법 (XFF : X-Forwarded-For 포함)

리눅스/OS 일반|2024. 6. 26. 14:13
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Proxmox VE 에서 LXC (LinuX Containers) 사용하기

리눅스/OS 일반|2024. 6. 25. 09:59
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

리눅스 시스템에서 shred 명령으로 파일 완전히 삭제하기 (복구 불가능하게 하기)

리눅스/OS 일반|2024. 6. 24. 10:11
반응형

shred 명령은 Unix 또는 Linux 계열 운영 체제에서 파일이나 디스크의 데이터를 영구적으로 삭제하는 데 사용되는 명령입니다.

shred 는 파일의 데이터를 여러 번 덮어써서 원래 데이터를 복구할 수 없도록 만듭니다. 이는 보안상 중요한 데이터를 안전하게 삭제할 때 유용합니다.

 

 

1. shred 명령 사용법

 

기본적인 shred 명령 사용법은 다음과 같습니다:

# shred [옵션] 파일명

 

주요 옵션
-n, --iterations=N: 파일을 덮어쓰는 횟수를 지정합니다. 기본값은 3입니다.
-z, --zero: 마지막 덮어쓰기 시 모든 비트를 0으로 설정합니다. 이는 덮어쓰기가 감지되지 않도록 합니다.
-u, --remove: 파일을 덮어쓴 후 삭제합니다.
-v, --verbose: 진행 상황을 자세히 출력합니다.
-f, --force: 읽기 전용 파일의 쓰기 권한을 변경하여 덮어씁니다.
-s, --size=N: 덮어쓰는 크기를 지정합니다.

 

 

2. 예제

 

파일을 3번 덮어쓰고 삭제
# shred -u 파일명

 

파일을 5번 덮어쓰고 마지막에 0으로 덮어쓰기
# shred -n 5 -z 파일명

 

진행 상황을 출력하면서 파일을 덮어쓰고 삭제

# shred -v -u 파일명

 

 

3. 주의 사항

 

- 저널링 파일 시스템 : shred 는 파일 시스템이 저널링을 사용하는 경우 (예: ext3, ext4, XFS 등) 덮어쓰기 효과가 제한될 수 있습니다. 저널링 파일 시스템에서는 파일의 메타데이터를 기록하므로 파일이 완전히 덮어쓰여지지 않을 수 있습니다.
- SSD 와 플래시 메모리 : SSD 와 플래시 메모리 장치는 내부적으로 쓰기 동작을 최적화하므로, shred 명령이 모든 데이터를 덮어쓰지 않을 수 있습니다. 이러한 장치에서는 장치 자체의 보안 삭제 기능을 사용하는 것이 좋습니다.
- 디렉터리 : shred 명령은 디렉터리 자체를 삭제할 수 없습니다. 디렉터리 내의 파일을 개별적으로 삭제해야 합니다.

 

 

4. 예제 시나리오


1) 중요한 텍스트 파일 삭제
중요한 텍스트 파일 sensitive_data.txt 를 안전하게 삭제하고 싶다면 다음과 같이 할 수 있습니다:
# shred -u -v sensitive_data.txt

 

이 명령은 sensitive_data.txt 파일을 덮어쓰고, 마지막에 삭제하며, 진행 상황을 출력합니다.

2) 특정 파일을 여러 번 덮어쓰기
파일 data.bin을 7번 덮어쓰고 마지막에 0으로 덮어쓰기:
# shred -n 7 -z -v data.bin

 

이 명령은 data.bin 파일을 7번 덮어쓰고, 마지막에 0으로 덮어쓰며, 진행 상황을 출력합니다.

shred 명령은 파일을 영구적으로 삭제하여 데이터 복구를 어렵게 만들 때 유용하지만, 사용 환경에 따라 제한이 있을 수 있으므로 주의해서 사용해야 합니다.

 

반응형

댓글()

Proxmox 용 Ubuntu 24.04 클라우드 이미지 및 템플릿 준비, VM 생성 및 볼륨 추가

리눅스/OS 일반|2024. 6. 21. 16:04
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Ubuntu 24.04 설치 후 한글 (fcitx) 사용하기

리눅스/OS 일반|2024. 6. 21. 10:27
반응형

최종 목적은 한영키를 눌러 한글과 영어가 자연스럽게 입력 전환 될 수 있도록 하는 것입니다.

기본적으로 ibus 가 설치되어 있어, 그냥 fcitx 를 설치하면 충돌로 인해 한영 전환이 'Shift + Spacebar' 밖에 되지 않습니다.

그래서 아래와 같은 절차로 전환해야 합니다.

 

1. 운영체제 한글화

 

지금은 화면의 모든 메뉴가 영문으로만 되어 있으므로 한글로 표시되도록 변경합니다.

터미널 창을 열고 한글 폰트를 설치합니다.

$ sudo apt -y install fonts-nanum

 

그다음 언어 설정 명령을 내리면 변경 가능한 언어 리스트가 출력되는데, 그 중에서 한글 (ko_KR.UTF-8. UTF-8) 을 찾아 번호를 입력하고, 시스템 기본 언어의 번호를 선택하면 됩니다.

$ sudo dpkg-reconfigure locales

...(생략)...

Locales to be generated: 300

...(생략)...

  1. None  2. C.UTF-8  3. ko_KR.UTF-8

Default locale for the system environment: 3

 

한글 환경을 사용하려면 로그아웃 후 다시 로그인 해야 합니다.

- 메뉴 : 시작 > Logout

 

이제 메뉴 버튼이 한글화가 되었습니다.

 

 

2. 한글 자판 설정

 

한글 환경이라고 하더라도 한글 자판이 없으면 한글을 입력 할 수 없습니다.

터미널을 열고 ibus 를 먼저 지운다음, fcitx 한글 입력기를 설치합니다.

$ sudo apt -y remove ibus* ibus-*

$ sudo apt -y install fcitx fcitx-hangul

 

삭제 후 로그아웃, 로그인을 하여 fcitx 만 있는 환경으로 적용해 줍니다.

그리고 아래 메뉴를 따라 선택합니다.

- 메뉴 : 시작 > 모든 애플리케이션 > Fcitx 를 먼저 실행해 줍니다. (화면에서는 변화 없음)

- 메뉴 : 시작 > 모든 애플리케이션 > Fcitx 환경 설정을 실행합니다.

- [Input Method] 탭에서 +, - 버튼을 이용하여 아래와 같이 설정을 맞춰줍니다.

  남게 되는 키보드 종류와 순서는 아래와 같습니다.

  Keyboard - Korean - Korean (101/104-key compatible)

  Hangul

- 저장 버튼이 없으므로 설정값 그대로 창을 닫습니다.

 

다시 로그아웃, 로그인을 반복하면 우측 'Alt' 버튼 (또는 Ctrl + Space) 으로 한/영 전환이 가능해 집니다.

혹시, 안되었다면 fcitx-configtool 명령 후 전역설정에서 단축키 > 트리거 입력기에 한개를 누르고 '한영키' 로 변경해주면 됩니다.

 

 

3. 한글 자판 설정 (추가)

 

위와 같이 해도 안될 경우 fcitx5 를 설치해주면 됩니다.

기존 패키지는 그대로 두어도 자동 업데이트 됩니다.

# apt -y install fcitx5 fcitx5-hangul

 

그리고 아래 메뉴를 따라 선택합니다.

- 메뉴 : 시작 > 모든 애플리케이션 > Fcitx5 를 먼저 실행해 줍니다. (화면에서는 변화 없음)

- 메뉴 : 시작 > 모든 애플리케이션 > Fcitx5 환경 설정을 실행합니다.

- [Input Method] 탭에서 +, - 버튼을 이용하여 아래와 같이 설정을 맞춰줍니다.

  남게 되는 키보드 종류와 순서는 아래와 같습니다. (간혹 한글로 표기)

  Keyboard - Korean - Korean (101/104-key compatible)

  Hangul

- 저장 버튼이 없으므로 설정값 그대로 창을 닫습니다.

 

다시 로그아웃, 로그인을 반복하면 Fcitx5 실행 후에 '한/영 전환' 이 가능하므로, 로그인시 자동 실행되도록 합니다.

- 메뉴 : 시작 > 기본 설정 > 시작 프로그램 > [추가] 클릭

- 이름 : fcitx5 자동 실행 / 명령 : fcitx5 > [추가] 클릭 > [닫기] 클릭

또다시 로그아웃, 로그인 후 테스트를 진행합니다.

 

반응형

댓글()

Debian 12.5 설치 후 기본 설정

리눅스/OS 일반|2024. 6. 21. 09:52
반응형

사용자 마다 설치방법이 조금 달라 아래 내용이 해당사항 없을지 모르겠지만, 개인적으로 Debian 12.5 를 TEXT 모드로 설치하고 나서의 설정 방법입니다.

 

 

1. 네트워크 설정

 

# vi /etc/network/interfaces

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
address 192.168.10.2
netmask 255.255.255.0
gateway 192.168.10.1
dns-nameservers 8.8.8.8

 

# vi /etc/resolv.conf

nameserver 8.8.8.8

 

# systemctl restart networking

 

 

2. APT 설정 및 기본 패키지 추가

 

기존에 CD롬을 참고하던 설정은 주석처리 하거나 삭제하고 아래 내용으로 작성합니다.

# vi /etc/network/interfaces

# Debian 기본 저장소
deb http://deb.debian.org/debian/ bullseye main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye main contrib non-free

# 보안 업데이트 저장소
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free

# 업데이트 저장소 (업데이트 및 백포트된 패키지)
deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye-updates main contrib non-free

# 백포트 저장소 (stable 릴리스에 사용할 수 있는 패키지)
deb http://deb.debian.org/debian/ bullseye-backports main contrib non-free
deb-src http://deb.debian.org/debian/ bullseye-backports main contrib non-free

 

# apt -y update

# apt -y install net-tools openssh-server vim curl

 

반응형

댓글()

Proxmox VE 8.2.4 설치 후, 기본 사용 방법

리눅스/OS 일반|2024. 6. 21. 07:28
보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

Ubuntu 22.04 에서 Tomcat 9 설치 및 SSL 설정

리눅스/APACHE|2024. 6. 18. 08:05
반응형

Ubuntu 22.04 환경에서 테스트 후 작성되었습니다.

- 참고 : https://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html

 

 

1. Tomcat 설치

 

관련 패키지를 설치하고 실행합니다.

# apt -y install default-jdk tomcat9 tomcat9-admin tomcat9-user

# systemctl enable --now tomcat9

 

 

2. SSL 설정

 

1) 인증서 형식으로 변환

(SSL 인증서 디렉토리로 이동 후)

# openssl pkcs12 -export -in www_sysdocu_kr.crt -inkey www_sysdocu_kr.key -out keystore.p12 -name sysdocu

입력한 순서대로 인증서파일, 키파일, 생성할 키파일 이름, 키이름 입니다.

(-CAfile chain.pem -caname root 와 같은 옵션도 추가 가능)

실행하면 암호를 입력하라고 나오는데, 이는 톰캣 설정파일에 쓰이는 암호로 인증서 패스워드와 동일하지 않아도 됩니다.

여기에서는 예시로 비밀번호를 12345678 로 입력하였습니다.

 

아래와 같이 파일이 생성되었습니다.

# ls -al keystore.p12 
-rw------- 1 root root 3392 Jun 18 07:35 keystore.p12 

 

Tomcat 데몬이 읽을 수 있도록 소유자와 퍼미션을 변경하고 톰캣 설정 디렉토리로 이동해 줍니다.

(이 부분은 적당히 조정 가능)

# chown root.tomcat keystore.p12

# chmod 640 keystore.p12

# mv keystore.p12 /var/lib/tomcat9/conf/

 

 

2) 설정

# vi /var/lib/tomcat9/conf/server.xml

...

    <Connector port="80" protocol="HTTP/1.1"
        connectionTimeout="20000"
        redirectPort="443" />

    <Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
            maxThreads="150"
            SSLEnabled="true">
            <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
            <SSLHostConfig>
                <Certificate certificateKeystoreFile="/var/lib/tomcat9/conf/keystore.p12"
                    certificateKeystorePassword="12345678" type="RSA" />
            </SSLHostConfig>
    </Connector>

...

 

설정 저장 후 데몬을 재시작 합니다.

# systemctl restart tomcat9

 

 

반응형

댓글()

Ubuntu 22.04 에서 FreeRDP 사용하여 RDP 접속하기

리눅스/OS 일반|2024. 6. 3. 16:52
반응형

FreeRDP는 RDP(Remote Desktop Protocol) 를 구현한 오픈소스 소프트웨어로, 주로 리눅스 환경에서 원격으로 윈도우 서버나 PC에 접속할 수 있게 해주는 도구입니다. Ubuntu 22.04 에서도 FreeRDP 패키지를 설치하고 사용하여 원격 데스크톱 기능을 활용할 수 있습니다.

[ FreeRDP의 주요 기능 ]
- 원격 데스크톱 연결 : FreeRDP는 RDP 프로토콜을 사용하여 리눅스에서 원격으로 윈도우 시스템에 접속할 수 있게 해줍니다. 이를 통해 사용자는 GUI 환경에서 윈도우를 제어할 수 있습니다.
- 다양한 옵션 지원 : FreeRDP는 기본적인 원격 데스크톱 연결 외에도 오디오 재생, 클립보드 공유, 프린터 공유, 파일 공유 등의 기능을 지원합니다. 이를 통해 더 나은 원격 작업 환경을 제공합니다.
- 멀티플랫폼 지원 : FreeRDP는 리눅스, 윈도우, macOS 등 여러 운영체제에서 사용 가능하며, 다양한 버전의 RDP를 지원합니다.
- 보안 기능 : TLS/SSL을 통한 보안 연결을 지원하여 안전한 원격 접속이 가능합니다.

 

Ubuntu 22.04 환경에서 FreeRDP 를 설치 및 사용하는 방법입니다.

 

1. 설치

# apt-get update
# apt-get install freerdp*

 

2. 사용

# xfreerdp /v:192.168.10.2 /u:administrator /w:1280 /h:1024 /bpp:32 /drive:/home/sysdocu/문서 /rfx /gfx /compression /clipboard /audio /microphone /printer &> /dev/null &

 

- RDP 서버 IP 와 계정 이름을 입력하고 화면 사이즈를 정할 수 있습니다.

- 필요한 옵션을 나열하면 해당 기능을 사용할 수 있습니다.

- 마지막에 &> /dev/null & 부분은 출력되는 Warning 이나  Error 가 출력되지 않게 하려는 것인데, 처음 접속하는 서버의 경우 인증서를 저장할지 여부를 물어보기 때문에 한 번은 생략하고 실행해야 합니다. 그 이후에 파란색 부분을 추가하면 화면에 출력되는 글자 없이 깔끔히 명령이 실행되어 집니다. 

 

반응형

댓글()

script 를 이용한 안내 창 (Alert) 커스텀하여 출력하기

반응형

아래 소스를 적당히 수정하여 사용합니다.

 

<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Custom Alert</title>
    <style>
        /* Custom alert box styling */
        .alert-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.5);
            display: flex;
            justify-content: center;
            align-items: center;
            z-index: 9999; /* High z-index to ensure it is on top */
        }
        .alert-box {
            background: white;
            padding: 20px;
            border-radius: 5px;
            text-align: center;
            width: 400px;
            height: 250px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        .alert-box h1 {
            margin-top: 0;
        }
        .alert-box p {
            margin: 20px 0;
            font-size: 13px;
            color: #111111;
        }
        .alert-box button {
            width: 100px; /* Set fixed width */
            margin: 0px auto 0px; /* Center horizontally */
            padding: 10px;
            border: none;
            background: #007BFF;
            color: white;
            border-radius: 5px;
            cursor: pointer;
        }
        .alert-box button:hover {
            background: #0056b3;
        }
    </style>
</head>
<body>
    <div id="alertOverlay" class="alert-overlay" style="display: none;">
        <div class="alert-box">
            <h1>데모 페이지 로그인 정보</h1>
            <p>계정 : <font size="3" color="blue">sysdocu</font><br>
비밀번호 : <font size="3" color="blue">12345678</font><br><br>
* 다른 사용자와의 중복 테스트로 오작동이 일어날 수 있습니다.<br>
* 테스트를 마친 후 데이터를 삭제해 주시기 바랍니다.</p>
            <button onclick="closeAlert()">확인</button>
        </div>
    </div>
    <script>
        function showAlert() {
            document.getElementById('alertOverlay').style.display = 'flex';
        }

        function closeAlert() {
            document.getElementById('alertOverlay').style.display = 'none';
        }

        // Show the alert when the page loads
        window.onload = showAlert;
    </script>
</body>
</html>

 

반응형

댓글()