NC도 1차 면접에서 떨어졌다. 너무 어려웠다.




2:1 면접이었고, 내 지원 직무는 게임개발이다.

서버/클라이언트 구분이 없어서, 나는 양 쪽 다 해본 경험을 어필하고 포트폴리오를 구성했다.


전반적으로 질문이 문제해결능력창의성을 보려고 했던 것 같다.

문제를 몇 개 예로 들면

- 3D 맵디자이너가 맵을 만들어왔는데, 떨어지면 가파라서 다시 올라올 수 없는 지형을 프로그래머 입장에서 어떻게 찾아낼 것인가? (구체적으로)

- 동접자가 100만명이 들어왔을 때, 접속중인 유저의 정보를 담은 클래스를 어떤 자료구조로 관리할 것인가? (DB 문제가 아님)

- 이외에도 문제 다수


다 현업에서 부딪히고 있는 듯한 시나리오였고, 학부생으로서는 당연히 접해보지 못한 문제이기에 그냥 내 생각대로 말했다.

그리고 해시함수나 트리를 이용한 서버 운영 시나리오도 몇 개 질문받았는데, 그 내용은 복잡해서 생략하겠다. 굉장히 어려웠다.


학부 기초 내용에 관한 질문도 있긴 있었는데, 서버와 클라이언트를 구성할 때 TCP/UDP 중 무엇을 쓸 것이고 그 이유를 물어봤다.

그리고 TCP의 특징 3가지와 같은 아느냐/모르느냐의 문제여서 전부 답했다.




결국 떨어졌는데, 여기는 그냥 실력부족으로 떨어졌다. 너무 어려웠다.

공부를 더 해야겠다는 생각이 든다. 포트폴리오도 부실했고.

  1. KSPSOON 2019.08.27 18:02

    신입 뽑는 면접이였어요? 아니면 당장 일에 투입할수있는 면접이였나요...

  2. ggg 2019.09.09 19:57

    잘봤습니다 감사해용

  3. 케죠씨 2019.09.16 11:40

    와오... 이런 분이 다 떨어지셨다니... 나 같은 사람은 뭐 코딩 테스트에서 떨어지고
    면접에서 어버버거리다 광탈하겠네 ㅠㅠ

  4. 개발흑우민군 2019.09.19 16:03 신고

    이야 너무 어렵네

1차 면접에 떨어진 후기를 써본다. 떨어졌으므로 간단하게 써야지




3:1 면접이고 분위기는 아주 편했다. 좁은 테이블에 4명이 바싹 붙어서 팀플하는 느낌.

들어가면 1분 자기소개 하고, 풀었던 코딩테스트 문제에서 뭐가 인상깊거나 아쉬웠는지 간단히 물어본다.


면접은 100% 자기소개서만 가지고 하는 것 같다. 그러니까 서류 쓸 때 면접까지 생각해서 신경썼어야 했다.

자기소개서에 쓰여진 경험, 팀플, 프로젝트에 대해서 아주 자세하게 물어본다.

어떤 역할을 맡았고, 무슨 기술을 썼으며, 어떤 어려움이 있었고 어떻게 해결했는지


그리고 꼬리물기 질문이 어렵게 들어온다.

예를 들면 내가 홈페이지를 만들었었다 -> 로그인 보안은? -> SSL을 썼다 -> SSL도 뚫리는 거 알고 있느냐? -> 모른다 첨듣는다... -> ㅇㅇ수고

이런 식으로 내가 모르는 내용이 나올 때까지 긁고, 면접관이 실망하는 것이 반복되었다.

근데 억울한게... 나도 꽤나 많이 알고있다고 생각했는데 진짜 듣도보도 못한 걸 갖고와서 물어본다ㅜ...


그래놓고 내가 시무룩하면 아, 어차피 학부생들한테 별로 기대하는 거 없어요 라고 말을 해 준다. (위로인가?)




일단 면접 떨어진 이유는 확실히 짐작이 간다. 내가 서류 쓸 때 생각 없이 썼다.

포트폴리오에 Server 관련 내용을 잔뜩 써놓고, 정작 지원 분야는 Client로 썼다. 그래서 직무가 맞질 않았다. (면접관이 직접 묻기도 했다)


말실수로 대답 잘못한 것도 몇 개 기억나는데, 지금 생각해보면 면접관이 전부 기회를 줬던 것이고 내가 잡지 못했다.

이번 하반기 첫 면접이어서 멋도 모르고 멍청하게 망쳤다. 담엔 잘하지 뭐...

도대체가 NC TEST 라는것은 구글에 쳐도 정보가 몇 개 없다. 내가 정보를 하나 남긴다.


