예제가 있는 상위 SFTP 명령 | 완전한 SFTP 가이드

게시 됨: 2022-07-19

SFTP란 무엇입니까? SFTP는 어떻게 작동합니까?

SFTP( Secure File Transfer Protocol )는 완전히 보안된 SSH 네트워크를 통해 파일에 액세스, 관리 및 전송하는 데 사용되는 가장 안전한 파일 전송 프로토콜입니다.

FTP 프로토콜에 대해 들어본 적이 있을 것입니다. SFTP는 FTP와 유사 하지만 더 안전합니다. SFTP는 주로 보안 전송을 통해 파일을 전송하고 액세스하는 데 사용되는 반면 FTP에서는 파일 편집, 삭제, 관리 및 전송과 같은 여러 작업을 수행할 수 있습니다.

SCP와 달리 SFTP는 사용자가 파일을 전송하는 것 외에 액세스 및 관리할 수 있도록 합니다. 그러나 이 튜토리얼은 SFTP에 관한 것입니다. 따라서 SFTP에서 수행할 수 있는 모든 작업을 안내해 드리겠습니다. 이 기사에서는 SFTP(Secure File Transfer Protocol)를 시작하기 전에 모든 사람이 알아야 하는 예제와 함께 가장 유용한 SFTP 명령을 안내합니다.

SFTP란 - SFTP 및 해당 명령에 대해 알아야 할 모든 것

SFTP 명령을 시작하기 전에 SFTP 를 사용하여 원격 서버에 연결하려면 원격 서버에서 권한이 열려 있어야 합니다. SFTP에 연결할 수 없는 경우 원격 호스팅 제공업체에 문의해야 합니다.

SFTP 연결 만들기

SFTP는 클라이언트-서버 모델이므로 SSH의 모든 인증 방법을 지원합니다. 무거운 파일을 전송하려면 SFTP를 사용하는 것이 좋습니다.

SSH 네트워크에서 SFTP 연결을 설정하려면 로컬 시스템에 SSH 클라이언트가 설치되어 있어야 합니다. 예를 들어, PuTTY 를 사용하여 로컬 서버에서 원격 서버로 SFTP 연결을 설정하고 있습니다.

  • SFTP에 연결하려면 PuTTY를 열고 IP 주소 또는 호스트 이름을 입력하여 로컬 서버에 연결합니다.

퍼티 구성

  • 사용자 이름과 암호를 입력하여 로컬 서버에 로그인합니다.

로컬 서버에 로그인

  • 이제 다음 명령을 사용하여 SFTP 연결을 설정할 수 있습니다.
 sftp remote_username@serverIP_or_hostname
  • 내 remote_username 및 IP 주소를 사용한 예는 아래 이미지를 참조하십시오.

sftp 연결됨

  • 원격 서버의 암호를 입력하고 Enter 키를 눌러 SFTP에 연결합니다. 성공적으로 연결되면 sftp> 프롬프트를 볼 수 있습니다.

경우에 따라 원격 서버가 기본 22 포트 수신을 중지합니다. 이 경우 아래 명령에 따라 연결을 설정하는 동안 수동으로 포트를 입력할 수 있습니다.

 sftp -p custom_port remote_username@serverIP_or_hostname

상위 SFTP 명령

  • SFTP에서 사용할 수 있는 수백 가지 명령이 있습니다. 대부분의 명령은 Linux 셸 명령과 유사할 수 있습니다. help 명령을 사용하여 사용 가능한 모든 SFTP 명령 목록을 가져올 수 있습니다.
 산출:

sftp> 도움말
사용 가능한 명령:
안녕 그만 sftp
cd 경로 원격 디렉토리를 '경로'로 변경
chgrp grp path 'path' 파일 그룹을 'grp'로 변경
chmod 모드 경로 '경로' 파일의 권한을 '모드'로 변경
chown own path 파일 'path'의 소유자를 'own'으로 변경
... ...
... ...
... ...
종료 sftp를 종료

  • pwd 명령을 사용하여 현재 원격 작업 디렉토리를 볼 수 있습니다.
 산출:

sftp> 암호
원격 작업 디렉토리: /home/Getintod

그 외에도 SFTP 명령 앞에 l (로컬)을 추가하여 로컬 서버에서 수행할 수 있습니다. 예를 들어, lpwd 명령을 사용하여 현재 로컬 작업 디렉토리를 봅니다.

 산출:

sftp> lpwd
로컬 작업 디렉토리: /home/learnher

ls 명령을 사용하여 원격 SFTP 내부에 있는 파일 및 디렉토리 목록을 봅니다.

 sftp> ls 홈/사용자/경로

