넷퍼넬은 트래픽을 제어하지 분산시키지 않는다.

먼저, 내가 넷퍼넬 영업하는줄 아는 아해들에게 본문요약부터 간다.

  1. 넷퍼넬은 트래픽 분산을 하지 않고 제어를 한다. 분산이라고 착각하지 마라.
  2. 트래픽 분산하려면 또다른 영역이 필요한데 대표적 사례가 클라우드다.
  3. 넷퍼넬 고객들은 대부분 2와 같은 시나리오보다 기존 시스템 활용을 원하기 때문에 사용한다.

요즘 왠만한 국가기관 및 대학에서 뭐 신청할 때 꼭 대기번호와 대기인원수가 표시되어 기다려야 하는 이상한 기능이 있다.
그렇다. 알 사람이라면 알 넷퍼넬이라는 일종의 솔루션이다.
근데 넷퍼넬을 트래픽 분산 솔루션이라고 잘못알고 계시는 분들 꽤 많은데,
넷퍼넬은 “트래픽 분산 솔루션”이 아니다.
“트래픽 제어 솔루션”이다.
이는 넷퍼넬 공식 사이트에서도 언급하고 있다.

그럼 왜 대부분의 접수 사이트에 넷퍼넬이 있는가?
사실 어른들의 사정이 꽤 작용하긴 하지만 주요 요인은 이렇다.

  1. 기존 시스템 활용
    넷퍼넬 고객들은 대부분 기존 시스템을 건드리지 않고 그저 embed 하는 형식으로 트래픽을 제어하길 원한다. 국가기관일 수록 더. 그럴 때 넷퍼넬은 정말 좋은 사업 아이템인 것이다. 국가기관 입장에서는 인력비보다 덜 든다고 착각하는 효과를 가져온다.
    그렇다. 착각이다. 더 얘기하면 설명이 길어지니 여기까지.

  2. 임시 창구를 늘리는 것보다 번호표를 활용
    간단하게 은행 창구를 예를 들자.
    기존환경: 고객들은 번호표 없이 줄서서 순서대로 은행업무 수행.
    트래픽 분산: 창구를 돈을 들여 더 만들어 줄을 분산시켜 고객에게 빠른 은행업무 제공
    트래픽 제어: 그냥 번호표 출력제품을 사들여 번호 순으로 고객에게 은행 업무 제공.

그러고 보니 내가 전에 클라우드를 일시적으로 도입하여 트트픽 분산에 큰 효과를 본 사례를 소개했다.
장점은 한번 구축하면 필요 시마다 클라우드에 배포만 하면 되며, 트래픽으로 인해 필요한 자원을 늘렸다 줄였다 하여 유연하게 트래픽을 제어하여 분산시킬 수 있는 이점을 가지고 있다. 이로 인해 고객들에게 빠르고 장애가 적은 서비스를 제공하면서 분산된 환경으로 기존 업무를 문제없이 수행할 수 있다는 점이다.
하지만 단점으로는 단 하나의 모듈이라도 구축 비용이 소모되며, 따로 관리해야 하고, 관리하는 인력비용이 든다는 것이다.
이는 외국에서 주로 사용하는 수법이긴 하다.
외국에서도 넷퍼넬 같은 트래픽 제어 솔루션을 사용해야 할 때가 있는데, 이는 대부분 대규모 기업/기관이 아닌 중소기업/단체 들이 사용한다. 당연히 분산 비용이 더 부담되기 때문에.
하지만 넷퍼넬은 고객들이 대기업 아니면 국가기관이다. 그렇다. 넷퍼넬 구축 비용은 분산 비용하고 차이는 시스템 구조를 잘 몰라 파악은 어렵지만, 분산 비용과 맞먹는 비용이 나온다는 점도 되겠다. 중소기업에겐 넷퍼넬 같은 제어 솔루션을 쓰기엔 돈이 없다는 것이다.

어찌 됐던, 트래픽 분산과 제어에 대해 햇갈리지 않았으면 하기에 글을 올렸다.

composite / 2016년 2월 2일 / Dog's bullshit / 0 Comments

멀지 않은 미래의 개발자 사회구조 예측

미래의 개발자 사회는 이렇게 될 것이다.
0.1의 극소수로 가상머신 등을 개발할 코어를 담당할 씨언어 기반 개발자,
그다음 하위 소수에서 시스템 튜닝이 가능한 자바, C#, Rust 등 중급 시스템 레벨을 건드릴 시스템 개발자,
그리고 다수의 자바나 C#, 자바스크립트 등의 앱 개발자.
이렇게 나눠질 것이다. 이미 개발 언어 점유율만 봐도 나오고 있는 사실이다.

그리고 가상머신 개발자는 선택된 금수저처럼 운명 외에는 절대 아무나 접근 못할 시대가 올 것이고, 개발자의 빈부격차가 심각해질 것이며,
최종적으로 개발자 임금 구조까지 격차로 이어질 것이다.
근거?
지금 미국의 아이티 대기업들이 개발자들을 수천 수만명 잘랐고 심지어 IBM은 11만명씩이나 잘랐다.
이러한 이유는 대기업들이 개발자를 정예화하고 나머지는 스타트업 투자를 통해 기술과 점유율을 확보하겠다는 것이다.
사내직원의 모험보다는 스타트업의 모험에 투자하는 게 덜 손해보기 때문에.
스타트업은 투자해서 망하면 그걸로 끝이지만, 사내직원은 망해도 자른다 해도 또 퇴직금이나 인력유동으로 인한 비용 등으로 돈을 더 써야 한다.
이는 회사 운영해 봤다면 알 것이다.
이런 구조로 간다고 하면, 한국처럼 개발업체의 갑을병정 시대가 도래한다느 뜻이 된다.
물론 한국처럼 불공정하고 착취하진 않지만, 이제 정착의 시대가 온다.
당신이 개발자라면, 정체성을 반드시 확립해야 하는 시대가 올 것이다. 지금 당장.

