◎ 4단계: NAT 네트워크 구성 이제 NAT하려는 네트워크를 구성하면됩니다. 10.10.10.0/24 네트워크를 NAT하기 위해 아래 명령을 실행합니다. NAT-NETWORK-NAME은 원하는 이름으로 지정합니다. 저는 "NAT-Switch-Outside"라고 했습니다.
WSL2 게스트VM에서 SSH나 HTTPS같은 특정 서비스 포트를 오픈하더라도 로컬이나 외부에서 접속이 불가하기 때문에 게스트VM에서 오픈한 포트에 접속하기 위해서는 윈도우에서 포트포워딩(portproxy) 설정을 해줘야합니다. 아래는 포트번호를 입력받아 포트포워딩을 설정해주는 배치(batch)파일입니다. 패치파일은 관리자모드에서 실행하면됩니다.
[코드설명] > 2번, 3번 메뉴의 경우 원하는 포트를 지정할 수 있는데, 한개만 입력해도 되고 콤마(,) 구분자로 다수의 포트 입력이 가능합니다. > 재부팅 되더라도 입력한 설정은 유지되나 게스트VM IP가 변경된다면 다시 설정해줘야 됩니다.
[배치파일]
@echo off
SETLOCAL EnableExtensions
:menu echo 1. portproxy show echo 2. portproxy add echo 3. portproxy del set /p choice=choice 1 or 2 or 3: if %choice%==1 goto subcode1 if %choice%==2 goto subcode2 if %choice%==3 goto subcode3 echo Invalid input. Please enter 1 or 2 or 3. goto menu
:subcode1 netsh interface portproxy show v4tov4 goto end
:subcode2 cd /d C:\ set hostip= for /f "tokens=2 delims= " %%a in ('bash.exe -c "ifconfig eth0 | grep 'inet '"') do set hostip=%%a set found=no
if "%found%"=="yes" ( set hostip=%hostip:~0% ) else ( echo The Script Exited, the ip address of WSL 2 cannot be found exit /b 1 )
set /p ports=Enter port number to use(multiple ports you want to forward separated by comma): set "addr=127.0.0.1" set "output=" for /f "tokens=1 delims= " %%a in ('netsh interface portproxy show v4tov4 ^| findstr "ipv4"') do set output=%%a
if not "%output%"=="" (
for %%i in (%ports%) do ( netsh interface portproxy delete v4tov4 listenport=%%i listenaddress=%addr% netsh interface portproxy add v4tov4 listenport=%%i listenaddress=%addr% connectport=%%i connectaddress=%hostip% ) echo "delete & add suceessfully" netsh interface portproxy show v4tov4 ) else (
for %%i in (%ports%) do ( netsh interface portproxy add v4tov4 listenport=%%i listenaddress=%addr% connectport=%%i connectaddress=%hostip% ) echo "add suceessfully" netsh interface portproxy show v4tov4 )
exit /b 0 goto end
:subcode3
set /p ports=Enter port number to use: for %%i in (%ports%) do ( netsh interface portproxy delete v4tov4 listenport=%%i listenaddress=127.0.0.1 ) netsh interface portproxy show v4tov4 goto end
윈도우 하위 리눅스 시스템 게스트VM에 원격접속이 가능한 날이 왔네요. 여기에서는 WSL2에 게스트VM으로 칼리리눅스(Kali Linux)가 설치된 상태에서 xrdp 원격접속이 가능하도록 설정해보겠습니다. WSL2 설치 방법 / 리눅스 설치방법 / 윈도우용 터미널 설치 방법은 아래 링크를 참고해주시기 바랍니다.
Hyper-V 설정에서 이미지와 같이 하드웨어 - 보안 설정을 적용해주어야 Windows 11을 Hyper-V에 설치할 수 있습니다.
로컬계정으로 설치하기 원한다면 Windows 11 설치 중 설정메뉴에 들어가서 하드웨어 - 네트워크 어댑터에서 가상 스위치를 연결되지 않음으로 선택하고 적용해주면 랜선을 뽑은 것과 같이 됩니다. 로컬계정 설정 후 Default Switch를 다시 선택 후 적용해주면 랜선을 연결한 상태와 같습니다.
- wsl --install 단순화된 설치 명령을 사용하려면 Windows 참가자 프로그램에 가입하고 Windows 10(OS 빌드 20262 이상)의 미리 보기 빌드를 설치해야 하지만 수동 설치 단계를 따를 필요가 없습니다. 관리자 권한으로 명령 창을 열고 wsl --install을 실행하고 다시 시작하기만 하면 WSL을 사용할 준비가 됩니다.
- 실행(WinKEY+R) –> optionalfeatures로 실행하면 선택적 기능 창이 열리면 'Linux용 Windows 하위 시스템'에 체크해주고 재부팅합니다.
> 수동 설치 : 아래에 나열된 여섯 단계를 수행합니다.
- WSL의 수동 설치 단계는 아래에 나열되어 있으며 모든 버전의 Windows 10에 Linux를 설치하는 데 사용할 수 있습니다.
◎단순화된 설치
> Linux용 Windows 하위 시스템의 설치 프로세스는 최신 Windows 10에서 크게 개선되어 수동 설치 단계를 단일 명령으로 대체합니다.
--install 명령은 다음 작업을 수행됩니다.
- 선택 사항인 WSL 및 Virtual Machine 플랫폼 구성 요소를 사용하도록 설정합니다.
- 최신 Linux 커널을 다운로드하여 설치합니다.
- WSL 2를 기본값으로 설정합니다.
- Linux 배포(재부팅이 필요할 수 있음)를 다운로드하여 설치합니다.
기본적으로 설치된 Linux 배포는 Ubuntu입니다. 이 값은 wsl --install -d <Distribution Name>을 사용하여 변경할 수 있습니다. (<Distribution Name>을 원하는 배포 이름으로 바꿉니다.) wsl --install -d <Distribution Name> 명령을 사용하여 초기 설치 후 머신에 Linux 배포를 추가할 수 있습니다. 사용 가능한 Linux 배포 목록을 보려면 wsl --list --online을 입력합니다.
> 실행(WinKEY+R) –> optionalfeatures로 실행하면 선택적 기능 창이 열리면 'Linux용 Windows 하위 시스템'에 체크해주고 재부팅합니다.
◎수동 설치
> Linux용 Windows 하위 시스템 사용 Windows에서 Linux 배포를 설치하려면 먼저 "Linux용 Windows 하위 시스템" 옵션 기능을 사용하도록 설정합니다. PowerShell을 관리자 권한으로 열어 실행합니다.
이제 다음 단계로 이동하여 WSL 2로 업데이트하는 것이 좋습니다. 그러나 WSL 1만 설치하려면 컴퓨터을 다시 시작 하여 마지막 단계의 선택한 Linux 배포 설치로 이동할 수 있습니다. WSL 2로 업데이트하려면 컴퓨터가 다시 시작될 때까지 기다린 후 다음 단계로 이동합니다.
> WSL 2 실행을 위한 요구 사항 확인 WSL 2로 업데이트하려면 Windows 10을 실행해야 합니다. - x64 시스템의 경우: 버전 1903 이상, 빌드 18362 이상 - ARM64 시스템의 경우: 버전 2004 이상, 빌드 19041 이상 - 18362보다 낮은 빌드는 WSL 2를 지원하지 않습니다. Windows Update Assistant를 사용하여 Windows 버전을 업데이트합니다.
버전 및 빌드 번호를 확인하려면 Windows 로고 키 + R 을 선택하고, winver 를 입력 후 엔터를 눌러줍니다. (또는 Windows 명령 프롬프트에서 ver 명령을 입력합니다.) [설정] 메뉴에서 최신 Windows 버전으로 업데이트합니다.
> Virtual Machine 기능 사용 WSL 2를 설치하려면 먼저 Virtual Machine 플랫폼 옵션 기능을 사용하도록 설정해야 합니다. 이 기능을 사용하려면 머신에 가상화 기능이 필요합니다. PowerShell을 관리자 권한으로 열어 실행합니다.
> Linux 커널 업데이트 패키지 다운로드 - 최신 패키지를 다운로드합니다. . x64 머신용 최신 WSL2 Linux 커널 업데이트 패키지 - 다운로드한 업데이트 패키지를 실행합니다. (실행하려면 두 번 클릭 - 관리자 권한을 요구하는 메시지가 표시되면 '예'를 선택하여 이 설치를 승인합니다.) 설치가 완료되면 새 Linux 배포를 설치할 때 WSL 2를 기본 버전으로 설정하는 다음 단계로 이동합니다. (새 Linux 설치를 WSL 1로 설정하려면 이 단계를 건너뜁니다.)
> WSL 2를 기본 버전으로 설정 PowerShell을 열고 이 명령을 실행하여 새 Linux 배포를 설치할 때 WSL 2를 기본 버전으로 설정합니다.
PS C:\> wsl --set-default-version 2
> 선택한 Linux 배포 설치 - Microsoft Store를 열고 즐겨 찾는 Linux 배포를 선택합니다.
새로 설치된 Linux 배포를 처음 시작하면 콘솔 창이 열리고 파일이 압축 해제되어 PC에 저장될 때까지 1~2분 정도 기다려야 합니다. 이후의 모든 시작은 1초도 걸리지 않습니다. 새 Linux 배포에 대한 사용자 계정 및 암호를 만들어야 합니다.
Windows 운영 체제와 완전히 통합된 Linux 배포를 설치를 완료했습니다.
◎ Linux 암호 재설정
> root 암호변경 Linux 배포용 암호를 잊은 경우 다음을 수행합니다. PowerShell을 열고, wsl -u root 명령을 사용하여 기본 WSL 배포의 루트를 입력합니다. 기본값이 아닌 배포에서 잊어버린 암호를 업데이트해야 하는 경우 ubuntu을 대상 배포의 이름으로 바꾼 wsl -d ubuntu -u root 명령을 사용합니다. WSL 배포가 PowerShell 내의 루트 수준에서 열리면 passwd <WSLUsername> 명령을 사용하여 암호를 업데이트할 수 있습니다. 여기서 <WSLUsername>은 암호를 잊어버린 계정 사용자 이름입니다. 새 UNIX 암호를 입력한 다음, 해당 암호를 확인하라는 메시지가 표시됩니다. 암호가 성공적으로 업데이트되었다는 메시지가 표시되면 exit 명령을 사용하여 PowerShell 내에서 WSL을 닫습니다.
Windows 10 Fall Creators Update(Windows 10 버전 1709) 가을 크리에이터스 업데이트에서 Hyper-V 관리자와 독립적으로 실행할 수 있는 가상 머신 갤러리를 포함하도록 빨리 만들기 기능이 추가되었습니다. 업데이트 이후 가상 머신을 새로 만드는 방법은 다음과 같습니다. - 시작 메뉴에서 Hyper-V 빨리 만들기를 엽니다.
- 운영 체제를 선택하거나, 로컬 설치 원본을 사용하여 자체 운영 체제를 선택합니다.
. 자체 이미지를 사용하여 가상 머신을 만들고 싶으면 로컬 설치 원본을 선택합니다. . 설치 원본 변경을 선택합니다.
. 새 가상 머신으로 사용하고 싶은 .iso 또는 .vhdx를 선택합니다. . 이미지가 Linux 이미지인 경우 보안 부팅 옵션을 선택 취소합니다.
- "가상 머신 만들기"를 클릭합니다.
간단하죠? ㅎ
> Hyper-V 관리자를 사용하여 가상 컴퓨터를 만들고 운영 체제를 설치합니다.
-시작 메뉴에서 Hyper-V 관리자를 엽니다.
- Hyper-V 관리자의 왼쪽에서 컴퓨터이름을 클릭하고 오른쪽에 있는 작업 메뉴에서 빨리 만들기를 클릭합니다.
Windows 10에서 가상 컴퓨터를 만들 수 있도록 Hyper-V를 사용하도록 설정합니다. Windows 10 제어판, PowerShell 또는 DISM(Deployment Imaging Servicing and Management) 도구를 사용하는 방법을 포함하여 여러 가지 방법으로 Hyper-V를 사용하도록 설정할 수 있습니다.이 문서에서는 각 옵션을 안내합니다.
※ 참고:Hyper-V는 Windows에서 선택적 기능으로 기본 제공되므로 Hyper-V를 다운로드할 필요가 없습니다.
> 요구 사항 확인
- Windows 10 Enterprise, Pro 또는 Education
- 두 번째 수준 주소 변환(SLAT)을 사용하는 64비트 프로세서.
- VM 모니터 모드 확장(Intel CPU의 VT-c)을 지원하는 CPU.
- 최소 4GB의 메모리.
Hyper-V 역할은 Windows 10 Home에는 공식적으로설치할 수 없습니다만, Hyper-V를 활성화하면 사용할 수 있습니다.
공식가이드는 설정>업데이트 및 보안>정품 인증을 열어 Windows 10 Home 버전을 Windows 10 Pro로 업그레이드하라고 권고하고 있습니다.
Hyper-V는 Microsoft의 가상화 플랫폼입니다. Windows Server 운영 체제에서 사용할 수 있었지만 Microsoft는 Windows 10에 Hyper-V 기능을 추가했습니다. 안타깝게도 Hyper-V 기능은 Windows 10 Professional 및 Enterprise 버전에서만 사용할 수 있습니다. 기본적으로 Windows 10 Home Edition에는 설치할 수 없습니다. 그러나 이 문서의 단계를 사용하여 Windows 10 Home Edition에서 Hyper-V를 사용하도록 설정하겠습니다.
> 시스템이 가상화를 지원하는지 여부 확인 계속 진행하기 전에 시스템이 가상화를 지원하는지 확인해야 합니다. Hyper-V가 올바르게 작동하려면 하드웨어 가상화가 필요합니다. 만약 지원하지 않다면 Virtualbox 및 VMWare와 같은 다른 가상화 플랫폼을 사용해야 합니다.
Windows 10 컴퓨터에 Hyper-V를 설치하기 위한 네 가지 기본 요구 사항이 있습니다. - VM 모니터 모드 확장 - 펌웨어에 가상화 사용 - 두 번째 수준 주소 변환 - 데이터 실행 방지 사용 가능
명령 프롬프트 ( 실행(WinKEY+R) –> cmd )를 열고 systeminfo 명령을 실행하여 Hyper-V 요구 사항 섹션을 확인할 수 있습니다.
대부분의 최신 컴퓨터는 Hyper-V의 모든 요구 사항을 지원합니다. 그러나 일부 시스템은 BIOS에서 가상화를 비활성화돼있습니다. 비활성화돼있다면 시작할 때 BIOS 설정으로 이동하여 가상화를 활성화할 수 있습니다.
> Windows 10 Home에서 Hyper-V 활성화 Windows 10 Home에서 Hyper-V를 설치하고 활성화하려면 아래 단계를 따라서 진행하면 됩니다.
- 텍스트 편집기를 사용하여 install-hyper.bat 와 같이 파일을 만들고 다음을 해당 파일에 복사하고 저장하세요.
pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum > hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL pause
- 해당 파일을 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행을 선택합니다. 그러면 설치 스크립트가 실행됩니다. 설치를 완료하는 데 다소 시간이 걸릴 수 있습니다. 완료 전에 종료하지 말고 기다려주세요.
- Y를 눌러 계속합니다. 완료되면 시스템이 다시 시작됩니다.
- 다시 시작하면 Windows 업데이트 화면이 표시됩니다.
- 다시 시작한 후 Windows 선택적 기능에 Hyper-V 옵션이 표시되는지 확인할 수 있습니다. 확인하려면 실행(WinKEY+R) – optionalfeatures를 실행하면 됩니다. Hyper-V 및 Hyper-V 관리 도구를 찾을 수 있습니다.
시작 메뉴에서 Hyper-V를 검색하여 Windows 10 Home 컴퓨터에서 가상 머신 생성을 시작할 수 있습니다.
> 시작 메뉴에서 hyper를 검색합니다. Hyper-V가 컴퓨터 내에 설치되었으며, 이제 Hyper-V를 이용하여 가상 머신을 만들 수 있었습니다.
> Windows 10 Home에서 Hyper-V 비활성화 컴퓨터에서 이 기능을 원하지 않는 경우 언제든지 비활성화할 수 있습니다. 비활성화하는 방법에는 두 가지가 있습니다. - 첫번째 방법 . 실행(WinKEY+R) –> optionalfeatures로 실행하면 선택적 기능 창이 열립니다. . Hyper-V 및 Hyper-V 관리 도구 선택을 취소합니다.. . 컴퓨터 재시작 - 두 번째 방법 . 명령 줄을 사용하여 이 작업을 수행할 수도 있습니다.
은행 사이트나 정부 사이트 접속 시 강제설치 프로그램을 가상 머신 내 설치하여 접속할 수도 있습니다.
예전에는 가상 머신에서의 접속 또는 접속되었더라도 인쇄가 차단되기도 했지만, 지금은 가상 머신이 기업이나 공공기관에서 일반적으로 사용되고 있기 때문에 관련 업무를 처리하기 위해 가상 머신을 사용하는데 무리가 없어 보입니다. 마지막으로 Hyper-V는 가상 머신을 실행하기 위해 사용자 컴퓨터의 시스템 리소스(CPU, RAM, 저장공간)가 필요합니다. 만약 사용자 컴퓨터의 메모리가 4GB RAM이라면 가상 머신에 리소스를 제공할 수 없기 때문에 Hyper-V 기능을 사용하기 어려울 겁니다.