Useful

WinSCP를 이용해 Windows에서 Linux 가상 머신으로 파일 전송하기

TTOII 2022. 4. 13. 22:31
728x90

✔️ 다운로드 및 설치

WinSCP가 설치되어있지 않다면 여기에 접속해 다운로드 받고 설치한다.

 

✔️ 연결 설정

파일을 전송하고자 하는 Linux 가상 머신에 몇가지 설정을 해줘야 한다.

✔️ ip 주소 확인

ip a s

✔️ openSSH 활성화 

SSH 포트가 열려있어야 윈도우와 리눅스간 파일 교환을 할 수 있다.

SSH 서비스를 확인하고, 비활성화 되어 있다면 활성화 시켜준다. 

 

만약 시스템에 SSH 서비스가 설치되어 있지 않다면 다음 명령을 통해 설치해준다.
설치가 완료됐다면 설치된 패키지 목록을 확인한다.

sudo yum -y install openssh-server openssh-clients
rpm -qa openssh-clients
rpm -qa openssh-server

설치된 SSH 서비스를 활성화 시키고 상태를 확인한다.

sudo service sshd start
sudo service sshd status
[vagrant@controller ~]$ sudo service sshd start
Redirecting to /bin/systemctl start sshd.service
[vagrant@controller ~]$ sudo service sshd status
Redirecting to /bin/systemctl status sshd.service
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2022-04-13 03:19:48 UTC; 1min 1s ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 24576 (sshd)
   CGroup: /system.slice/sshd.service
           └─24576 /usr/sbin/sshd -D -u0

Apr 13 03:19:48 controller systemd[1]: Starting OpenSSH...Apr 13 03:19:48 controller sshd[24576]: Server listenin...Apr 13 03:19:48 controller sshd[24576]: Server listenin...Apr 13 03:19:48 controller systemd[1]: Started OpenSSH ...Hint: Some lines were ellipsized, use -l to show in full.

✔️ sshd_config 설정 파일 수정하기

root로 로그인 시에 권한 오류가 발생할 수 있으므로

/etc/ssh/sshd_config 파일을 root 권한으로 열어 PermitRootLogin 설정을 yes로 변경해준다.

 
sudo vi /etc/ssh/sshd_config

sshd_config 파일을 수정했으므로 sshd 서비스를 재시작해준다.

sudo service sshd restart

✔️ 방화벽 설정하기

가상 머신의 방화벽을 설정한다. 

우선 활성화 된 firewall 리스트를 확인한다.

sudo firewall-cmd --list-all

ssh가 활성화되어 있지 않다면 service를 추가한다. firewall을 reload 한 뒤 다시 한번 활성화된 firewall 리스트를 확인한다.

sudo firewall-cmd --add-service=ssh
sudo firewall-cmd --reload

 

✔️ WinSCP에서 가상 머신에 접속하기

WinSCP를 열면 로그인 창이 뜬다. [고급] 버튼을 클릭한다.

[인증] 탭에 가서 개인키 파일을 등록한다.

ssh-keygen을 이용해 생성하거나 ec2 인스턴스를 생성할 때 만든 키 페어의 개인키를 사용할 수도 있다.

[확인]을 누르고 다시 로그인 창으로 돌아가

  • 호스트 이름(H) → 처음에 확인했던 가상 머신의 ip 주소
  • 포트 번호(R) → SSH 프로토콜의 기본 포트는 22번이나 다른 포트 번호를 사용했으면 변경한다.
  • 사용자 이름(U) → 가상 머신의 Hostname 
  • 비밀 번호(P) → 가상 머신에 로그인할 때의 비밀번호 (비밀번호를 바꾼 적이 없다면 초기 비밀번호인 가상 머신 Hostname을 입력하거나 빈칸으로 둬본다.)

이후 [로그인] 버튼을 클릭하면 /home/vagrant/로 접속할 수 있다.

 

✔️ 파일 전송 테스트

실제로 파일 전송이 가능한지 테스트해보자

WinSCP_test 라는 파일을 만들어 다음과 같은 내용을 작성한 뒤 저장하였다.

이후 마우스 드래그를 통해 작성한 파일을 Linux 가상 머신으로 옮긴다.

WinSCP_test 파일이 Linux 가상 머신으로 전송된 것을 확인할 수 있다.

실제 가상 머신에 접속해 파일 전송이 되었는지 확인해보았다.

파일이 정상적으로 전송되었고 파일 내용도 정상적으로 출력되는 것을 확인할 수 있다.

728x90