만약 개발자의 계급화와 빈부격차가 도래된다면, 게임 개발자도 예외는 없을 것이다.
이제 게임의 모든 핵심 코어 기능과 최적화는 선택받은 게임 엔진 개발자들이 모두 알아서 해결하도록 환경을 조성할 것이고,
이제 게임 개발자들은 게임을 개발하는데에만 열을 올리면 될 것이다.
그것도 C/C++ 언어가 아닌 자바나 C# 같은 고급 언어, 심지어는 Lua나 자바스크립트 같은 스크립트 언어로.
내가 왜 이렇게 장담하냐고? 유니티를 보라. 유니티는 고급 언어로 개발할 수 있는 환경을 만들었고,
이제는 유니티 게임을 많이 쓰고 있다. 모바일 게임 시장 절반이 유니티가 먹을 정도이다. 이정도면 감이 올 만 할 것이다.

이는 곧 개발자의 종말 예고이기도 하다. 이제 극소수 외에는 코딩조차 안해도 앱개발이 가능한 시대가 올 것이기 때문이고,
많은 비IT 전문가들이 바라고 있으며, 많은 선진 개발자들이 예상을 하고 있기 때문에.
내 예측은 개발자가 종말하기 이전에 대한 과정이라고 봐도 무방하다. 개발자들의 경쟁, 분열… 이들이 소리없이 진행되고,
누군가는 개발자 없이 앱 개발하고, 누군가는 디자이너 없이 디자인 해주는 그런 솔루션이 개발을 할 것이다.
그러기 위해서는 물론 여러 환경적 영향이 있겠지만, 내가 아까 말한 환경도 이런 환경을 조성하는 데 밑걸음이 될 수도 있다.

이제 개발자로 먹고살기 힘들어 질 것이다.
설령 외국 간다 해도. 당신이 정말 핵심 브레인이 될 만한 역량이 없다면, 말할 것도 없다.
이를 약간 회피할 수 있는 유일한 개발자 분야는 역시 프론트엔드 개발자이다. 디자인과 사용자 경험까지 신경써야 하기 때문에.

긴장하라 개발자들이여. 미국 IT 대기업들이 개발자에게 던지는 메시지는 그리 좋지는 않을 것이다.

세줄요약
1. IBM 등의 미국 대기업은 사내 개발자 확보보다 스타트업 중심으로 기술과 점유율 확보에 중점을 둘 것이다.
2. 개발자의 계급이 피라미드처럼 구성되어, 저급 개발자는 VM에 초점을 맞추고 이를 다수의 고급언어 개발자들이 나눠쓸 것이다.
3. 2 항으로 인해 개발자 단가부터 빈부격차가 발생할 것이며, 이는 곧 개발자 간의 분쟁과 경쟁으로 개발자는 씨가 말릴 것이다.

composite / 2016년 2월 1일 / Dog's bullshit / 0 Comments

이제 하드웨어의 역습이 시작된다.

아니, 이미 시작됐다.

내가 뭔가 잘못 생각했다…

한국에서는 삼성의 하드웨어 중심 전략에 대해 우려를 표시시 이들이 많았지만,
삼성은 한국에 최악의 근무조건과 환경에도 불구하고 오히려 해외에서 승승장구 하고 있다.

그리고 PC사업의 위기로 인해 잠시 주춤했던 Dell 도 갑자기 승승장구하며 대규모의 소프트웨어를 잡수시고 있다.
심지어 소프트웨어 가상화로 엄청난 부를 축적한 VMWARE조차 델 앞에서 깨갱한 것이다.

그렇다… 하드웨어 플랫폼이 구축된 대기업이…
소프프웨어 파워를 이긴 것이다…

소프트웨어 파워를 강조한 전문가들 다수 의견들과 달리
결결적으로는 소프트웨어 파워는 하드웨어 파워를 이길 수가 없는 것인가…

이제… 하드웨어의 역습이 시작될 것이다.
소프트웨어가 아무리 좋아도…
하드웨어 구축 없이 소프트웨어는 돌아가지 않는다고.

삼성은 더 뜬다. 이재용은 이미 알아차렸다.
어자피 중국 처럼 국가 지원 받으면서 쪽쪽 빨아먹으며 커졌다.
한국에서 털어서 해외에 투자하는 전략은 이미 성공한 것이다.

그렇다. 하드웨어가 정답인 것이다.
마소와 애플도 하드웨어가 있어서 잘 살고 있는 것이다.

이제 하드웨어의 권리행사가 시작될 것이다.
소프트웨어 개개자들이어, 이제 하드웨어도 익혀야 할 때다.
아두이노, 라즈베리… 이놈들 물론 무시는 안하겠지만,
이들을 공략해야 한다. 안그러면 살아남지 못하는 시대가 올 것이다.

참고기사
VMware swears it will continue to support Fusion and Workstation after firing both programming teams

composite / 2016년 1월 28일 / Dog's bullshit / 0 Comments

클라우드와 웬수 진 한국 개발환경

스타트업이야 클라우드 덕분에 쓸데없는 서버 구축과 유지, 인력 비용이 감축되는 효과 때문에 땔래야 땔 수 없는 관계다.
하지만 내가 쓸 글은 스타트업이 아니라 기존 국내 공기관과 대기업, 학교 등에서 왜 클라우드를 안쓰는지다.

사실 어느 대학에서는 클라우드를 도입하여 큰 효과를 도입한 사례가 있다.
그리고 클라우드의 위력을 겨우 이 사례 하나만으로 내 뼛속깊이 클라우드가 뭔지 와닿게 해 주었다.
그 대학 이름을 까먹어서 얘기를 못하겠지만 요약하자면 아래와 같다.

  1. 정시 모집. 언제나 그랬듯이 정시모집 기간에는 서버가 무조건 터져서 학사업무 보기 더럽게 어렵다.
    (일부러 DDoS 공격으로 접수 못하게 하다가 걸린 뉴스도 있을 정도.)
  2. 게다가 정시 모집때마다 외주 개발자들은 비상근무 체제에 돌입하기 때문에 집에갈 생각일랑 하지 않는게 좋았다.
  3. 그런 대학에서 새로운 시도를 했는데, 바로 정시모집 모듈을 클라우드에 옮기는 작업이었다.
  4. 같은 운영 환경으로 여차저차해서 어렵게 정시모집 부분을 클라우드에 옮겼다. 물론 국내 클라우드다.
  5. 드디어 악마같은 정시모집 프로세스가 오픈됐다.
  6. 하지만 학사업무에 하나도 지장이 없었다. 당연히 정시모집 부분만 클라우드로 옮겨서 완전히 격리됐기 때문이다.
  7. 게다가 많다 싶으면 스케일링을 업해서 자원을 늘려서 무사히 정시모집 마감.
  8. 이 사례로 인해 각기 업계 대표들이 클라우드를 다시보는 사례로 떠올랐다.

