프로그래밍/윈도우 프로그래밍

chrome(크롬) : 안전한 연결 설정중 해결 방법

jinkwon.kim 2018. 8. 8. 01:28
728x90
반응형

 chrome(크롬) : 안전한 연결 설정중 해결 방법

How to solve that Chrome keeps saying Establishing Secure Connection

(아름답게 Chrome을 사용하자)



1. 원인(cause)

  - 윈도우 서비스 중 Cryptographic Services 가 문제

  - 뭐하는 녀석인가?

다음 세 가지 관리 서비스를 제공합니다. Windows 파일의 서명을 확인하고 새 프로그램 설치를 허용하는 카탈로그 데이터베이스 서비스, 신뢰된 루트 인증 기관의 인증서를 컴퓨터에 추가 및 제거하는 보호된 루트 서비스, Windows 업데이트에서 루트 인증서를 검색하고 SSL 같은 시나리오를 사용하도록 설정하는 자동 루트 인증서 업데이트 서비스. 이 서비스를 중지하면 이러한 관리 서비스가 제대로 작동하지 않습니다. 이 서비스를 사용하지 않으면 해당 서비스에 명시적으로 의존하는 모든 서비스가 시작되지 않습니다.

  - 기존에 추측 되었던 원인 : 

    1) 방화벽은 절때 아님, 모두 꺼놓고 해도 아무런 소용이 없음, 

    2) 백신 절때 아님

  - 결론Cryptographic Services 가 문제 여서 이걸 종료 시키면 된다.(본 글은 4가지 방법을 제시 합니다)


    해결 방안 1) 신규 윈도우 사용자 계정 생성을 통한 chrome 정상화 (완벽한 해결 방법)

     -> Window Pro이상 만 가능합니다.

    해결 방안 2) Cryptographic Services을 로컬 시스템 계정으로 변경 (간편)

     -> Window Pro / WIndow Home 가능

    해결 방안 3) Cryptographic Services 서비스 강제 종료 bat파일 실행 (한번 사용)

     -> Window Pro / WIndow Home 가능

    해결 방안 4) 시작 프로그램으로 crypt_svc를 자동으로죽이는 bat 등록 ( 영구 사용)

     -> Window Pro / WIndow Home 가능

  - 다음은 문제가 되는 서비스 입니다.

    (보는 법 : 윈도운 키(window key) + s -> "서비스" 검색)

    1) 서비스 시작 유형을 사용 안함으로 설정 한다 해도, 자동으로 재시작 되어 효과가 없습니다. 


2. 해결 방안 List(solution)

  - 그동안 기존애 해결 방안 2-4) 까지의 임시 방편의 해결 방안을 제시 하였습니다.

    그러나 2018-09-07일 구글 그룹스에서 Henry C님께서 가장 완벽한 해결책을 제시해주셔서 공유합니다.

    "최초 윈도우 설치에 사용되는 계정만 문제가 발생하는 것으로 추정 된다고 하십니다."

  - 아직 명확한 해결 책은 안나왔 지만 해결 방안 1)이 가장 좋다고 판답 됩니다

  - 윈도우10 home이용자 분께서는 해결 방안 3)번을 사용 하시면 되십니다.

     (해결 방안 3) 시작 프로그램으로 crypt_svc를 자동으로죽이는 bat 등록)


  해결 방안 1) 신규 윈도우 사용자 계정 생성을 통한 chrome 정상화 (완벽한 해결 방법)

    - 구글 그룹스에서 2018-09-07에 Henry C님께서 제시하신 해결책을 구체화 한것 입니다.

     1) 컴퓨터 관리 실행 


     2) 새 사용자 추가 



     3) 신규 계정 추가

       (1) 신규 계정 정보를 입력한다.



       (2) 신규 계정이 이미 만들어 졌기에 닫기를 누른다.


       (3) 신규 계정이 추가된것을 확인 한다.


     4) 신규 계정에 Administrator 그룹 추가

       (1) Administrator 그룹을 추가 하기 위해 추가 하기를 선택 한다.


       (2) Administrator 그룹을 추가를 위한 그룹 검색


       (3) Administrator 그룹을 검색 결과 확인



     5) Administrators 그룹이 추가 되었을 확인 후 적용 및 확인

     6) 신규 계정으로 로그이 후 크롬 즐기기!!!!




* 편법 해결 방안들 *

  해결 방안 2) Cryptographic Services을 로컬 시스템 계정으로 변경 (간편)

   - 구글 그룹스에서 발췌한 것을 한것입니다.

(1). 윈도우 서비스 들어가기

   -  윈도운 키(window key) + s -> "서비스" 검색

