시큐어셀은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 프로토콜로 기본 22번 포트를 사용하여 통신합니다.
우분투 서버에 SSH서버를 설치후 사용가능합니다 (/etc/ssh 디렉토리 안에 sshd_config 파일이 있어야함)
서버와 연결할 로컬의 폴더를 생성후 vscode에서 F1을 누르고 검색창에 sftp를 입력합니다.
sftp:config 선택시 sftp.json 파일이 열립니다.
{
"name": "test",
"host": "111111.111.111",
"protocol": "sftp",
"port": 22,
"username": "aaa",
"password": "aaa",
"remotePath": "/home/www/test",
"uploadOnSave": false,
"downloadOnOpen": true,
"ignore": [".git", ".eslintrc.*", ".vscode", ".DS_Store", "node_module", "node_modules"]
}
name: 연결에 대한 설명
host: 연결대상(서버)의 IP주소
protocol: sftp
port: 22
username: 연결대상(서버) 사용자이름
password: 연결대상(서버) 사용자 비밀번호
remotePath: 연결대상의 파일 경로
uploadOnSave: 로컬에서 변경사항 저장시마다 동기화 할건지 여부
downloadOnOpen: 서버변경사항 있으면 vscode열때 동기화 할건지 여부
ignore: 무시할 폴더 및 파일들
F1 => sftp:List all에서 불러오고 싶은 파일을 선택하거나
모든 파일을 불러오고싶다면 맨위의 . choose current folder 클릭
또는 sftp:Sync Remote -> Local로 동기화한다.
로컬에서 파일 변경 후 저장시 no such file 오류 발생한다면
=> C:/Users/"계정명"/.vscode/extensions/liximomo.sftp-1.12.9/node_modules/ssh2-streams/lib/sftp.js
경로에서 338번 라인
if (code === STATUS_CODE.OK) {
// 이 부분을
if (code === STATUS_CODE.OK || code === STATUS_CODE.NO_SUCH_FILE) {
// 이렇게 변경하고 저장 후 다시 로드해주세요