본문 바로가기

SSH 터널링 (이전 완료) 이번 포스팅에서는 ssh 터널링에 대한 기초적인 설명과, 명령을 통한 실제 터널링에 대해 알아본다. ssh 터널링 터널링 이란것은 일종의 통신 프로토콜이다. 기존 패킷을 어떠한 터널링 프로토콜로 감싸 새로운 패킷을 만들어(캡슐화, Encapsulation) 터널 위에서 패킷을 옮기는 기법을 말한다. 이러한 기법들은 기존 네트워크가 아닌 새로운(또는 보여지면 안되는) 채널이 필요한 경우 사용되게 된다. 또한 갈 수 없는 곳까지의 도달을 터널링을 통해 도달할 수도 있다. 이러한 터널링에는 여러가지 프로토콜이 있다. (VPN, calico CNI에서 기본으로 사용하는 IPIP 프로토콜, ssh 터널링 프로토콜등) 이러한 터널링의 목적은 결국 기존 패킷을 새로운 패킷으로 감싸 기존에는 도달하지 못하던 곳을 도달.. 더보기
ssh프로토콜과, 파이썬 paramiko 대화형 쉘 ssh 터미널을 개발하며 공부하게된 ssh프로토콜에 관련한 기본적인 내용과, paramiko 모듈의 ssh 인터렉티브 쉘을 얻을 수 있는 invoke_shell()에 대한 팁이다. (다시 삽질하지 않으려고 하는 기록이다) 쉘 입력 출력에 대해 ssh를 사용하기 전 쉘이 어떻게 사용자의 입력을 받아들이고, 보여주는지에 대해 이해햐아 한다. 쉘은 사용자가 커널을 사용하기 위한 인터페이스다. 사용자는 엔터(\r)를 통해 쉘에 명령을 입력하게 된다. 좀 더 자세한 이해를 위해 사용자가 쉘에 ls명령을 입력하여 해당 명령의 결과를 표준 출력(터미널창, 모니터)로 받는 과정을 알아보자. 사용자는 표준 입력(키보드)를 통해 'l', 's', '\r(CR, 엔터)'라는 세가지 입력을 수행해야 한다. (명령을 한번에 복.. 더보기
Python paramiko 파이썬으로 ssh 프로토콜을 사용할 수 있는 paramiko 라이브러리에 대한 간단한 사용 예제 크게 단일 명령을 전송하는 예제와, 당연히 설치는 pip로 가능하다. pip install paramiko pip3 install paramiko 자세한 설명은 아래 Docs에 나와있다. 자료 Welcome to Paramiko’s documentation! — Paramiko documentation Welcome to Paramiko’s documentation! This site covers Paramiko’s usage & API documentation. For basic info on what Paramiko is, including its public changelog & how the proje.. 더보기
Git 시작하기 git 설치 공식 홈페이지에서 dmg 파일 설치 터미널을 이용해 설치 git 최초설정 git config 라는 도구로 설정 내용을 확인, 변경할 수 있고 git은 이 설정에 따라 동작한다. 이떄 사용하는 설정파일은 세가지다 /etc/gitconfig 파일: 시스템의 모든 사용자와 모든 저장소에 적용되는 설정이다. git config —-system 옵션으로 이 파일을 읽고 쓸 수 있다. (이 파일은 시스템 전체 설정파일이기 때문에 수정하려면 시스템의 관리자 권한이 필요하다.) 전체 시스템 ~/.gitconfig, ~/.config/git/config 파일: 특정 사용자(즉 현재 사용자)에게만 적용되는 설정이다. git config —global 옵션으로 이 파일을 읽고 쓸 수 있다. 특정 사용자의 모든 .. 더보기