관심가져주신 분들 감사합니다.
글쓴이: devworx / 작성시간: 월, 2015/06/22 - 4:23오후
유익한 댓글 적어주신 분들은 감사합니다.
그 외 주제넘는 발언을 하거나 인신공격 및 대응할 가치도 없는 말로 댓글 남긴 익명들은 무시하겠습니다.
얘기나온대로 최고의 보안 방법은 가능하면 포트를 안여는 것이다
이런 논리라면 최고의 대응 방법은 아무 대꾸도 하지 않는 것이겠지요.
그동안 해당 건에 관심가져주신 분들 모두 감사합니다. ^^
Forums:
생각나는 대로 적어볼께요
3306...이걸 any로 열겠다는건..다 털어가세요..라는 뜻이구요.
마찬가지로 다른 포트도 보통은 괜찮겠지만..취약점 찾아서 공격 들어오지 않는다는 보장 없습니다.
보통은. 80 을 제외한 포트들은 사용자가 특정된다고 봅니다.
두가지 방법이 있는데
하나는 VPN 인데..이건 관공서 특성상 불가능 할 것 같구요.
다른 하나는 고정 IP 를 지정해서 그 IP에서만 접속 가능하도록 방화벽을 구성하는 방법입니다.
유동 IP에서도 되어야 한다..라면 답 없구요.
답이..없다구요?
정말 답이 없는건가요? ㅠ.ㅠ
Mysql 3306은 딴 포트를 바꾸면 되지 않나요? 저기 써놓은 포트들은 예시입니다.
DB 실 포트는 3306에서 실제 서비스 들어가면 55506 포트로 바꿨다 치죠.
이러면 다 털어가란 말은 안나오겠나요? 똑같습니다. 공격자는 포트 스캐닝 프로그램 돌려서
열려있는 포트를 찾아서 공격들어오니깐요.
이쪽 네트워크팀에서 얘기하는건 알려진 db 포트 등이 너무 많이 열려서 불안하다가 아니라
80을 제외한 특정포트 오픈 요청이 10개나 되기 때문에 부담이 된다는 얘기입니다.
그래서 오픈된 포트 위주로 어떤 대비책이 없는지 툴 내지는 기술을 여쭤본겁니다. ^^
그리고 만약 답이 없다면
네이버나 다음카카오 SK플래닛이나 nc소프트는 같은 잘나가는 민간 IT기업들은
어떻게 협업과 구성관리시스템을 유지하고 신규 서비스를 과감하게 런칭할 수 있을까요.
지금 저희는 관공서에서 더이상 구더기가 무서워서 장을 못담그는 폐단에서 벗어나려고 발버둥 치고 있는 겁니다.
안된다고 막고 부담된다고 막아서 자신의 바리케이트를 쳐서 더이상 발전을 못하는 방식이 아닌
더 나은 발전을 위해 오픈하고 그에 대한 방비책을 세우는 플랜을 택하려 합니다.
협업을 위한 시스템이기 때문에 메이븐 넥서스 같은 경우엔 any로 설정해야 합니다.
불특정 다수의 개발자들이 유동 IP에서 접근하니깐요. 저런 것이 너댓개나 더 됩니다.
정말 방법이 없는 건가요? ㅠ_ㅠ
불특정 포트를 열어놨을때 들어오는 디도스 공격이나 해킹 공격 혹은 이상 리퀘스트를 감시하는 솔루션 같은 것들이 없단 말인지요?
저는 뭔가 있을거라고 생각됩니다 제 바램인 뿐인지요?....
좀 더 경험이 녹아있는 답변을 듣고 싶습니다.
조언 부탁드립니다.
개발용 네트워크는 production
개발용 네트워크는 production deployment와는 분리되어 있고, 개발용 네트워크에서 모든 테스트를 거쳐 배포용 파일까지 CI가 준비완료해놓으면, production에서 http로 접근해 가져가서 설치하도록 구성하시면 안되나요?
개인적으로는 http/https외에 ssh도 열어놓기는 합니다만, ssh를 안열더라도 불가능한 것 같지는 않습니다만.
첨언하면 ssh만 열려 있으면 포트 포워딩으로 원하는
첨언하면 ssh만 열려 있으면 포트 포워딩으로 원하는 걸 다 하실 수 있습니다. 다만 개발용 셋업과 production 셋업이 잘 구분되어 있고 deployment process가 잘 정의되어있다면, 설령 ssh가 열려있지 않더라도 가능하다는 것입니다.
포트포워딩하는것은 보안상으로 포트여는것이나 크게
포트포워딩하는것은 보안상으로 포트여는것이나 크게 다를바가 없습니다.. 네트웍담당자 눈속임일뿐입니다.
그걸 허용할꺼면 차라리 포트열어주는 편이 나을정도라고 봅니다.
접속자(유저)가 믿을만하다면 vpn 이용 하시는게 좋을듯합니다.
그렇지않다면.. 제가볼땐 확실한방안이 있을때까지 제안하신것같은 서비스를 차라리 안하는게 좋을듯합니다. 보안이 더중요하죠..
ssh 포트포워딩을 추천한 건 아니었구요.. 개발
ssh 포트포워딩을 추천한 건 아니었구요..
개발 환경을 현대화하는 건 좋은 일이지만 그렇다고 보안을 희생할 일은 아니라는데 동의하고요, 다만 원 글을 제가 이해하기로는 CI 등 개발에 필요한 셋업을 위해 포트를 열어달라는 것으로 읽혀서, 포트를 여니 마니 할 게 아니라 개발 셋업을 프로덕션 셋업에서 아예 분리하는 방식을 말씀드린 것입니다.
네 익명님 개발 및 배포 서버가 맞습니다만
익명님께선 계속 프로덕션 디플로이라고 하시네요. (혹시 외국에서 살다오셨는지요? 교과서적으로 영어 철자까지 적어주시고 ㅎㅎ)
암튼 일단 지극히 당연한 얘기겠지만 상용 서비스(실 서비스) 서버는 따로 있습니다.
현재 구축하고 외부로 오픈하려는 것은 개발과 자동 배포가 이루어지는 개발 서버입니다.
이 서버에서 모든 외주 개발자들과 관청의 전산인력들이 협업을 통해 소스코드를 올리고 소스에 대한 피드백을 주고 받으며
커밋 여부에 따라 빌드 파일을 상용 서버로 자동배포(CI) 합니다.
하지만 제 글의 요지 즉 중요한 것은 CI가 아닙니다. 익명님은 CI 서버니깐 본 서버랑 http 혹은 ssh로 통신 하면 되지 않겠느냐는 말씀을 자꾸 하시는데.....
이 문제는 배포 테스트서버와 상용서비스 서버의 연결 방법을 여쭤본 것이 아닙니다. 맥락을 잘못 짚고 계십니다.
CI와 개발서버라는 생각을 아예 빼고 본 서버라고 생각하고 접근해보세요. 그러면 그게 제가 여쭤본 질문입니다.
그리고 개발 환경을 현대화하는 걸 아직 발생하지도 않은 일로 인해서 그리고 머리를 맞대고 궁리해보면 대비책이 있는데도 불구하고
그 발생하지도 않은 일로 인해 무서워서 바꾸지 않는다면 관공서는 영원히 이 상태 그대로입니다.
민간 기업과 관공서의 네트워크 보안이나 백엔드 환경 수준차이가 그래서 벌어지는 겁니다.
관공서에서도 어디선가 누군가는 앞장서서 레퍼런스를 남겨야하죠....ㅠ_ㅠ
...
저도 보안에 대해서는 문외한입니다만 DB 포트를 외부에 any로 연다는 얘기는 들어본 적이 없고 이런 게 필요하다면 필요성을 주장하시는 분이 이게 왜 필요한지를 설득력 있게 얘기해 주셔야 하지 싶습니다.
민간 기업과 관공서의 수준차이를 논하시는데, 네이버나 다음이나 구글 같은 데도 절대 자사 서버 포트를 그냥 열어놓지는 않죠.
(그리고 사족입니다만 svn과 apache도 훌륭한 오픈소스 소프트웨어입니다.)
바로 그겁니다.
네이버나 다음이나 구글 같은 데도 절대 자사 서버 포트를 그냥 열어놓지는 않죠.
그래서 관공서에서도 서버 포트를 그냥 열어놓지 않으려고
네이버나 다음이나 구글같은 민간 기업에서는 어떤 식으로 운영하고 있는지
(혹시나 관련회사 프로젝트 참여한 경험이 있다던가 알고 계시다면)
그리고 리눅스에 포트 감시 솔루션이나 공격 감지 방법 등이 있으면
알려달라고 계속 요청드리고 있습니다. 그게 저의 질문입니다. 진정 없는 건가요?
제 질문이 좀 어려웠는지 다른 분들은 자꾸만 엉뚱한 소리를 하고 계시네요.
혹시 "리눅스에서 돌아가는 포트 감시 솔루션이나 공격
혹시 "리눅스에서 돌아가는 포트 감시 솔루션이나 공격 감지 방법" 으로 관공서를 설득시킬려고 하신다면 포기하시는 것이 좋습니다.
그리고 이미 답은 댓글에 다른 분들이 말씀해 주셨습니다. 원하는 답글을 찾지 못하여 모두들 엉뚱한 소리를 한다고 말씀하시는 것 같군요.
ㅉㅉ
선무당이 사람잡을 소릴 마치 자랑처럼 하고 계시네요.
침입 감지 솔루션이 왜 없겠습니까. 세금 쓰는 것이 정당화될 수 있는 필요라면 쓸 수 있는 솔루션들은 많이 있지요. 문제는 그 어떤 훌륭한 솔루션도 공격면 자체를 줄이는 것보다 나을 수는 없으며, 그보다 더 문제는 님이 얘기한 이유만으론 그런 비용이나 리스크, 보안담당자의 업무 부담 증가 등을 감수하라고 정당화할 수 없다는 겁니다. 내 돈 쓰듯 당당하게 내놓으라고 요구하는 님의 레퍼런스야 하나 늘겠지만. 사고 나면 보안 담당자 책임일테고 말이죠.
원 글을 쓰신 분께서 네트워크 토폴로지를 어떻게
원 글을 쓰신 분께서 네트워크 토폴로지를 어떻게 구성해서 쓰고 있는지야 모르겠지만, DB서버만이 아니라 개발용 웹서버, git, CI, 이슈트래커 등도 공개망에 물려쓰는 경우는 거의 보지 못한 것 같습니다.
보통 개발용 서버들은 조직내 private 네트워크에 물려 쓰지만, 외부 개발자들도 접근하게 하려면 조직 네트워크와는 격리된 개발용 네트워크를 구성해서 vpn으로 접근하게 하는 게 답이겠죠. 만약 그게 아니라 개발용 서버들을 내부망이나 심지어 공개망에 물려서 외부에서 접근가능하게 하자고 제안하는 거라면, 그걸 거부하는 네트워크 담당자가 구더기 무서워 장 못 담그거나 시대에 뒤떨여져서 그런게 아니고, 그런 제안을 하는 사람이 무식해서 용감한 겁니다. 다른 분야 전문가의 경험을 존중하면서 자기 문제 의식을 잘 설명해서, 그 사람이 내가 원하는 것을 할 수 있도록 돕게 만드는 편이 현명하겠지요.
+1. 이게 정답이죠.
+1. 이게 정답이죠.
+1 정리 잘해주셨네요.이게 가장 좋은 답
+1
정리 잘해주셨네요.
이게 가장 좋은 답 같습니다.
any로 허용은 꼭 필요한 포트만 해야하는건 보안에선 가장 기본이죠.
말씀하신 서비스 들은 보안 솔루션을 도입하기 보다는 그냥 방화벽에서 닫아놓고 쓰는게 맞습니다.
글쓴이께서 말씀하신 개발사 접속 같은 경우는 VPN 적용이나 특정 IP만 허용하는 방법 등 해결법이 많습니다.
나와있는 해결법들을 적용해 보시는게 어떨까요.
자기가 잘 모르는 업무 파트너의 영역에서, 파트너의
자기가 잘 모르는 업무 파트너의 영역에서, 파트너의 의견을 제압할 목적으로 인터넷에 물어보는 사람들이 있지요.
그런 것을 '주제를 넘는다'고 합니다.
"최고의 보안 방법은 가능하면 포트를 안여는 것이다"
"최고의 보안 방법은 가능하면 포트를 안여는 것이다" 라고 하셨는데
포트를 안 여는게 최고의 방법이 아니고 "필요한 곳"만 "적절한 방법"으로 열어주는게 좋다는 겁니다.
왜 원글은 지우셨고, 어떻게 저런 결론을 내린건가요?
똑같은 얘기입니다
안 가능하면 열어야죠. 열어야할 필요가 있으면 안여는 게 가능한 상황이 아닌 거 아닙니까.
결국 그렇게 조언해줘도 납득 못할 사람입니다.
아무 대꾸도 안하겠다고 대꾸를 하는 건 아무 대꾸도 안하는 게 아닙니다
제대로 알지를 못하니 무식하고 조언을 해줘도 불통이며 나중에 비슷한 시행착오를 겪을 사람에게 도움이 안되게 올렸던 질문을 지우며 부조리한 부정적 감정을 끝내 감추지도 못하니 졸렬합니다.
부디 내 세금이 댁같은 사람에게 발주하는데 안쓰이기 바라지만 댁같은 사람 바닥도 못 알아보고 고용하는 것도 공무원이고 댁같은 사람의 제안이 위험천만한 건 그래도 알아차리는 것도 공무원이니 그 담당자가 조금이라도 슬기롭길 바랄 수 밖에... 그저 이번 경우 공무원 특유의 보수성 때문에 발현된 확률이 온 얼마 안되는 행운일 가능성이 더 크지만...
이하 차후에 비슷한 궁금증이나 시행착오를 겪을 분에게 도움이 되도록 질문 내용을 복원해둡니다.
본인도 인정하셨든 잘 모르는 분야라면, 나의 (틀린)
본인도 인정하셨든 잘 모르는 분야라면, 나의 (틀린) 답을 정해놓고 동료에게 강제하려 하기보단 문제의식을 잘 설명해서 그 사람의 도움을 얻어 함께 해결방법을 모색하는 게 낫지 않겠습니까? 개발환경을 업그레이드 하는 것 문제의식 자체는 좋은 생각이니까요. 동료가 걸림돌이라고 생각하고 대하면 당연히 상대도 협조하고 싶은 마음이 안들고, 정해져 있는 답이 돌아오지요. 그리고 그건 글쓴 분의 전문분야가 아니기 때문에 혼자 해결할 수 없습니다.
다만 원하시는 것을 하려면 네트워크 구성을 추가하건 vpn을 도입하건 보안 시스템을 추가하건, 조직이 지불해야 할 비용이 늘어날 수 밖에 없고, 성사 여부는 결정권자가 종합적으로 판단할 일이겠죠.
공무를 담당하는 두 분이 합심해서 발전적인 결과를 만들어내시면 좋겠네요.
댓글 달기