2021년 1월 10일 일요일

서버 A 를 통해 서버 B 에 ssh

로칼에서 서버 B 에 직접 SSH 가 안되어
X) local ---> B

로칼에서 서버 A 에 SSH 한 후, 서버 A 에서 다시 서버 B 로 SSH 하는 경우
O) local ---> A ---> B

--------------------------------------------------------------------------------

$ cat ~/.ssh/config
Host A
    HostName 서버A의 이름 또는 IP 주소
    #Port 22
    User 서버A 의 사용자 이름
    #IdentityFile 비밀키 경로(로컬 PC)

Host B
    HostName 서버B의 이름 또는 IP 주소
    #Port 22
    User 서버B 의 사용자 이름
    #IdentityFile 비밀키 경로(로컬 PC)
    ProxyJump A                     # Host A 의 설정 사용
    #ProxyJump userA@A:portA # 서버 A의 계정정보 지정

# ProxyJump 가 안먹는 경우 ProxyCommand 사용 가능
Host B
    ProxyCommand ssh -W <서버B의 이름 또는 IP 주소>:<서버B의 포트> A
    User 서버B 의 사용자 이름
    #IdentityFile 비밀키 경로(로컬 PC)

--------------------------------------------------------------------------------

$ ssh B


참고: https://en.wikibooks.org/wiki/OpenSSH/Cookbook/Proxies_and_Jump_Hosts#Passing_Through_One_or_More_Gateways_Using_ProxyJump

https://qgp9.github.io/blog/2016/03/26/ssh-proxy-jump-host

2020년 11월 9일 월요일

WSL2 사용

다음 페이지를 따라서 실행
https://docs.microsoft.com/ko-kr/windows/wsl/install-win10

문제 1.
* 윈도우즈 10 빌드 버전이 낮아서 WSL2 를 사용 못함.
* 윈도우즈 업데이트를 회사가 관리해서 업데이트가 안 됨
해결 1.
위 페이지중 2단계에 나오는 Windows Update Assistant 를 선택하여 업그래이드 (이건 되네요).
- 기존 Windows 폴더가 Windows.old 로 남아서 디스크 용량을 차지함.
- 문제 없으면 '디스크 정리 기능'을 통해서 '이전 Windows 설치'를 지우면 될 듯 

문제 2.
* 회사에서 막고 있는지 Microsoft Store 에서 Ubuntu 20.04 다운로드가 안 됨
해결 2.
수동 설치를 따라 수동으로 다운로드 및 설치(이것도 되네요).

Ubuntu-20.04 를 디폴트 배포로 설정
>wsl -s Ubuntu-20.04

Ubuntu-20.04 의 디폴트 사용자 지정
>ubuntu2004 config --default-user <ubuntu 사용자명>

Ubuntu 에서 C 드라이브 접근
/mnt/c

탐색기에서 Ubuntu 접근(네트워크 드라이브 설정 가능)
\\wsl$\Ubuntu-20.04

 

2020년 10월 3일 토요일

MS 입력기의 일본어 단축키

MS 입력기 사용시

히라가나-영어 전환: Shift+CapsLock


더 많은 단축키

https://blog.naver.com/joju1200/50017535855

2020년 6월 7일 일요일

wol

#! /bin/bash

# name    mac    ip_or_broadcast
list=(
    'win    11-22-33-44-55-66    192.168.0.255'
)

wakeonlan() {
    local mac="$1"
    local ip="$2"

    echo "wake $2"
    echo -n $mac | sed 's/[-:]//g; s/.*/FFFFFFFFFFFF&&&&&&&&&&&&&&&&/' | xxd -r -p | nc -nuw 1 $ip 7

    exit 0
}

for l in "${list[@]}"; do
    li=($l)
    [ x$1 = x${li[0]} ] && wakeonlan "${li[1]}" "${li[2]}"
done

echo "unknown: $1"

2020년 5월 24일 일요일

vscode 에서 PlantUML 사용

Host: ubuntu 18.04

* java 와 grphviz 패키지 설치
$ sudo apt install default-jre graphviz

* vscode 다운로드
https://code.visualstudio.com/docs/?dv=linux64_deb

* vscode 설치
$ sudo apt install ~/다운로드/code_1.45.1-1589445302_amd64.deb

* vscode 실행
$ code

* PlantUML 플러그인 설치
vscode 의 왼쪽바에서 Extensions > 검색창에서 plantuml 입력 > PlantUML 2.13.11 선택(install)

* 다이어그램 표시
https://plantuml.com/ko/ 를 참고로 uml 을 작성
Alt + D로 Preview창 열기 (한 번 열면 입력할 때마다 자동으로 갱신)
또는
View > Command Palette... (Ctrl+Shift+P)
PlantUML: Preview Current Diagram  입력 및 선택

* 다이어그램 저장
View > Command Palette... (Ctrl+Shift+P)
PlantUML: Export Current File Diagram 입력 및 선택
png 확장자 선택  (그림 파일 이외의 확장자는 패키지 추가 설치가 필요한 것으로 보임)
Succeeded exporting diaram(s) 알림창의 View Report 를 선택하면 저장된 경로 표시

2020년 5월 15일 금요일

ssh escape sequnce

ssh 터널링에 관한 글

https://blogs.aca-it.be/ssh-port-forwarding/

escape sequence 입력법
~C 를 예로 들면:
shift 를 누른 상태로 ~ 와 C 를 연속으로 누름
~C 가 화면에 표시되는 경우는 인식이 안되는 상태이므로
엔터를 몇 번 치고 다시 입력

2020년 2월 13일 목요일

ubuntu 18.04 에서 gcc 6.5 사용

* Ubuntu 18.04.3 LTS 에 gcc, g++ 7.4 가 깔려있는 상태

* 6.5 버전 설치
sudo apt install gcc-6 g++-6

* 그룹에 추가
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6.5 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-6.5 10

* 그룹의 링크 재설정
sudo update-alternatives --config gcc
sudo update-alternatives --config g++

참고
https://askubuntu.com/questions/1087150/install-gcc-5-on-ubuntu-18-04