는 개뿔 지금도 국내 시니어 IT 전문가들은 아직도 클라우드랑 웬수졌다.
물론 전문가가 익숙치 않은 환경에서 도입을 어려워하는 건 있지만, 이것보다 더 큰 게 바로 어른들의 사장이다.
특히 매번 코레일이 명절때마다 서버 미어 터져서 Netfunnel 이라는 솔루션을 도입한 지 오래지만… 이번엔 Netfunnel 이 터지는 일이 부지기수라
재수 없으면 몇명 안되는 대기에서 통신이 안되어 무한 대기상태로 인해 새로고침 하고 다시 대기타야 하는 불상사는 흔한 일이다.
이렇게 클라우드를 기존 업체에서 활용하는 이유는 정말 다양하지만, 내가 대표적 사유를 꼽도록 하겠다.

1. 보안?

조금은 어이없지만, 보안상을 이유로 소스를 외부 업체 클라우드에 올리는 것을 꺼려한다. 보안 기준이 그렇기 때문이다.
대부분 공기관과 기업 보안 정책은 자산을 무조건 외부로 유출하면 안되도록 하고 있다. 소스 코드도 마찬가지인 거다.
물론 예외 상황이야 만들 수는 있지만, 책임 소재 때문에 결국 예외 상황을 만들지도 않고,
윗대가리 또한 이런 책임 소재를 지기 싫어한다. 지들 밥줄 끊기 싫고, 밥줄 끊어지는 순간 가정이무너지고 사회가무너지고… 하니까.
물론 코레일도 클라우드를 고려 안했을리는 없을 것이다. 하지만 이미 코레일은 5년전부터 NetFunnel을 선택했다.
그렇다. 무슨일이 있어도 자산을 외부에 맡기는 것은 절대 용납 안한다는 뜻이 된다. 어떻게서든 자체적으로 해결하려 한다.
괜찮다. 어자피 밤새도록 지켜줄 개발자가 있기 때문에. 병신같은 개발자들…

2. 비용?

윗분들이 클라우드에 옮길 경우 비용산정을 할 때, 절대로 생각 안하는 부분이 있는데, 그게 바로 운영 손실분이다.
그렇다. 비용 산정할때 참 널널하게 짠다. 물론 가끔 타이트하게 짜기도 하지만, 왠만하면 널널하게 짠다.
그 이유는 간단하다. 눈 먼 돈이거든. 지들 호주머니 들어갈 돈을 산정하지. 미래에 무슨일이 일어날 지에 대해서는 어자피 땜빵할 인력이 있기 때문에.
고도화가 맨날 망하는 이유가 그거다. 널널하게 예산 잡으면 뭐하나, 결국 실제 쓰는 예산은 타이트하고, 기획하느라 시간 다 빼먹고 시간 얼마 안남았으니 외주 조져서 개발 어떻게든 완성은 시키는데…
언제 와르르 무너져내릴 지도 모르는 시스템이 지들 성과라 자랑하면서 무너지면 지들 책임 회피하고자 외주 더 조지고 손해배상 소송까지 하고…
어쨌든, 이들에게 클라우드를 상기시키는 건 참 어려운 일이다.
“돌아가면 됐지 우리가 왜 문제가 발생할 때 비용을 지출해야 하냐? 문제 발생하면 고치는 게 당연한 도리지 않냐?”
이딴 생각 하고 있는 윗님이 자리잡고 있는데 클라우드 생각 하겠는가? 나같아도 안한다.
그러니 문제 해결에 필요한 다른 대책방안을 생각하기 어렵고, 결국 땜빵에 의지할 수밖에 없는 실정이다.

3. 고정관념

윗분들 문제 뿐만이 아니다. 더이상 새로운 기술을 접하기 싫은 개발자도 문제다.
클라우드는 서버를 대여하는 개념이고, 언제든 사양을 높이고 줄일 수 있다.
하지만 대부분의 개발자는 고정된 운영 환경에 맞춰 프로그램을 만들고 운영하는 데에 익숙해져 있다.
즉, 처음부터 규모를 잡고, 이 규모에 맞춰 개발한다.
그렇다 보니, 썰렁하면 썰렁할수록 돈먹는 하마가 되고, 많으면 많을수록 이거대로 확장이 어렵게 하여 한계가 오고 결국 서버가 다운되기 일쑤다.
사실 개발 지침부터 병신같은 게, 무조건 보안을 위해 HTTP POST를 통해 링크를 구성하고 웹 페이지를 연결해야 하는 가이드가 있다.
참으로 병신같지 않을 수가 없다. 그건 그렇다 치자. 이렇게 한계를 가지고 개발하다 보니 클라우드 접목은 생각도 못할 일이 된다.
게다가 클라우드를 도입하면 서버관리자는 필요가 없어진다고 생각하는데, 없으면 당연히 예상비용 대비 손실 발생 시 답이 안나오기 때문에 안둘 수가 없다.
근데 서버 관리자들은 클라우드를 자기 밥그릇 뺏든 웬수라고 생각하기도 한다. 대체 어떤 대가리를 가지면 그런 발상이 나오는지 참 신기할 따름,
오죽하면 어느 서버 호스팅 업체에서 클라우드를 대차게 까고 정답은 서버호스팅이니 우리 서버호스팅 이용해달라는 병신마케팅하는 업체가 있을 지경이다.
하아… 시발 똥꾸멍에서 손이 나와 그 손으로 타자 치고 쓴 글같은 느낌이 물씬 풍긴다.