NC는 수년째 NC TEST를 개포고등학교에서 보고 있는 듯하다. 구룡역이 더럽게 깊으므로 빠져나오는데 다소 오래 걸린다. 엘베 이용 바람.


내 지원 분야는 게임개발이다.

오전 인적성 / 점심 식사 / 오후 직무적성검사 시험을 보았다. 시험 응시인원은 통합 1,000명 정도 되어보였다.






점심엔 도시락을 주는데 이 메뉴도 수년 째 동일한 것 같다. 제조사는 Welstory. (학식으로 지겹게 먹은...)

메뉴 구성은 도시락에선 호화로운 편이다.







이제 시험 얘기를 해본다.



인적성아모레퍼시픽과 유형이 동일하다. 같은 연구소에서 만들었다고 한다.

NC TEST 문제집이 없으니 아모레 문제집을 사서 공부해야 한다. 그리고 NC는 한국사를 제외했으므로 암기 부담이 적다.


나는 다음 책을 보았다: 2018 하반기 합격이 답이다 아모레퍼시픽그룹 인적성검사 - 종합편

졸업논문때문에 바빠서 전날에 책을 처음 폈다. 그것도 각 유형별 연습문제만 풀고 모의고사는 안풀었다.

총 공부시간은 3시간 정도? 많이 푼다고 실력이 늘어나지 않을 거란 생각이 들어서 많은 시간을 들이지 않았다.

이럴거면 책값이 좀 아깝다... 그래도 유형 미리 알아간다는 것 정도는 도움되었다.


인적성은 딱히 팁을 줄 게 없다. 그냥 잠 푹 자고 맑은 정신으로 가는 게 좋을 것 같다.

그리고 볼펜/샤프 등을 쓸 수 없게 했다. 컴퓨터용 싸인펜만 사용이 허가되었다.




오후에는 직무적성검사를 보았다. 이게 참 정보도 없고 해서 뭘 공부해 갈 지 몰라 이것저것 해갔는데, 결국 별 도움 안됐다.

다음 시험 보는 사람은 이 글을 보고 감이라도 잡고 시험장에 들어가길 바란다...


문제가 총 50문제였던 것 같은데 앞에 10문제 정도가 NC 회사 관련된 문제다.

예를 들면 NC의 기업문화(홈페이지에 있는), NC가 만든 게임과 각 게임의 설명, 상 받은 게임, 해외 진출 현황 등등... 싹 다 공부해 가야 한다.

NC 다이노스 문제도 하나 나온다. 창단일이나 연고지, 최근 성적 등등 죄다 두루두루 알아가면 될 듯.


20문제는 컴퓨터공학에 대한 내용이다. 아주 깊게는 안 물어본다. 그냥 IT기업들 필기시험 대비 하듯이 다 공부해 가면 된다.


20문제는 C++로 된 코드를 주고 문제를 푸는 유형이 출제되었다. C++의 언어 자체를 아주 자세하게 물어보는 문제가 많이 나왔다.

예를 들면 클래스 구조, 클래스의 크기 측정(sizeof), 생성자와 파괴자의 호출 순서, 어느 시점에 객체가 자동으로 사라지는지, cout << 함수1() << 함수2() 같은 형태에서 호출 순서 문제 등등... 

그니까 C++의 어려운 응용이 아니라, '기본기'를 '아주 자세하게' 물어보는 것이다.

C++를 오래 전에 마지막으로 공부한 사람은 반드시 공부를 하고 가야 할 것이다. 안그러면 손도 못댈 것... (내 얘긴가??)




NC TEST 결과 발표는 5일 뒤에 해 준다고 한다.


그리고 합격자에 한해 온라인 코딩테스트가 추가로 있다고 한다. 코딩테스트는 올해부터 추가되었다고 한다.

긍정적으로 생각하면 NC TEST 합격자 배수가 늘어날 것 같고... 나쁜 점은 절차가 하나 늘었다는 거...


어렵다 어려워.






(2018.11.08 추가) 직무적성 망쳤는데 합격!


(2018.11.15 추가) 코딩테스트는 그냥 면접 때 참고하려고 하는 것 같다. 못 본다고 면접 떨어지는 그런게 아닌 것 같다.

- 시간은 3문제에 1시간 30분. 난이도는 카카오/라인보다 훨씬 쉬웠다.

- 채점 기능 없이 코드 저장 제출 방식이라서, Test Case를 직접 만들고 반례를 찾아야 한다.

- 프로그래머스 사이트 이용해서 진행됨. 언어는 C/C++/Python

  1. 취준백수 2019.01.26 09:41

    소중한 정보 감사합니다~!!

  2. 2019.05.31 17:44

    비밀댓글입니다

    • 2019.06.19 07:48

      비밀댓글입니다