이와 유사하게 lls 명령을 사용하여 로컬 서버 내부에 있는 파일 및 디렉토리 목록을 확인합니다.

 sftp> lls 홈/사용자/경로

디렉토리를 탐색하려면 cd 명령을 사용할 수 있습니다.

 sftp> cd 홈/사용자/경로

이와 유사하게 lcd 명령을 사용하여 로컬 서버의 현재 작업 디렉토리를 변경합니다.

 sftp> lcd 홈/사용자/경로

SFTP에서 파일 전송

get 명령을 사용하여 SFTP에서 파일을 쉽게 다운로드하거나 전송할 수 있습니다( 원격에서 로컬로 ).

 sftp> filename.zip 가져오기

다운로드한 파일은 현재 로컬 작업 디렉토리 에 저장됩니다. 또한 다음 명령을 사용하여 새 이름으로 파일을 다운로드할 수 있습니다.

 sftp> 파일 이름.zip 가져오기 Newname.zip

경우에 따라 다운로드 또는 전송이 실패하거나 중간에 중단될 수 있습니다. 아래 명령에 따라 다운로드를 재개할 수 있습니다.

 sftp> 파일 이름.zip 가져오기

이제 원격 서버에서 로컬 서버로 파일을 전송하는 명령을 알게 되었습니다. 또한 put 명령을 사용하여 로컬 서버에서 원격 서버로 파일을 전송할 수도 있습니다.

 sftp> 파일 이름.zip을 넣습니다.

put 명령은 파일만 전송하므로 로컬 서버에서 원격 서버로 디렉토리를 전송하려면 명령에 재귀적 -r 인수를 추가할 수 있습니다.

 sftp> put -r 디렉토리 이름

마찬가지로 중단된 파일을 다시 시작하려면 아래 명령을 사용합니다.

 sftp> 파일 이름.zip을 평판

get 명령에서 사용한 put 명령의 모든 인수를 사용할 수 있습니다.


기타 유용한 SFTP 명령

알고 있어야 하는 몇 가지 다른 중요한 SFTP 명령이 있습니다. 그러나 Linux 셸 명령을 알고 있다면 SFTP에서 일부 Linux 셸 명령을 사용할 수도 있으므로 쉽게 사용할 수 있습니다.

  • 원격 서버에 대한 정보를 얻으려면:
 sftp> df
  • 원격 서버에 있는 파일의 파일 권한을 변경하려면 다음을 수행하십시오.
 sftp> chmod 644 파일 이름.php
  • 원격 서버에 새 디렉터리를 만들려면 다음을 수행합니다.
 sftp> mkdir 디렉토리 이름
  • 원격 서버에서 파일을 삭제하려면:
 sftp> rm 파일 이름.php
  • 원격 서버에 있는 파일의 이름을 바꾸려면 다음을 수행하십시오.
 sftp> filaname.php의 이름을 new_filename.php로 바꿉니다.
  • 원격 서버에서 빈 디렉토리를 삭제하려면:
 sftp> rmdir 디렉토리 이름
  • 원격 파일의 그룹 소유자 변경:
 sftp> chgrp 그룹 ID 파일 이름
  • 원격 서버(루트)에서 파일 소유자 변경:
 [root@test pwd]# chown user_id 파일 이름
  • 현재 SFTP 버전을 확인하려면:
 sftp> 버전
  • 파일/디렉토리(루트)의 그룹 및 소유자를 변경하려면:
 [root@test pwd]# chown 사용자 이름:그룹 이름 파일 이름.php
[root@test pwd]# chown 사용자 이름:그룹 이름 디렉터리 이름
  • 디렉토리 내의 모든 내용을 다른 디렉토리로 이동합니다(디렉토리 내의 모든 파일 및 디렉토리를 한 수준 위로 이동).
 sftp> mv -v 디렉토리 이름/* ~/홈/사용자/경로

이 외에 내용이 들어 있는 디렉토리는 삭제할 수 없습니다. 또한 SFTP는 사용자가 새 파일을 만드는 것을 허용하지 않습니다. 그러나 원하는 경우 파일을 삭제할 수 있습니다.

SFTP 연결을 닫으려면 bye 또는 quit 명령을 입력하고 Enter 버튼을 눌러 로컬 서버로 돌아갑니다.

이제 SFTP 명령과 SFTP 명령 사용에 대한 강력한 지식을 얻으셨기를 바랍니다. 그 외에도 이제 SFTP에서 로컬 서버로, 로컬에서 SFTP 서버로 파일을 쉽게 전송하거나 다운로드할 수 있습니다.