안녕하세요. 말아탕 입니다.
오늘은 간단한 실습(예제)을 한번 해볼까 하는데요.
Vmware의 Kali Linux에서 작성한 Python 파일을 복사해 실행하려고 합니다.
우선 시작하기에 앞서 필요한 것은
Vscode가 깔려야 하고,
실행한 Vscode에서 Python 파일을 작성해야 합니다.
또한, Vmware이 깔려야 하고,
실행한 Vmware에서 Kali Linux가 실행돼야 합니다.(다른 Linux도 가능)
저의 실행환경으로 말씀드리면,
1.Windows 10 Home입니다.
2. Visual Studio Code는 1.95.3 버전입니다.
3. 현재 python 버전은 3.11.9입니다.
4. VMwareWorkstation Pro 사용 중이고, 무료 버전을 사용 중입니다.
5. Kali Linux는
입니다. 물론 작업은 putty 통해서 하고 있습니다. 네트워크가 정상적으로 연결되어야 합니다.
1. python 파일 생성
새 파일을 눌러 파일을 생성합니다.
test.py로 생성할 것이고 간단하게 출력하는 문을 만들겠습니다.
상단의 Python 파일을 눌러 코드를 작성합니다.
print 명령어로 출력문을 만듭니다.
우측 상단에 세모 버튼을 누르면 실행이 되는데, 현재 경로를 저장하지 않아
원하는 위치에 이렇게 저장합니다.
저 같은 경우에는 E드라이브 안에 넣었습니다. cd 명령어를 통해 test.py가 있는 곳으로 이동합니다.
ls 명령어로 확인이 가능합니다.
python test.py
명령어를 입력하여 확인합니다.
2. Kali Linux 접속 및 경로 설정
먼저 putty로 kali linux를 접속합니다.
접속을 하여 root 권한을 획득합니다.
저는 기본 경로를 /home/kali로 진행하겠습니다.
만약 제가 진행하는 경로가 아닌 다른 경로로 진행한다면, 권한 문제가 발생하여
"Permission denied" 오류가 발생할 가능성도 있습니다. 권한 획득을 하여 문제해결 하시길 바랍니다.
3. vscode에서 test.py 이동하기
만들었던 test.py를 이동하기 위해서는 크게 3가지 방법이 있습니다.
- SCP: 로컬 시스템에서 Kali Linux로 파일을 복사(제가 이번에 하는 방법)
- FTP/SFTP: FTP 클라이언트를 사용해 파일 전송
- 공유 폴더: Vmware의 공유 폴더 기능을 사용하여 파일을 공유
저는 1번 방법으로 진행하겠습니다.
scp /path/to/<생성한. py> kali@<Kali_IP>:/path/to/destination/
Python의 파일 경로를 적고, Kali Linux의 IP주소를 적고, 아까 제가 만들었던 경로를 적습니다.
저의 기준으로 예를 들자면
scp E:/test.py kali@xxx.xxx.xxx.xxx:/home/kali/test.py입니다.
Kali Linux의 패스워드 정보를 입력합니다.
정상적으로 입력하셨다면, test.py가 복사가 됐음을 확인합니다.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
※ SCP를 처음 사용하여 원격 호스트에 연결하려고 할 때 위와 같이 보안 확인 메시지가 발생합니다.
"yes" 입력하시면 됩니다.
(보안 확인 메시지가 발생하는 이유는, SSH 키가 로컬 시스템에 등록되어 있지 않다는 것을 의미합니다.)
4. Kali Linux에서 Python 실행
옮겨진 Python 파일을 확인합니다.
만약 옮겨지지 않았다면 다시 문제를 해결해야 합니다.
생각나는 건, Kali Linux의 네트워크 문제, SSH 연결 문제, 경로를 정확하게 입력하기,
파일/디렉터리의 권한 문제 정도 확인해 보면 좋을 거 같습니다.
python test.py
명령어로 test.py를 실행한 결과입니다!
Vscode에서 작성한 test.py를 Kali Linux에서도 정상적으로 실행이 가능합니다.
'인프라 > 리눅스' 카테고리의 다른 글
리눅스(Linux) 디렉터리 구조 이해 (0) | 2024.03.03 |
---|---|
[Linux] nice, renice 이해 (0) | 2022.12.20 |
[Linux] 디스크 쿼터(diskquota) 이해 (0) | 2022.11.28 |
Linux(리눅스) vs Windows(윈도우) (0) | 2022.11.17 |