라인 플러스 2차 시험에 응시한 후기를 남겨본다.

강남 멀티캠퍼스 건물에서 시험을 봤다. 삼성에서 운영하는 컴퓨터학원(?)이라는 듯 싶다.


코딩시험 120분 + 필기 90분 시험을 보았다.





먼저 코딩은 4문제가 나왔다. 배점은 [20,25,25,30] (의미 없지않나?) 난이도는 중간 정도.

대회 수준까지는 아니지만 연습 없이 가면 한 개도 못풀 것 같다.


문제가 대략 기억나는것이

- infix 수식 계산 문제 (stack을 이용한 문제. postfix로 변환해서 계산하면 쉽다)

- 주어진 문자열의 substring 중에서, 조건에 맞는 것 중 가장 긴 길이를 구하는 문제 (greedy 접근법을 써야 한다)

- 3번 개같은거 말로 설명안됨 -_-; 여기서 시간 다 뺏김

- 최단 경로 찾는 문제인데, 조건이 살짝 성가심 (DFS 쓰면 됐을 것 같은데 시간이 없어서 못풀었다)





필기는 서술형 5문제 + 빈칸 채우기 3문제였다.

서술형은 주어진 코드의 출력 쓰기 문제와 암호학, 컴퓨터네트워크, Garbage Collection, Thread&Mutex 관련으로 나왔다.

빈칸 채우기는 이미 대부분의 코드가 주어진 상태에서 빈 칸이 뚫려있고 그 곳에 내용을 채우는 식이었다.

문제 주제로는 Max-Heap과 Tree Inorder, 그리고 Compare-and-Swap (CAS) 관련 문제가 나왔다.





정말 다행히도 필기는 대략 공부했던 내용이라 일단 채워넣긴 했는데

코드가 일반적인 버전이 아니고 공부했던거랑 다르게 생겨서 이해를 좀 해야 했다.


근데 코딩을 2문제밖에 못푼 건 너무 아쉽다. 3문제면 무난하게 합격할 것 같은데 불안하네..





(2018.10.25 추가) 다행히 붙었다. 면접 ㄱㄱ

  1. 2019.04.12 16:38

    비밀댓글입니다

    • 2019.04.15 17:56

      비밀댓글입니다

9.29(토)에 라인 1차 코딩테스트+필기테스트(온라인)를 봤다.

시험 시간은 코딩 2시간, 필기 1시간.




코딩테스트는 2시간 4문제로 주어졌다. (작년엔 5문제였을건데?) 문제 배점은 [10,30,30,30].

문제 난이도는 그다지 어렵지 않았다. 4문제 전부 Python 코드 30줄 이내로 풀 수 있는 수준?


상세 내용은 저작권이 있어서 대략 기억나는게...

- Stack을 이용해 방문 노드를 기록하고, 노드 재방문 시 프로그램 종료

- 주어진 쿼리 String을 파싱하고, 그에 따른 적절한 행동 하기


근데 위 2문제 풀고 서버가 다운돼서 코테가 취소됐다. 이런...




필기는 20문제가 주어졌는데, 1시간이 빠듯했다. 객관식, 단답형, O/X 세 유형으로 나왔다.


문제 유형별로 문제 스타일은

- 단답형: 주어진 코드의 결과가 무엇인가 / 주어진 코드에서 특정 함수는 몇 번 실행되는가 등등

- 객관식: 이 개념에 대해 맞는 설명을 모두 골라라 / 주어진 코드에서 빈 칸 뚫어놓고 여기에 적합한 코드를 골라라

- O/X: 주어진 설명이 맞는지 틀린지 골라라


출제 범위가 데이터베이스부터 네트워크와 컴퓨터구조까지 엄청 넓은데, 꽤나 깊이 있는 난이도로 물어봤다.

문제 하나하나가 수준이 높아서 바로 풀 수 있는 기본적인 내용은 하나도 없었던 것 같다. (결국 누가누가 구글 빨리 찾나)


결국 20문제 중 17문제밖에 못풀었는데 하필 코딩테스트가 취소돼서...

필기에서 걸러지지 않을까 매우 걱정이다. 3일 뒤에 결과 발표해준다는데, 부디 합격하길ㅎㅎ




(2018.10.05 추가) 붙었다~ 2차 시험을 공부해본다.

최근 서버가 자꾸 shutdown 되는 상황이 발생하여 로그를 살펴보았습니다.

사용중인 운영체제는 CentOS 7 64비트입니다.


cat /var/log/messages | grep 'System is powering down.'