반드시 클라우드만이 정답은 아니다.

물론 클라우드가 모든 걸 해결해 주는 게 결론은 절대 아니다.
기존에 운영하던 걸 모두 클라우드로 옮기겠다고? 아까 서버호스팅 영업하는 병신보다 더 병신 납셨네.
내가 아까 대학교의 클라우드 도입 사례를 나열해줬다. 그렇다. 필요할 때 쓰라는 것이다.
안정적으로 운영하여 모든 업무의 성공율을 높이는 것은 이렇게 유연한 운영 대책이 절실하다는 것이다.
근데 한국에는 스타트업 빼면 그딴거 없다. 모 아니면 도다.
이러니 대민 서비스가 개판인 것이다.

composite / 2016년 1월 25일 / Dog's bullshit / 0 Comments

민원24 출력꼼수 정리

경고

이 방법은 편법적이고 우회적인 방법으로 비보안 상태로 처리하기 때문에,
민원24는 이 방법으로 파일 출력한 내용에 대한 보증이 불가능할 수 있으며,
원본 파일 유출로 인한 위조 및 불법 행위에 대한 책임을 본인이 질 수 있다.
필자는 소개한 내용을 모방하여 발생한 모든 책임을 지지 않으며, 본인에게 있다.

출력꼼수 시작.

