vscode ftp 프로그램 사용(sftp/ftp)
vscode 무료 이면서 쓸만한데 제대로 되는것이 없어 참 불편한 프로그램 입니다. 하나 잘못 만나면 시간좀 들어가기도 하고 그렇습니다. 무료로 쓰면서 불만이 많다고 볼 수 있겠지만 사용한 시간 생각하면 글쌔요 라는 생각이 들기도 합니다.
ftp 프로그램 제대로 된것 만나는것도 운 입니다.
별표의 역활을 못하기 때문입니다.
소개해 드릴것은 sftp 입니다.
전 제 잘못인지 모르겠으나 sftp 설정은 못했습니다. ssh fs 프로그램을 통한 설정은 문제 없이 잘 되었는데 이 프로그램은 성공하지 못했습니다.
그런데 왜? 소개를 하나 싶을 텐데요. "Edit in Local" 을 통해서 다운로드 받아 편집하는 방식을 사용하면 함수에 마우스 올리면 도움말이 나오기 때문인데요. ssh fs는 이게 안됩니다.
ssh fs, sftp 이 프로그램 모두 폴더 형태로 보여줘서 편리한 점이 있습니다.
노트북 사용하는데 있어. ssh fs는 프로그램 종료 하고 다시 실행해야 하지만 sftp는 그렇지 않아도 됩니다.
물론 기다리면 되기는 하지만 확실하게 커넥션 시키기 위해선 ssh fs는 프로그램 종료 했다가 다시 실행하는 것이 좋습니다.
이 부분은 노트북 사용시 뚜껑 닫았다가 다음날 켰을때 절전 모드 들어갔을때의 상황입니다.
일반 PC 매일 재부팅 하는 경우는 관계 없습니다.
설치 방법인데요. 기존의 것을 지우라고 되어 있습니다.
최근 버전 설치하면 아이콘 안보이는데 저도 그래요.
SFTP - Visual Studio Marketplace
설정에 들어가는 옵션을 알고 싶으면 아래를 참고하세요.
Common Config · Natizyskunk/vscode-sftp Wiki · GitHub
vscode 다운그레이드 하면 기존의 설정 없어집니다. 그러니 sftp.json은 복사해서 다른 파일로 보관 하세요.
아래는 기본적인 설정입니다.
[
{
"name": "프로젝트1",
"context": "v1",
"host": "192.168.11.11",
"protocol": "ftp",
"port": 21,
"username": "user1",
"password": "pw123",
"remotePath": "/home/",
"uploadOnSave": true,
"downloadOnOpen": true,
"watcher":{ "files": "**/*", "autoUpload": false, "autoDelete": false },
"ignore": [ "**/.vscode/**", "**/.git/**", ".sftp.json", "**/node_modules" ]
},
{
"name": "프로젝트2",
"context": "p2",
"host": "192.168.11.12",
"protocol": "ftp",
"port": 21,
"username": "user2",
"password": "pw123",
"remotePath": "/home/",
"uploadOnSave": true,
"downloadOnOpen": true,
"watcher":{ "files": "**/*", "autoUpload": false, "autoDelete": false },
"ignore": [ "**/.vscode/**", "**/.git/**", ".sftp.json", "**/node_modules" ]
}
]
"name": "연결명칭",
"host": "IP",
"protocol": "sftp",
"port": 포트,
"username": "계정명",
"password": "비밀번호",
"remotePath": "/home/",
"uploadOnSave": true,
"ignore": [".vscode", ".git", ".DS_Store","**/node_modules"],
"algorithms": {
"kex": [
"ecdh-sha2-nistp256",
"ecdh-sha2-nistp384",
"ecdh-sha2-nistp521",
"diffie-hellman-group-exchange-sha256",
"diffie-hellman-group14-sha1",
"diffie-hellman-group-exchange-sha1",
"diffie-hellman-group1-sha1"
],
"cipher": [
"3des-cbc",
"aes128-ctr",
"aes192-ctr",
"aes256-ctr",
"aes128-gcm@openssh.com",
"aes256-gcm@openssh.com"
],
"serverHostKey": [
"ssh-rsa",
"ecdsa-sha2-nistp256",
"ecdsa-sha2-nistp384",
"ecdsa-sha2-nistp521"
],
"hmac": ["hmac-sha2-256", "hmac-sha2-512", "hmac-sha1"]
}
}
==== 2023.02.11 추가 - sftp 사용
위와 같이 경로를 C:드라이브로 해주는것이 맞습니다.
그리고 \\는 두개 해줘야 합니다. VSCODE에서 \ 한개만 있으면 빨간색으로 표시되어 알려 줍니다.
그렇지 않으면 퍼미션 오류가 발생합니다. SFTP는 개발자가 또 변경되어 확장프로그램 목록에서 가장 최근까지 업데이트 된것을 찾아서 설치 하면 됩니다.
정상적으로 설정이 되었다면 목록에서 open 터미널 아이콘 작은것 클릭하면 바로 터미널로 들어갑니다.
* 리눅스에서 pem 파일 만드는 방법
[root@pabburi ~]# ssh-keygen -t rsa -m pem
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:z6AzL4eU5Ncn74vSHc7BuuBD6KSNwstQCqEjy1fw1YY root@pabburi
The key's randomart image is:
+---[RSA 2048]----+
| |
| o |
|. . E o |
|.. o o . |
|= . = oS. . |
|+= . *.o+o = |
|+o . B++..oO o |
| o+ o ==+.o.= |
| oo oooooo. |
+----[SHA256]-----+
명령을 내리고 엔터만 계속 입력하면 되는데 이렇게 하면 비밀번호 없는 pem 파일이 생성 됩니다.
생성된 파일은 자신의 홈디렉토리에 .ssh 폴더에 생성 됩니다.
[root@pabburi ~/.ssh]# ll
합계 12
-rw------- 1 root root 562 12월 31 2020 authorized_keys
-rw------- 1 root root 1675 2월 11 21:24 id_rsa
-rw-r--r-- 1 root root 394 2월 11 21:24 id_rsa.pub
전 아래와 같이 하였습니다. 파일명을 변경하고 기존의 authorized_keys 필요할 수 있으니 백업
해외의 다른 예를 보면 id_ras 파일명 변경없이 그냥 사용하는 예도 있는데 저 처럼 변경 없이 그냥 사용해도 됩니다.
[root@pabburi ~/.ssh]# mv id_rsa id_rsa.pem
[root@pabburi ~/.ssh]# rsync -a authorized_keys bak_authorized_keys
[root@pabburi ~/.ssh]# cat id_rsa.pub > authorized_keys
이렇게 문제 없는지 테스트용 파일 만들어 설정하고 잘 되면. 비밀번호 있는것 만들어 사용하면 됩니다.
● 참고할것
vscode sftp ec2 아마존리눅스 사용시 vsftp 접속이 느린경우 > 개발관련