불규칙적으로 서버가 꺼지는 현상이 발생했는데, 신기하게도 비정상 종료가 아니라 정상 종료(Shutdown)였습니다.

파워나 보드 등의 부품 문제로 인한 갑작스런 전원 종료는 아닌 것입니다.


누군가 리눅스를 일부러 끄고 있다는 생각이 들어 해킹을 의심했으나, 로그에서 다음과 같은 부분을 발견했습니다.


Jan 10 22:23:31 localhost systemd-logind: Power key pressed.

Jan 10 22:23:31 localhost systemd-logind: Powering Off...


놀랍게도 전원 버튼이 눌려 시스템이 꺼지고 있었습니다. 그런데 주변에 물어봐도 아무도 누른 사람이 없습니다.

이 상태로 한 2주 지나니까 이젠 시스템을 켜면 3초 안에 자동으로 꺼집니다. 그리고 다시 알아서 켜지고, 반복됩니다.


전원 버튼 고장으로 결론을 내릴 수밖에 없는 상황입니다.


그런데 이미 제 TS140은 구입 후 1년이 경과하여 무상 RMA 불가하고, 해외 수입 제품이므로 국내 유상 A/S도 불가능합니다.

TS140 Front Bezel을 구입하여 교체하면 되지만 일단 당장 서버를 살리고 봐야 하니 나중으로 미룹니다.



메인보드의 우측하단에 전면부 패널과의 연결 케이블이 있습니다.

이 케이블을 Plug-Out 하였더니 시스템이 꺼졌다 켜졌다 하는 일은 사라졌습니다.

아무래도 전원 버튼 고장이 확실해 보입니다.



그런데 전원 버튼 연결선을 뽑아버렸으니 컴퓨터를 켤 방법이 없어졌습니다.

전원 시그널 핀 2개를 드라이버로 쇼트 내면 켜지긴 합니다만, 이걸 매 번 옆커버 따서 할 수는 없는 일입니다.



그래서 꼼수를 써 봅니다. 부팅 시 F1을 눌러 CMOS를 들어가면 파워 설정이 있습니다.

이 중에서 '전원 케이블이 연결되면 자동으로 시스템이 켜지도록' 하는 옵션이 존재합니다.

이 옵션을 ON으로 하여, 전원선을 뽑았다 꽂으면 시스템이 켜지도록 하였습니다.



전원을 끄는 것은 문제가 없습니다. 리눅스에서 shutdown 명령어로 종료하도록 합니다.



일단 이렇게 조치하여, Front Bezel이 도착할 때까지는 운영이 가능하겠습니다.

'기록물 > 사용기' 카테고리의 다른 글

