CMD에서 SSH,SCP 사용

에어그랩·2024년 2월 20일
0

개요

지금 진행중인 일에서 종종 원격 서버에 접속해서 그 서버에 붙어 있는 라즈베리파이에 접속하거나, 파일을 보낼 일이 생긴다.
내가 직접 관리하는 서버가 아니기 때문에 여러가지 프로그램을 설치하기는 좀 그래서, 그냥 터미널 상에서 명령을 처리하고 있는데 그럴 때마다 SSH, SCP 명령어를 검색하기 귀찮아서 정리해두려고 한다.

SSH, SCP 명령은 내 PC가 윈도우던 리눅스던 동일하게 쓸 수 있다.


SSH, SCP

1. SSH, SCP가 뭐냐

SSH : Secure Shell의 줄임말로 보통 리눅스에서 원격 접속하기 위해 사용되는 프로토콜
SCP : Secure Copy의 줄임말로 SSH를 기반으로 한 원격지와 파일을 주고 받을 수 있는 프로토콜

2. SSH 접속 방법

  • 가장 기본적인 명령

    ssh [사용자이름]@[호스트IP]
    ex) ssh root@192.168.10.41

  • 포트가 다른 경우

    ssh -p [포트번호][사용자이름]@[호스트IP]
    ex) ssh -p 2222 root@192.168.10.41

3. SCP 사용방법 (Local --> Remote)

!!! 명령 작성 후 인증서 등록하라고 하면 yes입력 하고, passwd 입력하라고 하면 입력해주면 됩니다.

  • (1) 단일 파일 전송

    명령 작성 방법 :: scp [파일명][remote user]@[remote ip]:[remote path]

    예시) scp /home/test/config.txt root@192.168.10.41:/home/pi
    설명) 로컬pc의 /home/test/config.txt 파일을 원격지의 /home/pi로 보내라

  • (2) 복수 파일 전송

    명령 작성 방법 :: scp [파일명1][파일명2] [remote user]@[remote ip]:[remote path]

    예시) scp config1.txt config2.txt root@192.168.10.41:/home/pi
    설명) 로컬pc의 config1, config2 파일을 원격지의 /home/pi로 보내라

  • (3) 디렉토리 전송

    명령 작성 방법 :: scp -r [폴더명][remote user]@[remote ip]:[remote path]

    예시) scp -r /home/test root@192.168.10.41:/home/pi
    설명) 로컬pc의 /home/test 폴더를 원격지의 /home/pi로 보내라

  • (4) 포트 변경

    명령 작성 방법 :: scp -P [포트번호][파일명] [remote user]@[remote ip]:[remote path]

    예시) scp -P 2222 /home/test/config.txt root@192.168.10.41:/home/pi
    설명) 로컬pc의 /home/test/config.txt 파일을 2222번 포트를 통해서 원격지의 /home/pi로 보내라

4. SCP 사용방법 (Remote --> Local)

  • (1) 단일 파일 가져오기

    명령 작성 방법 :: scp [remote user]@[remote ip]:[remote path][local path]

    예시) scp root@192.168.10.41:/home/pi/config.txt /home/test
    설명) 원격지의 /home/pi/config.txt 파일을 가져와서 /home/test에 넣어라

  • (2) 복수 파일 가져오기

    명령 작성 방법 :: scp [remote user]@[remote ip]:"[remote path1][remote path2]" [local path]

    예시) scp root@192.168.10.41:"config1.txt config2.txt" /home/test
    설명) 원격지의 config1.txt, config2.txt 파일을 가져와서 /home/test에 넣어라

    • 원격 경로의 파일들을 ""로 묶는다
  • (3) 디렉토리 가져오기

    명령 작성 방법 :: scp -r [remote user]@[remote ip]:[remote path][local path]

    예시) scp -r root@192.168.10.41:/home/pi/test /home
    설명) 원격지의 /home/pi/test 폴더를 가져와서 /home에 넣어라


결론

굳이 Putty나 FileZilla 설치하지 않고서도 필요한 경우에 간단하게 SSH로 사용할 수 있다.
내가 관리하는 PC가 아니라면 종종 써먹으면 편하다.


참고 자료

https://gr-st-dev.tistory.com/297
https://wlsvud84.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-scp-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%82%AC%EC%9A%A9%EB%B2%95-%ED%8C%8C%EC%9D%BC-%EC%A0%84%EC%86%A1-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C-%ED%8C%8C%EC%9D%BC-%EB%B3%B4%EB%82%B4%EA%B8%B0-%ED%8C%8C%EC%9D%BC-%EB%B0%9B%EA%B8%B0

profile
스마트팜, 스마트팩토리 개발자

0개의 댓글