설치가 필요 없는 클라우드 통합개발환경에 당신의 아이디어를 쏟아내세요! 클라우드 통합개발환경 – 구름IDE
기존에 Java를 공부하려면 Eclipse부터, C나 C++등을 공부하려면 Visual Studio부터, Python을 공부하려면 Anaconda부터 설치해야 했던 기억들이 납니다. 이걸 매일 해야하는 곳이 있습니다. 군부대라고…
그래서 오늘은 웬 메일이 한통 와있더군요. 구름이 새롭게 바뀐 가격 정책을 내일(4/19)부터 선보인다고 합니다.
정말 신나는군요. 이제 결제하고 코딩만 하면 되겠군요! …그런데 잠시만, 그래도 한번씩 써본지라, 개인적으로 생각한 장단점 대표적으로 몇가지만 끄적여봅니다.
구름의 장단점?
Q. 장점?
A. 아무래도 클라우드 서비스이다 보니까, 공유기능이나 코드 같이 수정하기, 각종 단축키 지원, Markdown 자체 지원, SSH 원격접속 기능 지원, 디버깅 지원, 그리고 무려 채팅 기능 지원! 이정도겠네요. 쓰면서 신나는 타이핑도 나쁘지않은 기능인거같네요. 지루하지 않을뿐
Q. 단점?
A1. Linux입니다. 아무래도 Windows에서 많이 작업하시다가 Linux에서 개발환경을 접하게 되면 조금(많이) 당황스러우실 수도 있습니다. 이점 참고하세요. A2. 컴파일링이 조금 귀찮습니다. 마찬가지로 리눅스라서 그런것도 있기는 한데, 초기 Java 컨테이너나 Python 컨테이너를 생성한 뒤에, 뭔가 하나 새로 만들려고 하는데 컴파일 위치지정 등이 Windows에서 하던 것보다(비교적) 상당히 귀찮더군요. (와중에 Jupyter Notebook용으로 쓰는것도 나쁘지 않을것 같네요)
결론
저는 뭐 구름 홍보대사도 아니고, 그냥 일개 군인에 불과할 뿐입니다. 다만 같은 처지에 놓이신 프로그래머or컴공생 여러분들에게는 좋은 정보가 되길 바랄 뿐이겠네요. 하핳.
추가로! VNC도!
제가 구름 컨테이너 쓰면서 이것저것 괜찮은 스크립트를 만들어봤었네요. Linux 환경이다 보니까 VNC로 데스크톱 환경을 구현할 수 있는데, 이것저것 시도하시기에 시간이 없으신 여러분들께! 제가 미리 만들어놓은 스크립트들을 공개합니다.
항상 뱅킹할때마다 사지방에 Gpg4win 깔고, 개인키 깔고, 서명된 인증서 받고 할려니까 정말이지 너-무 귀찮아졌습니다.
그래서 한번은 원격으로 뱅킹을 해보려고 했는데 이녀석이 자꾸 RDP를 강제 종료시키는 바람에 무산되어버린 기억이 있습니다. 그렇게 제 기억속에는 RDP나 Teamviewer나, 각종 원격 Application들은 ASTx가 있는 환경에서는 어쩔수가 없구나, 하고 포기해버렸습니다. 그런데…
그런데, 그게 말입니다.
얼마전 찾아본 블로그(익스트림 매뉴얼)에 그 답안이 있었던 겁니다! 다시 정리해서 한번 끄적여 봤습니다.
해당 명령어는 dns-01 challenge를 이용하여 수동 발급 요청을 ACMEv2 서버로 전송합니다. 아래와 같이 “IP 로그를 활성화할 것이냐”라고 물으면 Y를 입력하고 넘어갑니다.
Performing the following challenges:
dns-01 challenge for blending.kr
dns-01 challenge for blending.kr
-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.
Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o:
다음으로, 생성된 DNS TXT 레코드를 메모장 같은 곳에 임시로 적어둡니다. 다음 단계에서 TXT 레코드에 추가할 내용입니다.
-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.blending.kr with the following value:
<TXT 값 1>
Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue
-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.blending.kr with the following value:
<TXT 값 2>
Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue
위의 경우 Press Enter to Continue가 한번 뜨면 Enter를 눌러주셔아만 두번째 TXT값이 뜹니다.
두 번 이상 계속하면 DNS TXT값 없이 Challenge를 진행하게 되므로 오류가 발생하므로, 한번만 눌러서 위와 같이 만들어 주셔야 합니다!
4. DNS 레코드 수정
여기서는 bind9의 설정 파일을 수정해 DNS TXT 레코드를 추가해 보도록 하겠습니다. 파일 위치는 시스템 설정마다 다를 수 있으므로 참고하시기 바랍니다.
> sudo vi /etc/bind/zones/db.<도메인명>
위와 같이 <TXT 값 1>과 <TXT 값 2>를 넣어주고, serial 부분을 업데이트(e.g. 2018040701) 해준 뒤, [ESC], :wq!를 입력하여 빠져나와 다음과 같이 DNS 설정을 적용시켜줍니다.
> sudo service bind9 restart
5. DNS TXT 레코드 적용여부 확인
직접 확인하는 방법은 dig 명령어를 이용해 가능합니다.
> dig +noall +answer _acme-challenge.blending.kr txt
_acme-challenge.blending.kr. 604800 IN TXT "<TXT 값 1>"
_acme-challenge.blending.kr. 604800 IN TXT "<TXT 값 2>"
위와 같이 TXT값이 나타났다면 성공! 그렇지 않은 경우 업데이트가 안되었다는 것이니 4번의 설정이 잘 저장되고, 다시 로드되었는지 확인해볼 필요가 있겠네요.
6. 적용된 DNS TXT 레코드로 Challenge 마무리
아까의 터미널 창으로 돌아가, Enter만 눌러주면 모른 동작이 완료됩니다.
Waiting for verification...
Cleaning up challenges
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/blending.kr/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/blending.kr/privkey.pem
Your cert will expire on 2018-07-06. To obtain a new or tweaked
version of this certificate in the future, simply run certbot
again. To non-interactively renew *all* of your certificates, run
"certbot renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
이제 SSL 인증서가 모두 Wildcard로 작동할 것입니다. 기존처럼 길게 -d <도메인명> -d <도메인명2> -d <도메인명3> ... 이런식으로 진행하지 않아도 되겠군요.
7. 아쉬운 마무리.
이렇다할 인증 과정이 필요한 이유는 아직까지는 ACMEv2 인증이 DNS-01 챌린지밖에 지원하지 않기 때문입니다. 다른 인증밥업을 지원했더라면 쉽게 할 수도 있겠네요.
그런데, 무엇보다도 certbot renew 가 안됩니다. 뭐든 수동으로 해야합니다.
아쉽게도 이런 과정을 자동화할 스크립트가 필요하겠네요. 직접 만들어볼까 하는데 얼마나 시간이 걸릴 지는 모르겠네요. 하하.
긴글 따라오시느라 수고하셨습니다. 다음에는 아무래도 이러한 과정을 쉽게 자동화할 수 있는 스크립트를 구상해올께요.
Wildcard Certificate(와일드카드 인증서)란 기존 home.domain.kr, wiki.domain.kr 등 각 subdomain(home, wiki)에 한정적으로 1개씩 가능했던 것이 *.blending.kr처럼 모든 서브도메인에 발급받는 것이 가능한 SSL 인증서입니다. ↩
오늘은 WinAuth라는 Windows용 Application을 소개해볼까 합니다.
기존 스마트폰에서 사용하던 Google OTP를 대체할 수 있는 Open Source Desktop Application입니다. 가끔씩 스마트폰 없이 PC나 노트북만으로 OTP가 필요한 작업을 해야 할때 광-장히 유용하더군요.
처음에는 인증 과정이 필요합니다. Add를 누른 다음, 필요한 OTP Provider를 선택한 뒤 각 발급자가 제공하는 Secret Key를 입력하시면 됩니다.