2025/11 10

보안 고려 사항

보안 고려 사항호스트와 우분투 가상머신 사이가 자유롭게 소통되는 환경은 편리한 만큼 보안 관리가 중요합니다. 특히 SSH, 파일 공유, 네트워크 포워딩을 활성화한 VM은 내부 개발 시스템이라도 외부 유출 위험이 존재합니다. 실제 운영 서버와 유사한 환경을 다루고 있기 때문에, 초기에 적절한 보안 기준을 세워두는 것이 장기적으로 안전하고 안정적인 개발 시스템을 유지하는 핵심입니다.● 계정 및 암호 관리강력한 사용자 비밀번호 설정VM 초기 설정에서 단순한 비밀번호 사용은 피해야 합니다.권장 기준12자 이상대문자, 소문자, 숫자, 특수문자 포함불필요한 사용자 계정 제거테스트용 계정이나 기본 guest 계정이 있다면 삭제합니다.sudo deluser 계정명● SSH 접근 보안SSH 키 인증 사용비밀번호 로그인보..

데이터·문서 공유 대안(Samba, 클라우드 등)

데이터·문서 공유 대안(Samba, 클라우드 등)호스트와 우분투 가상머신 사이에서 파일을 교환하는 방식은 다양합니다. 앞서 공유 폴더, Drag & Drop, SCP 등을 다뤘습니다. 이번 항목에서는 윈도우 기반 호스트와 우분투 VM 사이에서 보다 융통성 있게 파일을 공유할 수 있는 대안적 방식들을 소개합니다. 특히 기존 개발 워크플로에 맞춰 선택적으로 적용할 수 있는 점이 장점이며, 협업과 문서 중심 작업에 강점을 제공합니다.● Samba 공유(Windows 파일 공유 방식)Samba는 리눅스 환경에서 Windows 파일 공유 프로토콜(SMB)을 사용할 수 있도록 지원하는 서버 패키지입니다.Samba 폴더를 구성하면, 윈도우 파일 탐색기에서 네트워크 드라이브처럼 접근할 수 있습니다.설치sudo apt ..

로컬 웹 브라우저 연동

로컬 웹 브라우저 연동로컬 웹 브라우저 연동은 우분투 가상머신에서 실행한 웹 애플리케이션이나 API 서버를 호스트 PC의 브라우저에서 직접 확인하는 방식입니다. 이는 웹 개발 환경에서 가장 중요한 요소 중 하나이며, 서버 실행과 UI 테스트가 분리된 구조를 통해 더 실전적인 개발 흐름을 갖출 수 있습니다. Django, Flask, FastAPI, Node.js, PHP 등 대부분의 웹 프레임워크에서 이 방식으로 테스트를 진행합니다.● 핵심 개념우분투 VM에서 실행한 웹 서버에 대해호스트 브라우저에서 다음과 같이 접근합니다.http://localhost:포트번호또는 VM IP로 직접 접근하는 경우:http://가상머신_IP:포트번호이 방식이 가능하려면 VM과 호스트가 네트워크로 연결되어 있어야 하고, N..

Git을 활용한 코드 동기화

Git을 활용한 코드 동기화Git을 활용한 코드 동기화는 호스트와 우분투 가상머신 간 개발 프로젝트를 효율적으로 관리하는 가장 체계적인 방식입니다. 단순한 파일 이동을 넘어, 코드 버전 관리, 변경 이력 추적, 협업 구조까지 자연스럽게 포함하기 때문에 장기적인 개발 환경 구성에서 필수적인 전략이 됩니다. 또한 이 방식은 실제 서버 배포, CI/CD 파이프라인, GitHub 협업 과정과도 동일하여 학습 가치가 큽니다.● Git 동기화 방식의 핵심 개념Git을 활용하면 호스트와 VM이 동시에 같은 프로젝트를 안전하게 관리할 수 있습니다.구조 예시:GitHub (중앙 저장소) ↕호스트 Windows ↕Ubuntu VM즉, 프로젝트를 중앙 원격 저장소로 관리하고, 호스트와 VM은 서로 코드만 ..

SCP 및 SFTP 파일 전송

SCP 및 SFTP 파일 전송SCP와 SFTP는 호스트와 우분투 가상머신 간에 파일을 전송하는 안전하고 신뢰도 높은 방법입니다. 공유 폴더나 Drag & Drop보다 제어와 보안성이 뛰어나며, 서버 환경과 동일한 방식이기 때문에 실제 운영 서버로 확장할 때도 그대로 적용됩니다. 특히 터미널 기반 작업에 익숙해질수록 가장 강력한 파일 이동 수단으로 활용됩니다.● SCP와 SFTP 개념 방식 특징 사용 상황 SCP (Secure Copy)명령어 기반 파일 복사빠르게 파일 하나 또는 디렉터리 복사SFTP (SSH File Transfer Protocol)SSH 기반 파일 탐색 및 전송GUI 파일 탐색기나 터미널 기반 업·다운로드둘 모두 SSH 기반이기 때문에 SSH 접속 설정만 되어 있으면 별도 설치 없이..

