카테고리 Archives: linux

google-Noto-Sans CJK

Adobe 와 구글이 합작하여 만든 폰트 이다.

CJK는 중국 일본 한국의 약자이며, 본고딕 이라고 불리기도 하며 과거 에는 Droid 라는 이름을 쓰기도 하였다.

기본적으로는 otf (Open Type Font) 와 ttf (True Type font) 으로 제공 되고 있다.

ttc (True Type Collection) 으로 (묶음) 으로 배포 되기도 한다.

 

공식 다운로드 사이트에서는 otf 파일의 다운로드를 제공한다.

 

linux 에서는 otf 파일 폰트를 사용이 가능하지만 사용하는 프로그램에 따라 otf 를 사용하지 못하는 경우도 있다.

때문에 특정 프로그램 (mikehaertl/phpwkhtmltopdf) 에서 woff 혹은 otf 폰트를 사용시 정상작동하지 않는 경우 서버에 ttf 파일을 설치해야 할 수 있다.

 

CentOS 7 에서는 아래의 명령어로 설치가 가능하다.

font 파일은 기본적으로 /usr/share/fonts/google-noto 폴더 아래에 생성이 되기 때문에 폴더에서 바로 확인을 해볼 수 있다.


centos 버전이 틀리거나 다른 리눅스에서는 다음과 같이 noto-sans를 배포중인 깃허브 에서 다운받아 수동 설치를 진행할 수도 있다.

 

설치가 된 내용을 아래 명령어로 확인할 수 있다.

음 수동 설치한 파일은 2020-12-06 에 업데이트 된 v2.002 버전 파일이다 보니 HK 추가 되었다 ‘ㅅ’a

iptables 를 이용한 마스커레이드

외부로 연결된 1개의 서버가 존재 하고

내부망으로 로컬 서버가 여러개 존재 할때..

2021-03-24_131359

 

외부망에 연결된 서버는 일반 적인 설정을 따라가면 되지만 위 그림과 같이 연결된 상태에서

내부망 서버는 인터넷이 안되므로 gateway 지정을 외부망에 연결된 서버로 향하게 한뒤에

외부망에 연결된 서버에서 아래와 같이 마스커레이드 및 포워드 허용 처리를 해주어야 한다. (시간 동기화나 패키지 설치나 ‘ㅅ’a 인터넷은 되어야 하니까…)

이때 내부망은 10.0.0.1 ~ 10.0.0.7 만 허용처리한 결과 이다. Online IP CIDR / VLSM Supernet Calculator (subnet-calculator.com)

 

iptables 으로 설정된 값을 자세히 확인하는 방법은 아래와 같다.

위 명령어로 출력된 룰셋은 첫번째 값이 라인번호로 아래와 같이 일부 삭제를 진행 할 수 있다.

 

sudo – Heap buffer overflow 취약점 Baron Samedit [CVE-2021-3156]

sudo 명령의 -s 옵션 또는 -i 옵션을 이용하여 이스케이프(‘\’) 으로 Heap buffer overflow 취약점이 발견 되었음 ‘ㅅ’a

root 권한 탈취가 가능하므로 심각한(important) 취약점 이라고 볼수 있다.

 

취약점 테스트

위와 같이 Segmentation fault 가 발생한다면 취약한 버전 으로 업데이트가 필요로 하다 ‘ㅅ’a

 

업데이트 CentOS 7 ~ 8

 

업데이트 Ubuntu 14.04 ~ 21.04

 

시스템 재 부팅은 불필요 하다 ///ㅅ///

 

https://access.redhat.com/ko/security/vulnerabilities/5740281

https://ubuntu.com/security/CVE-2021-3156

AWS SES – SMTP 계정 의 키 변경

AWS SES (Simple Email Service) 는 직접 구축이 어려운 이메일 서비스를 제공한다.

sendmail 으로 SMTP 구성을 사용할 수 있지만 보통 스팸 방지를 위한 여러 솔루션에 의해서 차단이 되기 때문에

직접 sendmail 서비스를 구성하고 서비스 하기 위해서는 광범위한 공부가 필요 하다.

1. sendmail – smtp 구축

2. KISARBL 등록 (이것은 한국의 포털 쪽으로 메일 서비스 원활히 발송하기 위해 필요 하다.)

3. ReverseDNS 등록 (이건 해외 포털 서비스 쪽과 관련이 있다. Internet Service Provider 에서 등록이 가능하다. – KT, SK, U+ 등등..)

4. DKIM, DMARC 설정 (해외 포탈 gmail, yahoo 등등)

아울어서 주기적인 IP 신뢰도 관리를 위해 서버내에서 발송되는 메일을 추적, 통제 해야 한다.

 