프린터가 없을 경우

  • HP LaserJet 5200 PostScript 드라이버를 다운로드 후 설치. (관리자 권한 필요)
    • PCL5 및 PCL6 이 아닌 반드시 PostScript 드라이버를 설치
    • 일반모드를 선택한 뒤 다음 버튼 클릭
    • 로컬 프린터 추가(L) 클릭
    • 기존 포트 사용(U)에서 LPT1: (프린터 포트)를 선택한 뒤 다음 버튼 클릭
    • HP Universal Printing PS를 선택한 뒤 다음 버튼 클릭
    • 프린터 이름은 기본 값 그대로 사용. 다음 버튼 클릭
    • 프린터 공유는 공유 안 함을 선택한 뒤 다음 버튼 클릭
    • 설치 후 종료
  • whria 다운로드 및 관리자 권한 실행
    • 원래 프로그램은 RawPrintServer 인데 어느 한국 개발자가 변형한 듯 함.
    • 사용 가능한 포트번호는는 9100 및 910x 이며 오픈한 포트를 메모에 적은 후 서비스 등록 SUCCESS 확인.
  • PDF 드라이버 암거나 설치 (윈도우 10의 경우 기본 제공, 한컴PDF던 DoPDF던 PromoPDF던 상관없음. 프린터가 없을 경우 PDF 프린터를 기본 프린터로 설정.
  • 새 하드웨어 장치 추가 -> Microsoft Loopback Driver 설치 (이유: 민원24 인쇄 관리자가 127.0.0.1 막음)
    • IP는 192.168.x.x 이 아닌 (민원24에서 차단했다는 보고가 있음) 10.x.x.y 로 설정, 서브넷 마스크는 255.255.255.0, 게이트웨이는 10.x.x.1 로 10 과 1 을 제외한 x 부분을 동일하게 지정.
    • 명령 프롬프트에 ping 10.x.x.y 입력 후 엔터쳐서 ping <1 가는지 확인.
  • HP LaserJet 5200 PostScript 드라이버 속성 변경
    • 포트는 TCP/IP, IP는 방금 설정한 10.x.x.y 로 설정. 포트번호는 whria 에서 설정한 포트 설정.

프린터가 있으나 지원하지 않을 경우

공유 프린터를 통한 사용법은 여기 블로그 참조.
구글에 민원24 지원하지 않는 프린터 검색하면 어쩌면 해당되는 모델에 대한 방법을 찾을 수 있다.
또는 SPL을 이용한 방법 참고

SPL을 이용한 방법은 탐색기로 파일 찾는 귀차니즘만 제외하면 프린터가 있을 때 가장 추천하는 방법.
PDF 인쇄 여부는 확인 못해봤으나, 지원한다면 이 방법은 나쁘지 않음.

VMWARE 같은 가상에 사용할 경우

나처럼 액티브엑스로 컴퓨터를 더럽히고 싶지 않은 사용자나 맥 등의 타OS 사용자의 경우,
VMWARE 기준으로 아래 항목을 .vmx 파일에 편집기를 넣고 추가한다.
(원래 가상에서 프린터를 막고 있었으나 현재 정부 기반 가상 데스크탑 때문에 풀렸을 수도 있음. 아래 설정 전 확인 바람.)

isolation.tools.getPtrLocation.disable = "TRUE"
isolation.tools.setPtrLocation.disable = "TRUE"
isolation.tools.setVersion.disable = "TRUE"
isolation.tools.getVersion.disable = "TRUE"
monitor_control.disable_directexec = "TRUE"
monitor_control.disable_chksimd = "TRUE"
monitor_control.disable_ntreloc = "TRUE"
monitor_control.disable_selfmod = "TRUE"
monitor_control.disable_reloc = "TRUE"
monitor_control.disable_btinout = "TRUE"
monitor_control.disable_btmemspace = "TRUE"
monitor_control.disable_btpriv = "TRUE"
monitor_control.disable_btseg = "TRUE"

주의 : VMWARE에 대한 시그니처가 없어진 격리 모드로 실행하는 설정 파일이기 때문에 호스트 간 상호작용(3D 기능 및 프린터, 클립보드 공유 등)이 불가능하다.

Bootcamp는 실컴으로 취급하기 때문에 문제 없으나, 맥 OS에서 사용하는 대표 가상인 Parallels 의 경우 보고된 바가 없음. 해당 OS에 프린터 설치하면 문제없이 되는 듯 함.

composite / 2016년 1월 18일 / Dog's bullshit / 4 Comments

Cloud IDE를 통해 우리가 얻을 수 있는 프로젝트 이점들

Eclipse. 국내 자바 개발자들의 국민 IDE 도구이다.
현재 릴리즈는 MARS 이며, 나온 지 얼마 안됐다. Luna 를 쓴지 얼마 안됐는데…
하지만 아직도 꽤 프로젝트들이 Indigo 및 심지어 Galileo 버전을 쓰기도 한다. ㄷㄷㄷ
그리고 어떤 이들은 디스크 오버헤드가 큰 개발환경에 질려 유료 IDE인 IntelliJ IDEA 를 통해 모던 웹 개발을 꾀하기도 했다.
게다가 구글은 자사 안드로이드 개발에 Eclipse 를 떠나보내고 IntelliJ 를 수용하여 많은 국내 안드개발자들의 공분(?)을 얻었다.

그런 말도 탈도 많은 Eclipse에서 며칠 전 Che 버전이 오픈됐다.
몇년 전부터 웹 기반 Eclipse 개발을 발표했고, 그리고 꾸준히 개발해왔다.
그리고 이제 “쓸 수 있는” 웹 기반 Eclipse IDE가 생겼고, 이 버전 코드명칭을 Che 로 칭했다.
근데 Che가 뭔지 아직 모르겠다. 좀 더 자료를 수집해야겠다.

어쨌든, 이녀석은 웹 기반의 IDE이다.
Atom같은 쉘을 통하여 자체 브라우저를 통해 응용 프로그램 행세하는 에디터는 아니고 그저 브라우저에 돌아가는 녀석이다.
이녀석은 서버로 운영되며, 서버 내 개발자들에게 같은 개발 환경을 제공한다.

그리고 또하나 흥미로운 기능이 있다면 바로 Workspace 서버이다.
이클립스는 Workspace를 잡고 여기에 설정을 관리하고 개발 환경을 만든다.
이런 Workspace가 이제는 서버에서 관리되어 개발자들의 용량 부담을 최소화 했다.

Eclipse Che

요렇게 생겼다. 뭔가 인텔리제이같이 생겼다고? 디자인만 그럴 뿐 순전히 Eclipse 환경이다.
그리고 이 같은 개발환경을 여러 개발자에게 워크스페이스와 같이 제공한다.

그렇다면, 이런 개발 환경에서 얻을 수 있는 개발 이점은 무엇이 있을까?
가장 많이 쓰이는 자바 개발 환경 기준으로 설명하겠다.

1. 개발환경을 매우 쉽게 세팅할 수 있다.

한국의 SI 스러운 개발환경. 솔직히 말해 A부터 Z까지 표준을 맞춘다는 건 마음에 안들고 너무 꽉막힌 생각이다.
한국의 개발환경은 그리고 A-Z 모두 맞춰줘야 한다. 심지어 경로까지… 워워…
아무렴 어떤가. 클라우드 개발환경은 개발자들의 쓸데없는 개발환경 세팅 시간을 줄여준다.
관리자가 그저 개발자 계정과 워크스페이스 권한만 주면 개발자는 브라우저를 통해 접속만 하면 개발환경 세팅 끝이다.
물론 DB의 경우는 얘기가 틀리겠지만 Tadpole DB Hub를 통해 개별 관리하거나 하면 시간은 더 줄어들겠지만 그럴 일은 없어보이고…

2. 익숙한 개발환경을 그저 클라우드로 즐길 뿐이다.

Eclipse Che 는 Eclipse 기반이다. 당연히 자바로 만들었고, 자바로 돌아간다. 자바 개발환경이 모범을 보여줘야지.
자바 개발자들에겐 당연히 Eclipse 는 친숙함 그 자체이다. 이 친숙함 그대로 클라우드로 즐기면 된다. 뭐가 문제인가?
개인 프로젝트 개발해야 하는데? 그러면 별도 IDE를 쓰면 되잖나. 개발환경 분리되는게 일상인 프리랜서가 뭔 걱정인가?

3. 보안과 통합이 매우 쉽다.

워크스페이스를 서버가 관리한다는 게 무슨 뜻이겠는가? 개발 소스를 자기들이 관리하겠다는 거 아닌가?
그렇게 되면 개발자들이 개별로 소스와 구조를 가질 필요가 없어지고, 그리고 이로 인한 소스 코드 유출 피해를 줄일 수 있지 않겠는가?
아직 소스 구조를 다운로드 받기 기능과 이에 대한 권한에 대해서는 확인이 필요하지만, 만약 있다면 개발 보안도 한층 업그레이드 될 것이다.
그리고 개발자가 이제 철수한다면 철수할 개발자에게 권한을 빼면 끝이다. 뭐 삭제
또한, 통합을 하고자 한다면 그저 관리자가 Eclipse Che 서버만 관리하면 된다. 모든 개발자가 다 적용된다.
물론 각 개발자별 플러그인이 필요할 것이고, 이를 관리자가 맞춰줄 수 있다. 그렇지 않다면 분명 불편할 개발자도 있을 테니.
SVN? Git? 다 된다. 버전 관리는 공통으로 한번 세팅하거나, 사용자별 세팅하면 땡이다. 그다음 지속적 배포 환경 고민을 하면 된다.

4. 개별적 개발상 이슈를 최소화할 수 잇다.

개발하다보면 예상치 못한 문제에 직면한다. 갑자기 개발자 컴퓨터가 맛이 가버리거나, 팅기거나 등등…
여태까지 작업한 것들이 날아가는 모습을 본 개발자에게는 허망함과 부담감이 가득할 것이다.
또한, 개발 환경이 반드시 100% 맞춤형이 아니다 보니, 어떤 컴퓨터에서 잘 안돌아가기도 한다.
그래서 어떤 프로젝트는 심지어 OS와 브라우저 등 아주 원초적인 환경까지 통일해야 하는 표준을 규정하여 개발시키기도 한다.
피곤하다.
웹 환경은 그딴거 없다. 웹만 되면 된다. 구버전 브라우저만 아니라면 개발할 수 있는 모든 게 다 된다.
Eclipse Che는 그렇게 만들어졌고, 그게 목표이기 때문이다.
웹 브라우저 외에 어느 환경도 구애받지 않는 개발 환경이라면 피곤할 필요도 없지 않겠는가?
게다가 관리자가 허락만 한다면 재택 근무도 가능하고. 물론 그럴 가능성을 염두해 둘 리는 없겠지만.

이제 개발환경도 새바람이 불고 있다.
여태까지 나온 임대 기반 개발환경이 싫다면 언제든 개발환경을 구축하여 제공할 수 있다.
서버 기반의 개발환경으로도 데스크탑 못지 않은 개발환경을 구축할 수 있는 시대도 도래했다.
이를 친숙한 Eclipse 에서 Che 버전을 통해 제공할 것이다.

이제 자바 개발자들에게 고민해야 할 것은 무엇인가?
바로 인식의 전환이다.
다른거 다 필요없다.

composite / 2015년 12월 28일 / Dog's bullshit / 6 Comments

Cloudflare 로 호스팅하는 웹 사이트의 진짜 IP 뽀려내기 외전

이전 글 에서 첨언하고자 글을 쓴다.
이글 쓴지.. 1년 넘었구나. 내가 왜 이걸 비공개로 닫았지? 그래서 오픈했다. 어자피 알 놈은 아니까.

요즘 들어 몇몇 한국의 불법 서비스 뽀사불라고 하는데 하필 Cloudflare 로 보호하고 있어
아 시발 저새끼 존나 조져주고 싶은데 거대한 방화벽에 막혀 좆같은 표정이나 짓고 있을 모습이 구글링을 통해 눈에 선하다.

그런 사이트야 나는 알지만 일일이 소개하기엔 귀찮다.

어쨌든, 내가 전에 소개했던 Crimeflare는 아예 도메인을 하나 만들고 운영하고 있다는 건 알고 있을 것이다.
http://www.crimeflare.com/

예전 도메인은 망했으니 넘어가고, 의외로 많은 수의 금액이 기부되어 있다.
내 지인 도메인도 마침 CloudFlare 길래 검색해봤고 내 도메인도 검색해 봤는데…
일단 내 도메인 기준으로 보여주겠다.

CloudFlare search results

그렇다. 마침 Crimeflare가 진짜 IP를 뽀려낸 듯 한데…
어떡하냐.. 그 IP 는 Github IP인데 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

뭐.. 이렇다.

다음은 Cloudflare Resolver라는 사이트다.
https://exonapps.nl/cfresolver/index.php

이녀석은 도메인 넣고 검색하면 CloudFlare 에서 사용할 법한 NS 이름에 대한 레코드에 연결된 IP를 검색한 뒤 사용자에게 보여준다.
만약 CloudFlare 서비스를 대충 쓰고 있다면, 이 서비스를 통해 진짜 IP가 드러날 수 있다.
그러므로 이 서비스에 나온 서브도메인은 보안을 위한다면 “절대” 쓰지 않는 것이 현명하다고 할 수 있다.

그리고 마지막으로, 요즘 클라우드가 대세다 보니, AWS 등 여러 클라우드 호스팅 서비스를 이용할 것이다.
국내 클라우드 서비스는 개 쓰레기인 건 초보 개발자도 아는데 뭐.

이 서비스를 통해 호스팅을 한다면 Crimeflare나 Cloudflare resolver 는 진짜 IP를 뽀려냈다고 착각할 수는 있다.
하지만 해당 클라우드 업체의 약관을 위반하지 않는 이상, 개소리는 이제 마음 속에 담아두도록 하자.

그러면 왜 이렇게 IP 숨겨서 호스팅 하는게 유행이 된 건가?
당연하다. 보안이다. 해커가 자기 IP 알아내서 해킹 시도하면 기분이 좋겠는가?
물론 ISIS 같은 개좆같은 테러들에게 제공하는 건 정말 나쁜 짓은 분명하다.
근데… 수많은 고객들 중에 ISIS 걸러낼 자신 있으면 해봐.
게다가 Onion 이라는 그리드형 프로토콜도 있고… 여러 보안 네트워크를 이제 당연하게 쓰는 시대다.

일반인이 뽀려낼 수 있는 건 한계가 있다. 포기하라.
게다가 안좋은 사이트라면 방통위 차단 걸면 땡인거고 (URL 필터링 기반이라 문제라면 문제겠지만)
자신에게 위해를 가하는 사이트라면 경찰에 경위서 쓰고 넘기면 나머진 알아서 해결해준다.

결론이 뭐냐고? 뽀려내는 건 포기하자. 멍청이가 운영하지 않는 이상 너 원하는대로 못조진다. 끗.

composite / 2015년 12월 1일 / Dog's bullshit / 2 Comments

드디어 모습을 드러낸 새로운 7-Zip 안정화 버전

예전에 가지고 있던 노트북이 뇌사상태에 빠져 어쩔 수 없이 새 노트북 사고 윈도우 깔고
반디집 쓸까 7zip 쓸까 고민하다가 7zip에서 드디어 새 버전이 나와 내 눈을 자극했다.
2015년 11월 19일 릴리즈. 9.20 이래로 5년만이다.
오랜만이다. 깔아줘야지.

7-zip 공식 사이트에서는 그저 stable 이라고만 changelog 남긴 걸로는 정리가 안되어
이 사이트에서 새로워진 점을 가져왔다.

  • 이제 7z 압축 시 멀티 코어를 재대로 지원한다.
  • 7zip 프로그램에서 ext2,3,4 이미지 및 VMDK 이미지, LZMS 압축 방식의 WIM 이미지, UEFI 바이오스 파일, winzip(zipx) 압축파일, RAR5 파일 압축 해제 가능
  • 실행 인자 추가. -bt 추가 시 압축에 걸린 시간 통계 표시, -rn 추가 시 압축파일명 변경 가능, -h 추가 시 해시 계산.
  • 윈도우 7 이상의 작업표시줄 진행상황을 볼 수 있다.
  • 파일 관리자에서 move to archives 옵션 추가
  • 큰 파일이나 폴더를 열 때에 대한 성능 향상
  • 파일 경로 글자 개수가 260 이상인 파일 및 폴더 지원

이제 7zip 압축 시 불편했던 큰 짐은 덜어진 셈이다.
반디집의 경우 필자가 직접 공식 게시판에 질문을 했더니, 현재 버전인 5.x는 안정화 단계이니 어렵고, 차기 버전인 6.x부터 지원한다고 한다.
외국인도 의외로 반디집을 꽤 쓴다.

그리고 이제 내 새 노트북의 기본 압축 프로그램은 7zip 이다.

composite / 2015년 11월 26일 / Dog's bullshit / 0 Comments

한국 공인인증서의 혁신은 없다. 앞으로도.

그리고 있어서도 안 된다.

왜냐고?

1. 특정 기업 독점, 특정 기관(?) 검증, 그리고 법의 3중 철통 혁신방지 방어

별도로 얘기 안하겠다. 공인인증서 만든 곳은 기관이 아니고 기업이다.
그리고 금융계 기관이 이를 검증하고 시행하도록 규정한다.
그리고 이런 잣대를 형성시키고 딴 곳으로 새나가지 않도록 법으로 규정한다.

지금 현재 공인인증서 기술에서 혁신을 이루려면 이 3개의 압박에서 벗어나야 한다.

2. 애플의 공인인증서 인증기술? 이건 이미 있었다.

애플 뿐만 아니다. FIDO 협약체에서도 충분히 구현한 기술이다.
FIDO는 2011년 설립된 다단계 인증 표준협약 기관이다. 삼성과 LG 등 대기업도 당연히 협약사다.
애플의 공인인증서 기술은 기존 PKI 기술을 활용하되, 한국에서는 비밀번호로 암호화를 처리하지만,
애플은 지문인식 같은 생체기술을 쓴다는 점에서 틀리다. 물론 이는 여러 방법으로 활용 가능하다.
또한, 애플도 미국 기업인 만큼 미국 보안문화에 따라 인증서를 서버에 보관한다는 점은 한국과 완전히 차별화된 내용이다.

근데 한국에서는 이렇게 하면 먼저 법적 규제를 꼼꼼히 따져봐야 하며, 되지도 않을 금결원의 승인을 신청하고 기다려야 한다.
만약 당신이 혁신적인 공인인증서 기술을 가지고 있다면, 먼저 외국에 특허등록부터 하길 권한다.
한국에서는 앵간한 자본력으로 정격유착 절대 못이긴다.

3. 한국의 주민등록 기술로 FIDO와 핀테크 보안 시장을 선점할 수 있다? 뭔 개소리?

누군지는 따로 얘기 안하겠다. 한국의 주민등록 기술 경험으로 핀테크 보안 시장을 이겨낼 수 있다고 개소리 지껄이는 전문가님들 있는데,
실제 기술적 사례 하나 들려주겠다.
페이게이트에서 HTML5 표준 기술 중 사용자 기반 인증서 API 표준을 구축하려 했으나 실패했다.
그 이유는 공감대 부족이다. 인증서를 서버로 저장하고 당연시 여기는 미국, 그리고 일본과 중국 등 한국을 제외한 아시아 국가와 아메리카 국가의 공감대 형성은 실패했다.
다행히(?)도 유럽 일부 국가에서는 한국의 사용자 기반 공인인증 표준에 공감대를 형성했다.
안타깝게도 많은 찬성표를 받지 못해 기술이 사장됐다.
그리고 HTML5 의 보안을 책임지는 기술 중 하나인 Web Crypo API가 있는데, 이는 미국의 서버단 인증서 보관 철학이 적용됐다.

또한, 전자인감제도를 시행하는 국가는 대한민국 하나뿐이다. 중국과 일본도 안쓴다.
중국의 경우 중앙정부 통제 철학이 강하기 때문이며, 일본의 경우 서구 문화 답습으로 인해 인감이 사장됐다고 봐도 무방하기 때문이다.

게다가 한국은 금융정보나 공인인증서 등의 개인 보안정보를 법적으로 개인정보로 취급하고 있기 때문에,
절대 이런 정보를 서버에 보관할 수 없도록 법으로 규제되어 있다. 심지어 전송하기 위해 잠깐 수집해서도 안 된다.
현재는 금감원 승인 하에 금융 및 공인인증 정보를 서버에 보관할 수 있지만, 그 이외에는 여전히 자잘한 쇼핑몰 등은 보관도, 가져오지도 못한다.

만약 전 세계를 매료시키는 보안 인증기술을 만들기 위한 베이스는 결국 미국의 서버단 보안 베이스를 기초로 하고 작업해야 한다.
FIDO 또한 이런 철학을 그대로 적용하고 있으며, 이는 사내 보안에는 법적 문제가 없기 때문에 삼성이나 LG는 이를 아무렇지도 않게 쓰고 있다.
B2B는 상관없으나, B2C는 이런 병신같은 법들이 핀테크 보안기술을 옥죄고 있다고 봐도 과언이 아닌 것이다.

핀테크 사업을 생각하고 있는가? 그렇다면 먼저 이 헬조센의 주민등록 알고리즘을 먼저 벗어나야 한다.
자본력이 풍부하며 금융기관이나 기업의 인맥이 형성되어 있고, 핀테크 기술이 충분히 준비되어 있다면 한국은 정말 매력적인 시장이다.
하지만 그게 아니라면 필자는 말리고 싶다. 되지도 않기 때문이다.

4. 그렇다면 혁신적인 보안 기술을 한국 내에서 선보이려면?

물론 속 시원하게 얘기하자면 먼저 중앙 통제식의 전자인감제도부터 뜯어고쳐야 한다. 정경유착 심한 나라에서 이거 고칠 일은 절대 없으니…
가장 이상적인 전자인감제도는 그냥 페이게이트 처럼 금감원 승인만 하면 되며, 카드사와 금융사의 독점 기술제도까지 보장해서는 안 된다.

핀테크는 정말 한국에서 선보이려면 고칠 것이 산더미다. 이들을 고친다고는 했으니 지푸라기같은 심정으로 기대는 하겠지만,
의지가 있어야지. 스타트업들이 다양하게 혁신적인 핀테크 기술을 선보일 텐데 이들을 막으려 하는 이런 기업문화 행태를 고치지 않으면…

러시엔캐시가 대한민국 대표 대부업체 되는 꼴과 마찬가지 되는거다.
뭔소리냐고? 외국 핀테크 공습에 대한민국 금융체계가 재대로 망가진다고.

이제 정경유착 지겹지 않냐? 돈도 그리 모았으면 써야지. 존나 모아서 북괴 쳐들어오면 딴나라 튈 생각으로 이렇게 모으니…
헬조센 소리 안나게좀 해라.

composite / 2015년 10월 5일 / Dog's bullshit / 0 Comments

Hamachi를 대신할 가상 로컬 네트워크 서비스

전에 NetRouter를 소개했었다.
하지만 NetRouter는 서버를 설치해야 하며, 게다가 포트를 열어야 했다.
따라서 그러지 못하는 환경에서는 어려움이 있을 것이다.

아래 서비스는 NetRouter와 같이 서버 설치가 불필요하면서
Hamachi와 비슷한 기능을 수행할 수 있는 서비스들이다.

이 서비스를 통해 게임, 소규모 비즈니스 가상 네트워크 작업 등이 가능하며,
보안성은 내가 직접 입증하기 어렵지만 나름 강력하게 구성하고 강조하는 부분들이다.

1. Tunngle (http://www.tunngle.net/)

이 서비스는 게이머들에게 더 잘 알려진 가상LAN 서비스이다.
원격 상에 플레이어들을 모아 가상 LAN 모드로 게임하는 게 주류인 서비스이다.
하지만 가상 LAN 모드이기 때문에 이 서비스를 통해 LAN 네트워크처럼
공유 폴더를 통해 파일을 주고받거나 원격 데스크탑 등 여러가지 작업이 가능하다.
당연히 클라이언트를 깔아야 동작한다.

매력적인 점은 바로 무료 계정이 한 네트워크당 지원하는 연결 개수가 32개이다.
255개 연결은 유료이며, 월정기계정 및 영구 계정 2가지가 있는데,
월정기계정은 2.99유로 (6개월 납입), 영구 계정은 19.99유로로 제공된다.
하지만 이 서비스의 무료 기능은 비즈니스로 쓰기에 매우 어려운데,
그 이유는 로그인 시마다 새로운 IP를 할당하는 구조이다.
따라서 IP를 유지하려면 네트워크 끊김 없이 계속 로그인한 상태에서 있어야 한다는 점이다.
순전히 게임 네트워크 구성을 위한 방법이라면 하마치보다 아주 많은 사용자 수를 지원하는 점에서 매력적이다.

근데 클라이언트는 게임에 중점적이다 보니 윈도우만 지원한다. 하마치는 맥이라도 지원하지 얘는 그딴거 없다.

정리

  • 무료 : 네트워크당 최대 32 연결 개수, 로그인 시 매번 새 IP 부여. 게임 네트워크에 적합
  • 유료 : 네트워크당 최대 255 연결 개수, 고정 IP 부여 가능, 비즈니스 및 대형 게임 네트워크에 적합
  • 클라이언트 지원 운영체제 : 윈도우 XP 이상… 끝.

2. ZeroTier (https://www.zerotier.com)

Hamachi 서비스와 비슷한 가상 LAN 서비스이다. 기능도 군더더기 없이 충실하고,
이 서비스의 특징은 Public Network와 Private Network가 있는데,
Public Network는 모두 공개하여 공유하는 네트워크인 대신 무제한 사용자 연결이 무료이다.
Private Network는 개인만 공유하는 네트워크이지만 해당 네트워크에 10개의 연결까지 무료이다.
Private Network 에 무제한 네트워크 연결을 원할 경우 네트워크당 월 4불을 지불하면 된다.
그렇다. Private 10개 만들었다면 각 네트워크당 10개 연결이 허용된다는 얘기다.
이 네트워크의 특징은 수동 또는 자동으로 IP를 할당할 수 있다는 점이 되겠다.
다행히도 위 Tunngle 와는 달리 유동IP 방식은 아니고 네트워크 식별자를 통해 연결하는 방식이다.

연결하는 방법은 Network ID를 넣어 접속하는 방식이다.
특이하게 이 서비스는 https://www.zerotier.com/admin/admin.html 관리자 페이지에서 연결 시 승인하는 방식이다.
연결한다고 되는게 아니다.

정리

  • 무료 : 공개 네트워크 설정시 무제한 네트워크 연결 가능, 개인 네트워크 설정시 최대 10개 연결 지원
  • 유료 : 개인 네트워크 당 월 4$로 무제한 연결 지원
  • 클라이언트 지원 운영체제 : 윈도우 7 이상, 맥, 리눅스, 라즈베리 (모바일 추가 지원 예정)
  • 인터페이스 : UI 및 CLI

3. DynVPN(https://www.dynvpn.com)

또다른 Hamachi 와 비슷한 가상LAN 서비스이다. 위와 비슷한 역할이다.
이 서비스는 개인 네트워크만 존재한다. 그리고 각 IP를 수동으로 부여해야 하는데,
DynVPN은 로그인 시 Provisioning Key로 식별하여 서로 네트워크를 구성하도록 설계했다.
따라서 Provisioning Key를 모르면 안되는 것이다. 일종의 비밀키라 생각하면 되겠다.
아마 단점을 굳이 찝자면 베타 서비스라는 점이다. 언제 불안정해지거나 다운될 지 모른다는 점이 단점으로 작용한다.
대신, 개인 가상 네트워크만 구축 가능하며, Provisioning Key 만 노출 안되면 안전한 로컬 가상 네트워크 구축이 가능하다는 장점과,
(물론 노출하면 삭제 후 다시 생성하면 된다.)
아직까지 베타이다 보니 제한사항이 없다. 네트워크 구성원 추가가 귀찮을 뿐 무제한 연결이 가능하다는 점이 되겠다.

정리

  • 무료 : 개인 네트워크 무제한 연결 지원, Provisioning Key로 관리.
  • 유료 : 베타이기 때문에 아직 없으나 기부 가능
  • 클라이언트 지원 운영체제 : 윈도우 7 이상, 맥, 리눅스, 라즈베리
  • 인터페이스 : UI 및 CLI

composite / 2015년 8월 3일 / Dog's bullshit / 0 Comments