클립보드 공유 및 Drag & Drop

클립보드 공유 및 Drag & Drop클립보드 공유와 Drag & Drop 기능은 호스트와 우분투 가상머신 간에 텍스트나 파일을 빠르게 주고받기 위한 가장 단순하면서도 직관적인 방식입니다. 개발 환경에서 명령어나 URL, 설정 파일 조각을 빠르게 붙여 넣거나, 간단한 이미지·문서 파일을 이동할 때 매우 유용합니다. 단, 안정성과 보안성 측면에서는 SSH·공유 폴더보다 낮기 때문에, 보조 기능으로 활용하는 것이 효율적입니다.● 기능 개요클립보드 공유: 호스트에서 복사한 내용을 VM에 붙여넣기, 또는 그 반대로 가능Drag & Drop: 파일이나 폴더를 마우스로 끌어 VM 화면에 놓으면 자동으로 복사우분투 환경에서는 이 기능이 VMware Tools 설치 여부에 좌우됩니다.● 활성화 방법VMware Work..

공유 폴더(Shared Folder)

공유 폴더(Shared Folder)공유 폴더는 호스트와 우분투 가상머신 사이에서 파일을 빠르고 간편하게 주고받을 수 있는 방법입니다. 특히 코드 파일, 문서, 이미지, 데이터셋 등을 자주 이동해야 하는 개발 환경에서 반드시 활용할 기능입니다. 별도의 네트워크 전송 명령 없이도 마치 같은 PC 안의 폴더처럼 사용할 수 있기 때문에 생산성이 크게 향상됩니다.● 공유 폴더의 핵심 개념호스트 PC에 특정 폴더를 지정하면VMware가 해당 폴더를 우분투 VM 내부에 연결해 줍니다.VM에서 접근하면 파일 읽기·쓰기·편집이 가능합니다.즉, 호스트에서 편집 → VM에서 실행이라는 개발 루틴이 매우 편리해집니다.● 설정 방법 (VMware Workstation 기준)VMware에서 해당 VM 선택Settings(설정)..

SSH 원격 접속과 VS Code 연동

SSH 원격 접속과 VS Code 연동우분투 가상머신을 개발 환경으로 사용할 때 SSH 연결은 가장 안정적이고 전문적인 접근 방식입니다. 단순히 터미널 접속용이라는 수준을 넘어, VS Code와 연동하면 VM 내부를 로컬처럼 개발할 수 있어 생산성이 비약적으로 향상됩니다. 특히 Python·Django·Node.js 개발에서 일반적으로 사용하는 구조이며, 클라우드 서버 연결 방식과 동일하기 때문에 학습 효과도 큽니다.● SSH 연결의 개념SSH(Secure Shell)는 네트워크를 통해 안전하게 리눅스 서버에 접속하는 방식입니다.호스트에서 다음 기능을 수행할 수 있습니다.우분투 VM 터미널 원격 접속파일 전송 및 작업root 또는 일반 사용자 계정으로 명령 실행VS Code 원격 개발 환경 연결즉, 가상..

포트 포워딩 설정

포트 포워딩 설정포트 포워딩은 NAT 환경에서 호스트가 가상머신 내부의 특정 서비스로 접근할 수 있도록 통로를 열어주는 설정입니다. 우분투 VM에서 Django, Flask, Node.js 같은 개발 서버를 실행하거나 MySQL, PostgreSQL 같은 데이터베이스에 연결할 때 반드시 필요합니다. VMware NAT 설정을 통해 포트를 연결하면, 호스트 혹은 동일 PC에서 브라우저나 도구로 VM에서 실행되는 서비스를 편리하게 테스트할 수 있습니다.● 포트 포워딩의 원리가상머신 내부 서비스는 기본적으로 외부에서 직접 접근할 수 없습니다.NAT 모드에서는 가상머신이 내부 IP(예: 192.168.XXX.XXX)를 받습니다.호스트가 특정 포트로 요청하면, VMware가 해당 요청을 VM 포트로 전달합니다.예..

네트워크 연결 방식

네트워크 연결 방식 이해우분투 가상머신을 개발 환경으로 사용할 때 가장 먼저 이해해야 할 요소가 네트워크 연결 방식입니다. 네트워크 설정은 호스트와 가상머신 간 통신 범위를 결정하며, 웹 서버 테스트나 DB 접속, 외부 인터넷 사용, 로컬 개발 환경 구축에 직접적인 영향을 줍니다. VMware는 크게 세 가지 네트워크 모드를 제공합니다. 각 방식의 특징과 활용 목적을 정리하면 다음과 같습니다.● NAT(Network Address Translation)가상머신이 호스트의 네트워크를 공유하되, 독립된 내부 IP를 사용하는 방식입니다.VM이 외부 인터넷에 접속할 수 있고, 호스트는 설정에 따라 VM 서비스에 접근할 수 있습니다.포트 포워딩을 통해 웹 서버, 데이터베이스 등 특정 포트만 개방하여 보안성과 유연..