반응형

최근들어서 클라우드가 각광받고 있기 때문에 AWS, GCP, AZURE 등등 클라우드 서버에 FTP 기능을 이용하여 파일을 사용하는 경우가 빈번하다.

이때, 대부분이 VSFTP를 설치한다. 또는 기호에 따라서 ProFTP를 설치하는 사람도 있다.

개인적으로 구지 FTP를 쓸려면 VSFTPD를 추천한다. 아무래도 보안에 좀 더 강점있다.

ProFTP는 맨날 보안업데이트를 하라고 클라우드 사에서 공지가 오는거 보면 그닥 보안면에서는

좋은 프로그램은 아닌것 같다.

 

다만, 설치하자마자 active 모드로 쓸수있어서 vsftpd 처럼 passive모드를 따로 설정안해줘도 되는 이점이 있다.

이것저것 다 귀찮으면 걍 SFTP를 쓰자 !!!!! 아래 내용을 잘 읽어주세요.

 

SFTP 설정
: 보안 이슈때문에 SSH 의 포트번호를 대부분 많이 바꾼다.
: 여기서는 22번 기본 SSH 대신 20122를 쓴다고 가정해보자.
※ 주의할 점은 SSH PORT 와 SFTP PORT가 모두 동일할 거라고 생각하지만 실상 둘은 다르다. 즉, SSH의 PORT를 변경하게 되면 SFTP PORT또한 별도로 설정을 진행해야한다.

우선 서버에 ROOT 로 접속해서 아래 설정을 변경하자.

$ sudo vim /etc/ssh/sshd_config
....

쭉 ~ 열어 보면 아래 내용에서 Port를 바꿀 수 있다.

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Port 20122  => 요놈으 ssh Port이다 / 이놈이 원래는 22로 셋팅되어있을 것이다. 이걸 바꾸면 됨.

#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

~~~~~ 스크롤해서 아래로 더 내려가보자.


# override default of no subsystems
Subsystem       sftp    /usr/lib/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
Match LocalPort 20122   => 요놈이 sftp의 Port이다. / 이놈을 위에 포트와 동일하게 하면됨. 그럼 20122로 사용가능!!
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp

이재 재시작 해볼까?

$ sudo /etc/init.d/ssh restart

 

외부 서버에서 접속방법

외부서버에서는 아래 명령어를 이용해서 간단하게 접속이 가능하다.

$ sftp -P 20122 계정명@원격지IP or HOSTNAME

이제 파일을 올리는 방법 및 다운받는 방법을 보자!!

  • put : 1개 파일 올리기용 명령어
  • mput : 여러개 파일 올리기 명령어
  • get : 1개파일 다운로드
  • mget : 여러개 파일 다운로드
  • ls : 접속한 원격지 파일 목록 출력
  • ls! : client 서버의 파일 목록출력 (local일수도 있음)
  • !{명령어} : 로컬서버에서 실행하는 명령어이다.  

대략 보면 vim 의 문법과 비슷한 부분들이 있다.

이제 손쉽게 sftp를 쓰세용.~~~

 

읽으시면 댓글 필수임요~~!

반응형

+ Recent posts