TS140 전원 버튼 고장 시 대처법  (12) 2017.01.13
SADES SA-713 구입 및 사용기  (0) 2014.02.19
맥북 하판 케이스 교체 후기  (15) 2013.10.14
시대를 거스르는 AquaPlayer  (23) 2011.05.20
  1. 난짬뽕 2017.02.14 01:45

    아쿠님 ts140 저도 사용중인데 일반 컴으로 사용중입니다
    혹시 해결하셔는지요 저도 아쿠님과 동일증상이어서 기존 스위치 파워전고 하드전구 전부 갈아습니다
    당연히 케이블도 갈아지요
    저도 이글을 읽고 스위치 문제인줄아아습니다 허나 2틀후 똑같은 증상이 시작되더군요
    분명 스위치쪽에서 강제 리부팅시도 합니다 꺼다켜다 허나 스위치에서 하는게 아니라
    메인보드쪽에서 하는것 같습니다
    저는 지금 메인보드 쇼트쪽에 무게을 실고 있습니다
    혹시나 아쿠님이 해결하셔나 해서 문의 드림니다
    혹시 해결하셔으면 답글부탁합니다

    • Acu 2017.03.16 19:26 신고

      제 경우는 전면부 패널 문제로 추정하고 있습니다. 케이블을 뽑으면 전혀 시그널이 들어오지 않습니다.
      윈도우 사용중이시면 전원 버튼 눌렀을 때 아무런 동작을 하지 않도록 설정하시고 사용하시는 것이 좋아보입니다.

  2. BOL 2017.02.24 16:51

    전 메인보드도 교체했는데
    동일증상입니다.
    해결되셨나요?

    • Acu 2017.03.16 19:27 신고

      전면부 패널과의 연결 케이블을 뽑아도 해당 문제가 발생하신다면 제 케이스와는 다른 문제라고 생각됩니다.
      로그를 살펴보셔서 왜 시스템이 꺼지는지 확인해 보셔야 할 것 같습니다.
      아무런 로그 없이 비정상 종료된다면 파워쪽도 살펴보시기 바랍니다.

  3. X3ny7h 2017.03.12 12:58

    저도 아쿠님과 동일한 증상이네요.
    몇달전에 구입한 gtx 1050 ti 때문에 전원이 딸려서 그런가싶어 그래픽카드 뽑고 내장으로 돌려도 마찬가지고
    램이나 그래픽카드 등등 모든 부품들 뽑았다가 다시 조립하니 한동안 잘 되다가 전원버튼 한번 누르니까 다시 랜덤으로 꺼졌다 켜지기를 반복하네요.
    혹시나 싶어 전면부 패널과의 연결 케이블을 뽑으니까 자동으로 시스템이 켜지는 증상은 사라지더군요.
    Front Bezel은 레노버 공홈에서 구입하시는건가요?
    이베이 검색해보니 중고매물이 종종 있긴하던데 가격도 그렇고 중고라 지저분할거 같아 영 찜찜하네요.
    일단 지금은 아쿠님 글보고 bios 들어가서 power on 으로 해놓고 쓰고 있긴한데 난짬뽕님 댓글보니 몇일있다 다시 증상이 시작될거 같아 난감하네요.

    • Acu 2017.03.16 19:31 신고

      안녕하세요. 제 사례와 같은 전원 버튼 문제로 보입니다.
      다만 전 서버 용도로 사용 중이어서 딱히 급한 사항이 아니다 보니 전면 패널은 아직 구매하지 않았습니다.
      한국 레노보에 정식으로 발매된 부분도 아니라서 부품 수급이 쉽지는 않아 보입니다.
      하지만 전면 패널 USB는 정상 동작하니 그냥 이대로 사용하시는 것도 괜찮을 것 같습니다.

  4. hawau 2017.03.23 08:45

    아... 이글을 이제서 봤네요.
    1년여간 잘 써오던 TS140이 갑자기 전원이 꺼지기 시작하더니,
    재부팅하면 2~3초후 자동종료를 반복하더라구요.

    며칠간 별별시도를 다해봐도 답이 안나와서,
    메인보드 고장으로 판단하고 matx 보드랑 non etc 램 주문해 놓은 상태입니다. ㅜㅜ

    부품 도착전에 다시한번 조립해 봐야겠습니다.
    결과는 다시 댓글 남길게요.
    좋은 정보 정말 감사합니다.

    • hawau 2017.03.23 09:49

      역시 전원버튼 고장이 맞은것 같습니다.
      부팅직후 전원케이블 커넥터 뽑아 버리니
      이상없네요.
      원인을 알고나니 앓던이 뽑은것 처럼 속 시원합니다.
      그나저나 전원버튼 부품을 어찌 구해야 할까요? ㅜㅜ
      다시 한번 감사드립니다.

  5. 우세바리 2017.03.23 17:38

    앞뚜껑 뜯어서 전원 버튼부 누르지 안고 툭~ 건드리니 저절로 켜지네요.
    그래서 전원 버튼에 연결된선 간섭때문인가해서 간섭안받게 벌려놓고 건드리니 일단 전원은 안켜지네요.
    오늘 이래놓고 종일 컴켜놓고 상황지켜봐야겠습니다.

    해결방법 찾은듯 합니다.
    http://www.ppomppu.co.kr/zboard/view.php?id=computer&no=463888&slave=off

    이 게시글 못봤으면 저도 해결법 찾기 어려웠을 것 같네요. 감사합니다.

    • Acu 2017.03.23 21:35 신고

      도움이 되셨다니 다행입니다. 올리신 글을 보아하니 플라스틱 부품 내부의 냉납일 가능성도 있어 보입니다.
      경험담과 해결하신 방법을 제시해 주신 점 감사합니다. 같은 문제를 겪고 계신 분들에게 큰 도움이 될 것 같습니다.

  6. hawau 2017.03.23 20:45

    오늘 죙일 고생끝에 해결 했습니다.
    모 게시판에 제가 올린글 링크 올립니다.
    참고하세요 ^^

    http://www.ppomppu.co.kr/zboard/view.php?id=computer&no=463903

    • Acu 2017.03.23 21:36 신고

      해결되셨다니 다행입니다. 부품값이 만만치 않아서 구매하기는 부담스러운 부분이 있어 보입니다.
      다만 저는 서버 용도로 사용 중이라 100% 정상 작동을 보장해야 해서 청소로는 안심할 수가 없을 것 같습니다.
      사용하시다가 동일 문제가 다시 발생하시면 또 방문해주셔서 후기 남겨주시면 감사하겠습니다.

