Amazon Lightsale 사용법

mRemoteNG에서 잘 안되면, Putty를 최신 버전으로 사용해야 함. 그리고 Putty를 mRemoteNG가 아닌 설치한 Putty를 사용하도록 설정해야 함. 
- Putty Configuration -> Connection -> SSH -> Auth -> Credentials 에서
  - Private Key file for authentication에 priv.pem.ppk 파일을 세팅 


pem 파일을 ppk로 변환하기
- Putty Key Generator (puttygen.exe) 설치 및 실행 (c:\Program Files\Putty)
- Conversions -> Import Key 하여 Lightsale pem 파일을 로드 
  - Save private key 버튼 눌러 PPK 생성 

cross-env 활용

npm run build 할 때, GENERATE_SOURCEMAP 관련 에러날 때.

MacOS에서는 잘 빌드되는데, Windows 에서 다음과 같은 에러가 날 수 있다.

GENERATE_SOURCEMAP’은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.

이는 package.json에 정의된 build 스크립트의 GENERATE_SOURCEMAP 부분이 Windows와 맞지 않기 때문이다. 따로 set 명령을 써야 한다.

"scripts": {
  "start": "react-scripts start",
  "build": "GENERATE_SOURCEMAP=false react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject",
  "format": "prettier --write \"src/**/*.{js,ts,tsx}\""
},

간단하게 해결하려면 cross-env 를 사용하면 된다. npm install cross-env 한 다음, 위 스크립트를 다음과 같이 수정한다.

"scripts": {
  "start": "react-scripts start",
  "build": "cross-env GENERATE_SOURCEMAP=false react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject",
  "format": "prettier --write \"src/**/*.{js,ts,tsx}\""
},

npm start 를 0.0.0.0 으로 bind 하기

npm start는 localhost 를 바인드하기 때문에, 외부에서 접속을 하지 못한다. 이를 0.0.0.0 으로 바인드하려면 HOST=0.0.0.0 이라고 환경변수를 설정해야 한다.
이를 위해 cross-env를 활용할 수 있다.

"scripts": {
  "start": "cross-env HOST=0.0.0.0 react-scripts start",
  "build": "react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject",
  "format": "prettier --write \"src/**/*.{js,ts,tsx}\""
},

Written with StackEdit.

이미지를 PDF로 만들기 & PDF 합치기 등

1. Image를 pdf로 변환하기 
- 온라인에서 image를 pdf로 변환하는 툴은 많으나, 사용하지 말길 권한다. 중요한 정보가 인터넷에 누출될 가능성이 있다.
- 예전에는 ImageMagick 으로 이미지를 pdf로 변환할 수 있었으나, 이제 더 편리한 도구가 나왔다. 
- Python에서 동작 가능한 img2pdf 가 그것이다. 
- 설치 (Python이 설치되어 있다고 가정하면)

$ pip install img2pdf 

- 실행

$ img2pdf 1.jpg 2.jpg 3.jpg --pagesize A4 -o out.pdf 

2. PDF 병합/분할/회전하기
- pdfsam 이라는 툴을 사용하면 된다. 무료버전도 있으므로 유용하다. 
- 다운로드: https://pdfsam.org/ko/ 

nmcli: Network Manager의 CLI 명령 요약

Network Manager의 CLI 명령어인 nmcli의 주요 사용예를 정리함. 


1. 네트워크 인터페이스 보기 

$ nmcli con show

NAME                UUID                                  TYPE      DEVICE

Wired connection 1  8e2a801b-6074-30bc-9039-8f90d51ad28d  ethernet  eno2

tun0                d0a9ab3e-5373-44e4-8312-ee088c35cdae  tun       tun0


2. 고정 IP로 변경하기 

$ nmcli con mod "Wired connection 1" connection.autoconnect yes

$ nmcli con mod "Wired connection 1" ipv4.address 192.168.1.206/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8 1.1.1.1"  ipv4.method manual

$ systemctl restart NetworkManager.service



3. Wifi 상태 확인

# wifi 상태 확인
$ nmcli radio wifi

# wifi 켜기
$ nmcli radio wifi on

# AP 리스트 보기
$ nmcli device wifi list
# AP 연결
$ nmcli device wifi connect <My_AP> password <Some_Password>

4. nmtui 를 이용하면 복잡한 명령어를 외우지 않아도 됨. 

설치
$ sudo apt install nmtui 


$ nmtui




OpenVPN 세팅하기

OpenVPN 네트워크를 구축한 경험을 정리했다. 

OpenVPN은 VPN(Virtual Private Network) 솔루션 중에서 가장 많이 사용되고 있다. OpenVPN은 상업용 제품도 팔고, 클라우드 서비스도 제공하지만, 오픈소스인 Community Edition도 제공한다. 

이 글은 OpenVPN Community Edition의 설치와 운용에 대한 내용이다. 

Ubuntu 16.04(Xenial)에 Python 3.9 설치하고 mod_wsgi 빌드하기

나는 몇년 전에 개발된 Django 기반의 웹 프로젝트를 인수받아 운영하고 있다. 

프로젝트의 규모가 꽤 크고 공공기관 고객도 꽤 있어서 여간 신경쓰이는 게 아니다. 그런데 어느날 다음과 같이 Python을 업그레이드하라는 경고 메시지가 나오기 시작했다. 

Cryptography 모듈이 다음 버전부터 Python 3.5를 지원하지 않는다는 통보이다. 공공기관들은 나름대로 보안 규칙이 있어서, 보안 결함이 발견된 모듈에 대해서 업그레이드를 해주어야 한다. 그래서 Python 버전을 올리고 Cryptography 모듈도 버전을 올리면 되는데, 그것이  그리 간단한 문제가 아니다. 

인기글