Author: byun1114

  • 이게 되네? 클로드 MCP 미친 활용법 27제

    MCP라는 단어를 많이 보았다. 그래서 어떤 것이지 알고 싶어 이 책을 빌렸다.

    • 사무 자동화 측면에서 보면 좋은 내용이다.
    • 딥러닝의 한계점인 blackbox가 더 강조된다. 어떻게 동작하는지 모르겠지만, 일단 되는 그런 느낌.
    • 이런 AI가 도입될 수록 중요해지는 것은 비판적 사고라고 생각한다.
    • 이메일이나 폴더 정리가 가능하다고 한다. 실수로 놓치는 일이 없을 것이라고 어떻게 100% 확신할 수 있을까? 스팸 필터도 놓치는 스팸 메일이 있다는 것을 명심해야 한다.

    AI 시대에 가장 중요한 것은 Something Else 혹은 Something NEW를 생각해내는 능력이다.

    월드워Z에서도 10번째 사람의 역할을 강조하지 않았던가.

  • token을 이용한 접속 제한

    투자 포트폴리오를 파이 차트로 만들었다. 보고 있으면 기분이 좋다. 하지만 다른 사람이 보는 것은 싫다. IP기반으로 차단을 하고 있다. 그런데 회사 내라면 모든 PC에서 가능하다. 코파일럿을 이용해서 검색했다. 쉽고 간단한 방법을 선택해서 적용했다.

    http 블록에서 map 을 이용해서 token 이 있으면 allow_access 변수에 1, 아니면 0을 지정한다.

    map $arg_token $allow_access {
    		default 0;
    		"my_token" 1;
    }

    서버 블록에서 다음과 같이 설정한다. 토큰이 없는 0의 값이면, drop 효과가 있는 444 응답 코드를 적용했다.

    location /asset/ {
    	if ($allow_access = 0) {
    		return 444;
    	}
    }

    이러면 다음과 같이 하면 접속할 수 있다.

    https://www.welovedoctor.com/asset/index.html?token=my_token

    index.html 파일에는 png 파일을 볼 수 있는 내용이 있다. 하지만 화면에서 그림 파일을 볼 수 없다.

    다음과 같이 index.html 파일의 내용을 수정한다.

    <img src="asset.png?token=my_token">

  • shiny에서 글꼴 지정

    역시 코파일럿과 함께.

    shiny는 /srv/shiny-sever가 기본 디렉토리이다. 그 하위에 www라는 폴더를 만든다.

    글꼴 파일을 복사하고, 다음과 같은 css 파일을 생성한다.

    font-face {
      font-family: 'D2Coding';
      src: url('D2Coding-Ver1.3.2-20180524.ttf') format('truetype');
      font-weight: normal;
      font-style: normal;
    }
    
    body {
      font-family: 'D2Coding', monospace;
    }

    app.R에서 다음 부분을 추가한다.

    ui <- navbarPage(
    ...
    header = tagList(
      includeCSS("www/style.css")
    ),
    ...
  • AbuselPDB로 신고하기

    nginx의 error.log 에 있는 ip 접근은 raw filter를 이용해서 효과적으로 걸러지고 있는 것 같다.

    abuselPDB에 이 ip를 신고하는 과정을 구현했다. 역시 코파일럿 도움으로 말이다.

    아래가 샘플 코드이다.

    # POST the submission.
    curl https://api.abuseipdb.com/api/v2/report \
      --data-urlencode "ip=127.0.0.1" \
      -d categories=18,22 \
      --data-urlencode "comment=SSH login attempts with user root." \
      --data-urlencode "timestamp=2023-10-18T11:25:11-04:00" \
      -H "Key: YOUR_OWN_API_KEY" \
      -H "Accept: application/json"

    python에서 하기 위해 다음과 같이 한다.

    url = "https://api.abuseipdb.com/api/v2/report"
    headers = {
    	"Key": abuseipdb_key,
    	"Accept": "application/json"
    }
    data = {
    	"categories": "19"
    }
    params = {
    	"ip": input_ip,
    	"comment": "SSL_do_handshake() failed"
    }
    response = requests.post(url, headers=headers, data=data, params=params)