맥(Mac OS X)에 Java 8 (JRE, JDK, jdk1.8) 설치하는 방법입니다.


기존에 Legacy Java 6(2015-001)을 설치했더라도 상관 없습니다.

두 Java는 서로 영향 없이 맥에 공존하게 됩니다.




1. 다운로드 및 설치

우선 말씀드릴 점은, 여러가지 사유로 인해 JRE보다 JDK를 설치하는게 일이 간단합니다.


어차피 Java 8 설치하시는 분들은 Eclipse 혹은 관련 개발을 위함이라 생각되기 때문에

JRE는 건너뛰고 JDK를 설치하도록 합니다. (JDK는 JRE를 포함하고 있습니다.)


http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html




2. 터미널 명령어 java를 jre1.8로 연결

현재 상태에서 터미널에 java -version 을 치면 두 가지 케이스로 나눠지는데

  첫째는, 아무런 Java를 설치하지 않아 설치 창이 튀어나오는 경우

  둘째는, java 1.6.0이 설치되어 있다고 나오는 경우


어쨌거나 두 케이스 다 Java 8과는 연결되지 않기 때문에 새로이 연결하도록 합시다.


본 작업은 /usr/bin 디렉토리 내의 파일을 변경하므로, rootless 기능을 꺼야 가능합니다.

끄는 방법은 구글링을 하시기 바랍니다.


ls /Library/Java/JavaVirtualMachines


위 명령어로 현재 설치된 jdk1.8의 폴더명을 알아냅니다.


sudo rm /usr/bin/java

sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/bin/java /usr/bin/java




3. 끝

연결이 끝났습니다.

java -version 을 쳐서 Java 1.8.0 버전을 확인하고 기분 좋아하도록 합니다.

StartSSL에서 인증서 발급 받는 방법은 해당 글에서 확인하시기 바랍니다.


- 본 글은 RedHat 계열 기준으로 작성되었습니다. Debian, Ubuntu는 내용이 다릅니다.

- 본 글은 CentOS 7 기준으로 작성되었으며, 아파치는 yum 기반 설치를 가정합니다.



1. 아파치 SSL 모듈 설치


yum -y install mod_ssl



2. 서버에 인증서 저장


mkdir /etc/httpd/conf/ssl


# /etc/httpd/conf/ssl 경로에 아래의 인증서 파일들을 저장합니다.

# 경로는 바뀌어도 상관 없습니다. 아래 4번 항목에서 해당 경로를 수정해 주면 됩니다.


# 넣어야 하는 인증서 관련 파일:

#     acu.pe.kr.crt (도메인 인증서) (StartSSL에서 제공하는 zip 파일에 동봉)

#     private.key (비밀키)


# 인증서 파일들에 대한 권한 설정

chown -R root.root /etc/httpd/conf/ssl

chmod -R 644 /etc/httpd/conf/ssl



3. 아파치 설정 파일(httpd.conf)에 SSL 모듈 로드, 옵션 파일 추가


vi /etc/httpd/conf/httpd.conf


# 아래 내용 추가 (빨간 부분을 서버에 맞게 수정)

LoadModule ssl_module modules/mod_ssl.so

Listen 443

<VirtualHost *:443>

    ServerName acu.pe.kr

    ServerAlias www.acu.pe.kr

    DocumentRoot /var/www/html

    SSLEngine on

    SSLCertificateFile /etc/httpd/conf/ssl/acu.pe.kr.crt

    SSLCertificateKeyFile /etc/httpd/conf/ssl/private.key

</VirtualHost>



4. 아파치 재시작


systemctl restart httpd


# 아파치 실행 시 비밀키(private.key)의 pass phrase를 물어봅니다.

# 비밀키를 생성할 때 입력했던 비밀번호를 입력하시면 됩니다.


# 아파치를 실행할 때마다 pass pharase를 입력하기가 귀찮으시면

# 인증서에 아예 비밀번호를 입력시킬 수 있습니다.

openssl rsa -in /etc/httpd/conf/ssl/private.key -out /etc/httpd/conf/ssl/private.key


# 단, 이렇게 되면 이제부터 개인키 파일이 외부로 노출되어서는 절대 안됩니다.

# 또한 작업하기 전의 원본 파일을 별도로 백업해 두시기 바랍니다. (갱신 시 필요)



5. SSL 적용 테스트


테스트 사이트: https://www.digicert.com/help/



*. 에러 발생 시


이런 메시지가 출력되면 실행에 실패한 것임:

Job for httpd.service failed because the control process exited with error code.


왜 실행이 실패했는 지 로그 확인:

systemctl status -l httpd


문제: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:443