AWS SES 는 월 62,000건 까지는 무료로 발송이 되며 이후 초과 되는 1000개의 메일당 약 100~150원 정도의 비용이 발생 한다.

물론 수신자의 스팸 신고가 많거나(1%) 허위 메일 주소로 발송(5%)되면 메일 발송 서비스가 차단 된다.

 

메일 발송을 위한 SMTP 계정은 생성을 하게 되면 auth 계정이 할당 되게 되며 사전에 등록된 메일 주소로만 발송을 할 수 있다.

문제는 ID / PW 형식 이기 때문에 유출 되었거나.. 혹은 패스워드 생성일이 오래 되면 보안상 바꾸어 주어야 한다.

 

AWS – IAM 에서 일반적으로 생성하는 액세스 키는 20글자 시크릿 키는 40 글자 를 차지 한다.

2021-01-22_151318

 

AWS – SES 에서는 SMTP 계정을 만들때 패스워드 길이가 44 글자를 가진다.

즉 SES 메뉴에서 “Create My SMTP Credentials” 생성한 계정을 사용할 수 있다.

2021-01-22_151735

 

그래서 찾아 보니 아래와 같은 메뉴얼을 찾을 수 있었다.

https://aws.amazon.com/ko/premiumsupport/knowledge-center/ses-rotate-smtp-access-keys/

 

근데 이해는 잘 되지 않는…

종합해보면 기본으로 제공 되는 파이선코드 를 이용하여 컨버팅 해서 써야 한다는 말이다.

 

시스템 엔지니어링을 하는 입장에서는 생성된 값을 테스트 하고 넘겨 줘야 하는 부분도 있고 python3 전용인 부분도 조금 마음에 안들어서

패스워드 생성 후 SMTP 테스트를 진행 하도록 하였다. ‘ㅅ’a

 

사용 방법은 다음과 같다.

 

IAM 아무렇게나 생성된 계정에서는 작동하지 않고, 계정에 ses:SendRawEmail 권한이 부여 되어 있어야 작동 한다. (SES 에서 생성한 계정은 이미 부여가 되어 있을 것임.)

 

ps. 위에 예시된 엑세스키/시크릿키/SMTP비밀번호는 이 글을 포스팅 한 이후 모두 삭제 했으니까 굳이 테스트 해보지 않으셔도 된다. ‘ㅅ’a

Let’s encrypt 사용 방법 변경

 

신규 서버를 세팅 하고 SSL 추가 했을때 당황스럽게도 위와 같은 메세지를 뿌리며 certbot-auto 가 작동하지 않았다.

 

certbot-auto 의 경우 실행 시킬때마다 자동 업데이트를 하는데 버전이 1.11 버전으로 되어 있을경우 발생하는 메세지로 확인이 된다.

 

링크를 따라 갈 경우 snap을 이용해서 설치해서 사용하라고 안내 되어 있다.

snap 은 yum 혹은 apt-get 과 같은 패키지 관리 툴 이다.

 

CentOS 7.7~8.X 의 경우 epel-release 가 설치 되어 있다면 yum 으로 snap을 설치할 수 있다. (6번 라인은 양반김 처럼 두번 실행해야 할 수 있다.)

 

이후에 snap 을 이용하여 certbot 을 설치한다.

주의: 기존에 yum 이나 apt-get 혹은 dnf 으로 설치된 certbot은 삭제 하고 진행 해야 한다. (일부 버전에서 심볼링 링크가 안걸리는듯… 하여 8번 라인의 명령어를 추가 실행해야 할 수 있다.)

 

/usr/bin 안으로 링크를 생성하기 때문에 ssl 발급/삭제을 위해서는 아래 명령어를 사용하면 되겠다.

 

장점이 하나 있는데 snapd 에서 sequence 기능으로 설치된 패키지를 자동으로 최신 업데이트를 하는데

발급된 인증서의 renew 역시 자동으로 처리가 된다. (/var/lib/snapd/sequence/certbot.json)

 

PS1 . 기존에 git 에서 clone 을 해서 사용한 경우 삭제까지는 필요 없는듯 하고, renew의 경우 메세지는 나오지만 갱신 하는데에는 문제가 없다.

 

PS2. snap 설치가 되지 않는 리눅스의 경우 certbot-auto 구버전 (1.9.0.dev0) 의 실행파일만 덧씌운뒤 renew 실행하면 당장 급한불을 끌 수 있음.

 

PS3. 테스트 해보지 않았으나 acme api를 이용하는 bash, dash, sh 비공식(호환) 스크립트.. https://github.com/acmesh-official/acme.sh