(2). Cryptographic Services 찾은 뒤 우클릭에서 속성 들어가기
(3). 로그온 탭에서 "로컬 시스템 계정" 체크
(4). 확인
(5) 서비스 중지 후 시작 또는 시스템 재시작
    - 이 방법이 안될시 해결 방안 4) 방법으로하시면 되십니다. 
     해결 방안 4)은 편법이긴 하나 동작을 100% 보장 합니다.




    - 해결 방안 2) 적용시 발생하는 문제점

       윈도우에서 "서비스", "로컬 보안 정책"을 제어 하고자 할때 앱 보호가 발생합니다.

        원복 방법은 4번 바로가기



  해결 방안 3) Cryptographic Services 서비스 강제 종료 bat파일 실행 (한번 사용)

    - 귀찬아서, bat 파일로 만들어 버림 (관리자 권한으로 실행이 된다)

      (this bat file is to kill Cryptographic Services by administrator authority)

      (1) bat 파일(반복 실행 : Repeat execution )

kill_crypt_svc.bat

      (2) bat 파일(한번 실행 : one time execution )    

onetime_kill_crypt_svc.bat

    - kill_crypt_svc.bat 파일(반복 실행 : Repeat execution) 코드

@ECHO off

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"


if '%errorlevel%' NEQ '0' (

    echo 관리 권한을 요청 ...

    goto UACPrompt

) else ( goto gotAdmin )


:UACPrompt

    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"

    set params = %*:"=""

    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"

    rem del "%temp%\getadmin.vbs"

    exit /B

:gotAdmin


:loop

for /f "tokens=2" %%a in ('sc query ^| findstr CryptSvc') do set _CmdResult=%%a

if %_CmdResult% == CryptSvc (

:: secho kill CryptSvc

sc stop CryptSvc

)

set _CmdResult=" "

:: 한번 실행 시 아래 두줄 제거됨

timeout 1 > NUL  

goto :loop

:end


    - 실행 결과 (result of execution)

      -> CryptSvc is Stopped


  해결 방안 4) 시작 프로그램으로 crypt_svc를 자동으로죽이는 bat 등록 ( 영구 사용)

    - 반복 실행(kill_crypt_svc.bat)하는 프로그램을 호출 하는 스크립트(auto_kill_crypt_svc.vbs를 

       시작 프로그램으로 등록 

       (register script program(auto_kill_crypt_svc.vbs) that calling kill_crypt_svc.bat)

    - 윈도운 키(window key) + r -> shell:startup 다음 auto_kill_crypt.svc.vbs 파일을 넣는다

auto_kill_crypt_svc.vbs

    - auto_kill_crypt_svs.vbs 코드(code)

Set objShell = CreateObject("Shell.Application")

objShell.ShellExecute "c:\kill_crypt_svc.bat", "/c lodctr.exe /r" , "", "runas", 0

    - 해결 방안 4) 적용 시 발생하는 문제점  

  - kill_crypt_svc.bat 파일은 내부에서 실행 권한을 Administrator로 강제로 올려서 실행하기 때문에 

        윈도우에서 "서비스", "로컬 보안 정책"을 제어 하고자 할때 앱 보호가 발생합니다.

        원복 방법은 4번 바로가기


3. 해결 방안 4)번 항목에 대한 테스트 결과 (result of test)

  - 정상적으로 모든 웹 접근이 가능하다.(Access to all sites)

  - MS에서.. edge 쓰게 할려고 꼼수 쓴듯....윈도우에 포함된 ie, edge 는 너무너무 잘됨~

    (edge and i.e is always very well work , I thought that ms hate goole)


4. 원복 방법 

 해경 방안 2)에 대한 복구 방법

  - 내용이 길어 다음 포스트 참조 부탁 드립니다.

    https://doitnow-man.tistory.com/106


 해결 방안 4)에 대한 복구 방법

  - 해결 방법은 2가지가 존재 합니다. 

    1)  시작 프로그램에서 "auto_kill_crypt_svc.vbs"를 삭제 후 재시작 (추천)

      - 윈도운 키(window key) + r -> shell:startup 하신 후 auto_kill_crypt_svc.vbs 를 삭제 합니다

    2) "사용자 계정 컨트롤: 관리자 승인 모드에서 모든 관리자 실행"을 상용 안함으로 변경 (비 추천)

      - 수정 절차

        (1) (window key) + s -> 로컬 보안 정책 -> 로컬 정책 -> 보안 옵션

             -> "사용자 계정 컨트롤: 관리자 승인 모드에서 모든 관리자 실행"을 상용 안함으로 변경

        (2) 윈도우 재 시작

      - 유의 사항 : 사용 안 함으로 구성하면 보안 센터에서 운영 체제의 전체 보안이 낮아 집니다


5. 요약 (summary)

  1) 윈도우 10 pro이상 사용자 분께서는 해결 방안 1)을 추천

     윈도우 10 home 사용자 분께는 해결 방안 4)을 추천 드립니다.

  2) 해결 방안 4) 상용법 요약

    (1) Cryptographic Services 서비스 강제 종료(kill_crypt_svc.bat)을 "C:\"에 저장)

       (save kill_crypt_svc.bat to"C:\")

kill_crypt_svc.bat

    (2) 프로그램 시작에 등록 

      윈도운 키(window key) + r -> shell:startup 다음 auto_kill_crypt.svc.vbs 파일을 넣는다

      (register script program(auto_kill_crypt_svc.vbs) that calling kill_crypt_svc.bat)

auto_kill_crypt_svc.vbs

 

728x90
반응형