이유: 다른 프로세스가 443 포트를 이미 사용중이므로, 해당 프로세스를 종료해야 함

해결: netstat -tunap | grep 443 명령어로 어떤 프로세스가 사용중인지 확인 후 종료

해결: 해결이 안되면 아파치 설정에 Listen 443이 중복 선언된 것, 따라서 주석 처리


문제: 홈페이지 접속 시 신뢰할 수 없는 인증서 메시지가 출력됨

증상: 서버의 인증서(crt)와 브라우저에 나타난 인증서의 지문(fingerprint)이 같지 않음

증상: Common Name(CA)에 이상한 랜덤 숫자가 표시됨

이유: 인증서가 아파치에 제대로 로드되지 않아 엉뚱한 인증서를 클라이언트에 제공함

해결: httpd.conf의 VirtualHost 443이 도메인을 잘 낚아채도록 수정


StartSSL 사이트에서 무료로 1년 사용 가능한 SSL 인증서를 발급받을 수 있습니다.



1. 사이트 접속 (https://www.startssl.com) 및 회원 가입


오른쪽 상단의 Sign-up을 눌러 회원 가입을 진행합니다.






StartSSL 사이트는 흔히 알던 아이디-비밀번호 방식이 아닌 이메일-인증서 방식입니다.


이메일을 입력하고 인증번호 단계를 거치면 브라우저에 인증서를 발급하여 저장해 줍니다.

인증서가 곧 ID와 같은 역할을 해 줍니다.



인증번호 입력 과정이 끝나면 브라우저에 인증서가 발급됩니다.

(주의: 포멧 등의 사유로 인증서가 브라우저에서 삭제되지 않도록 주의 바랍니다.)






Login Now 버튼을 눌러 로그인에 진입합니다.







2. 로그인


브라우저의 인증서를 통해 1차로 인증이 완료되면 OTP 단계에 진입합니다.


인증서를 선택하고 로그인을 시도하면, 이메일로 일회용 비밀번호가 발급됩니다.

이메일로 전송된 일회용 비밀번호를 입력하여 로그인합니다.







3. 도메인 인증 (소유권 주장)


SSL 인증서를 발급받기 전에, 먼저 해야 하는 단계가 있습니다.

인증서를 발급받고자 하는 도메인에 대한 소유권을 인증해야 해야 합니다.


도메인의 소유자만 해당 도메인에 대해 인증서를 발급할 수 있습니다.

제3자가 내 도메인 이름으로 인증서를 발급하고, 피싱 페이지를 만들 수도 있기 때문이죠.


Validations Wizard 버튼을 눌러 해당 메뉴로 진입합니다.






맨 위의 '도메인 인증'을 선택하고 진행합니다.







인증받고자 하는 도메인을 입력합니다.






해당 도메인을 소유하고 있는지를 도메인 메일 인증을 통해 처리합니다.


부득이하게 도메인 메일이 없거나, webmaster같은 이메일 계정이 없어서 인증이 어렵다면

또 다른 인증 방식인 website control validation을 통해 인증 가능합니다.


(주어지는 html 파일을 웹사이트 루트에 업로드하여 이를 검사하는 방식입니다.)







도메인에 대한 인증(소유권)이 완료되었습니다.

Order SSL 버튼을 통해 인증서 발급 단계로 진입합니다.







4. 인증서 발급


호스트네임을 입력합니다. 무료 인증서는 5개까지 입력 가능합니다.

첫 번째 줄에 입력된 호스트네임이 인증서의 common name이 됩니다.


일반적으로 www를 포함한 도메인과 포함하지 않은 도메인을 입력합니다. (총 2개)







SSL/TLS는 공개키 암호 방식을 사용하기 때문에 공개키비밀키를 생성해야 합니다.

더불어서 인증서에 추가 정보(회사명, 기관명, 회사 주소, 이메일 등)를 입력해야 합니다.


공개키와 추가 정보를 합친 파일을 Certificate Signing Request(CSR) 이라고 합니다.

이 파일은 우리가 손으로 직접 만들 수는 없고 Tool을 사용하여 생성해야 합니다.


비밀키를 먼저 만들고, 비밀키를 사용하여 공개키를 생성하게 됩니다.

일반적으로 비밀키는 랜덤한 값으로 만들기 때문에, 이 역시 Tool이 알아서 해 줄 것입니다.


리눅스에서는 빨간 글씨로 제공된 openssl 명령어를 통해,

윈도우 상에서는 제공되는 StartComTool.exe 프로그램을 통해 생성 가능합니다.


위 Tool을 사용한다면 비밀키(key) 파일과 공개키+추가 정보(csr) 파일이 생성됩니다.

비밀키 파일은 서버 내의 안전한 곳에 잘 보관하시고 유출되지 않도록 해야 합니다.


생성된 CSR 파일의 내용을 복사하여 홈페이지에 입력하고 다음 단계로 진행합니다.







인증서 발급이 성공적으로 완료되었습니다.







5. 인증서 다운로드


Tool Box 메뉴 최상단의 인증서 목록(Certificate List) 메뉴로 진입합니다.







목록에 2개의 인증서가 보일 것입니다 (Products 항목으로 구분하세요)

- 하나는 방금 만든 SSL 인증서입니다.

- 하나는 StartSSL 사이트에 로그인 할 때 사용하는 Client 인증서입니다.


SSL 인증서 우측의 Retrieve 버튼을 누르면 crt 인증서를 다운받을 수 있습니다.

작은 역삼각형 버튼을 누르면 pem 인증서를 다운받을 수 있습니다.




네, rEFIt 개발이 중단되고 rEFInd를 사용해야 하는 상황이죠.

맥에 설치, 혹은 제거하는 법을 알려드리겠습니다.


너무 쉬워서 굳이 글을 쓸까 싶기도 한데...

rEFInd는 맥 전용이 아니기 때문에 맥을 위한 매뉴얼만 깔끔하게 있으면 좋긴 하겠죠!




1. 다운로드

다음 주소로 들어갑니다: http://www.rodsbooks.com/refind/getting.html

맨 위의 A binary zip file을 다운로드 받으시면 되겠습니다.

받으시면 압축을 풀어주세요.




2. 설치

터미널을 열고 해당 폴더의 경로로 들어갑니다.

> cd /Users/계정이름/Downloads/refind*

제 경우에는 다운로드 폴더 안에 있기 때문에 그리로 찾아 들어갔죠.

그리고는 install.sh를 실행하고, 계정 비밀번호를 입력합니다.

./install.sh 

설치 끗!




3. 삭제

네... 터미널에서 아래 명령어를 입력하시면 됩니다.

sudo rm -r /EFI/refind







끝입니다. 헤헤

  1. joo 2015.02.12 16:44

    rEFLnd와 rEFLt 와 같은건가요?

    • Acu 2015.02.21 04:27 신고

      다릅니다. rEFIt는 맥 전용이고 rEFInd는 윈도우, 리눅스도 포함합니다.
      rEFIt를 개발하던 사람이 rEFInd를 새로 개발하면서 기존 t 버전을 중단시켰습니다.

  2. joo 2015.02.13 14:34

    왜저는 삭제가안될까요
    부팅할때마다 계속뜹니다;

    • 2015.03.02 15:30

      Finder장비에 들어가셔서 님의맥에 들어가시면 EFI라는 드라이브(파티션)이 있을검니다..그안에 있는 EFI폴더를 삭제 하고..나와서 EFI드라이브(파티션)을 추출하세요. 그럼 완벽히 삭제 됩니다

  3. 우야우ㅑㅇ 2015.02.24 00:39

    ./install.sh 가 안돼요;

  4. 호호 2015.02.28 20:53

    저도 제거 했는데 파티션만 사라지고 재부팅하면 계속 뜨네요 해결방법없어서 이전 타임머신 백업에서 불러오기 했습니다

    • 2015.03.02 15:34

      Finder장비에 들어가셔서 님의맥에 들어가시면 EFI라는 드라이브(파티션)이 있을검니다..그안에 있는 EFI폴더를 삭제 하고..나와서 EFI드라이브(파티션)을 추출하세요. 그럼 완벽히 삭제 됩니다

  5. dindin 2015.03.17 22:55

    계정 비밀번호는 뭘 얘기하는거죠??

  6. 맥등이 2015.05.08 22:51

    맥북 프로에 centos5.5 설치해서 rEFind 설치했는데 부팅시 요세미티 항목만 나오고 centos는 안나오네요 ㅜ.ㅜ 뭐가 문제일까요? ㅜㅜ

  7. 골치 2015.08.31 01:23

    0.9.0 설치했는데

    삭제가안되네요 난감..

    어떻게 삭제해야되나요

  8. TakeTheAir 2016.03.11 16:27

    삭제하다 안되서 diskutil로 EFI 마운트해서 직접 삭제했네요...
    터미널에서 diskutil list로 EFI 드라이브 확인하셔서 마운트하고 refind 폴더 찾아서 삭제하세요

  9. 눈보라호야 2017.09.01 14:14

    rm: /EFI/refind: No such file or directory

    리파인드 삭제를 알려주신데로 진행하는데 위와 같이 나오는데요
    이런경우는 어떻게 해야 하나요??

+ Recent posts