floatFirstTOC: right
🖥️ 시작하며📌 1. Ubuntu Linux Server 설치1-0. 설치 순서1-1. English 선택1-2. Done 선택 1-3. Ubuntu Server 선택1-4. Done 선택1-5. Done 선택1-6. Done 선택1-8. ubuntu-lv 를 ubuntu-vg 크기만큼 변경1-9. 개인 설정1-10. Continue1-11. Done , 다음도 Done📌 2. 초기 설정2-1. 관리자 권한 활성화2-2. 기본 패키지 설치2-3. SSH 활성화💡 sudo vi /etc/ssh/sshd_config 수정2-4. ifconfig 로 IP 확인3. VS Code에서 SSH 연결3-1. Remote - SSH 설치3-2. Command + Shift + P 후 Remote - 호스트에 연결 선택3-3. 새 호스트 추가 선택 후3-번외. Public Key 발급4. 리눅스에 공유 폴더 설정4-1. 로그인 정보 저장4-2. /etc/fstab 파일에 마운트 정보 추가
🖥️ 시작하며
운영체제를 배우면서 리눅스 커널도 분석하고, 개인적으로 궁금한 것도 실험해보고 싶은데 도커로는 한계가 있어서 리눅스 서버를 설치한 후, 직접 ssh에 연결해서 진행해보려고 시작하게 되었습니다.
📌 1. Ubuntu Linux Server 설치
위 링크에서 다운로드 받으면 됩니다. 헌데 저는 맥북 유저이고, 패러렐즈를 사용하기 때문에 이를 중점으로 포스팅하려고 합니다. 맥북 유저는
ARM
버전을 다운로드 받아야 합니다.1-0. 설치 순서
쉽습니다. 우선 패러렐즈에서 하라는 대로 합시다.
설치가 완료되면, 아래 사진이 보일 것입니다.
1-1. English
선택
다른 언어에 자신이 있는 분들은 다른 언어로 하셔도 무방합니다.
1-2. Done
선택
1-3. Ubuntu Server
선택
2번째의
Ubuntu Server (minimized)
를 선택해도 무방하지만 저는 그냥 기본으로 했습니다.1-4. Done
선택
기본값으로 진행합니다.
1-5. Done
선택
기본값으로 진행합니다. 프록시 서버 설정하실 분들은 하셔도 무방합니다.
테스트를 완료하면 다시
Done
을 선택합니다.1-6. Done
선택
기본값으로 진행합니다.
1-8. ubuntu-lv
를 ubuntu-vg
크기만큼 변경
남는 공간이 없도록 합니다.
1-9. 개인 설정
1-10. Continue
1-11. Done
, 다음도 Done
저는 따로 설치하려고 여기선 넘겼습니다.
이제 설치는 끝났습니다. 리붓하고 다음 단계로 넘어갑시다.
📌 2. 초기 설정
1.9에서 설정해준 값으로 로그인을 해 줍니다.
2-1. 관리자 권한 활성화
sudo passwd root
2-2. 기본 패키지 설치
sudo apt update sudo apt install build-essential vim openssh-server net-tools
2-3. SSH
활성화
sudo systemctl enable ssh sudo systemctl start ssh
💡 sudo vi /etc/ssh/sshd_config
수정
Port=22
: # 제거
#PermitRootLogin prohibit-password
: # 제거, 값을 yes로 변경
sudo vi /etc/ssh/sshd_config
2-4. ifconfig
로 IP 확인
enp0s5: flag .... int [IP 주소] netmask 255.255.255.0 ...
여기서
[IP주소]
를 메모해둡니다.이제 리눅스에서 할 일은 끝났습니다.
3. VS Code에서 SSH 연결
3-1. Remote - SSH 설치
3-2. Command + Shift + P
후 Remote - 호스트에 연결
선택
3-3. 새 호스트 추가 선택 후
여기에
ssh [사용자명]@[아까 기록한 IP 주소]
를 입력합니다.이후
/Users/사용자명/.ssh/config
선택합니다.이후 구성 열기 후, 암호를 입력하고 진입하면 됩니다.
3-번외. Public Key
발급
항상 접속할때마다 비밀번호를 치는 것은 귀찮으므로 키를 발급해줍시다.
맥북의 터미널에서
ssh-keygen
을 입력해줍니다.아래 명령어를 입력해줍니다.
ssh [공개키 주소] [서버주소]:/home/username/.ssh/authorized_keys
이러면 완료!
4. 리눅스에 공유 폴더 설정
저는 로컬 파일을 리눅스에서 열어볼 일이 많을 것 같아 공유 폴더를 설정하기로 했습니다.
파일 공유를 활성화하고, 고급 옵션에서
Windows 파일 공유
를 활성화해야 합니다.리눅스에서 공유하려했는데 왜 Windows인가 해서 안켰다가 3시간동안 해맸습니다. ..
4-1. 로그인 정보 저장
마운트 정보를 저장하기 전에, 사용자 이름과 비밀번호를
/etc/fstab
파일에 직접 넣는 대신, 보안을 위해 별도의 자격 증명 파일을 만드는 것이 좋습니다.- 자격 증명 파일 생성:
- 새로운 자격 증명 파일을 생성합니다.
- 사용자 이름과 비밀번호 입력합니다.
- 보안을 강화합니다.
sudo nano /etc/smbcredentials
username=yourusername password=yourpassword
sudo chmod 600 /etc/smbcredentials
4-2. /etc/fstab
파일에 마운트 정보 추가
/etc/fstab
파일 수정:- 다음 명령을 실행합니다.
- 파일의 맨 아래에 다음 줄을 추가합니다.
credentials=/etc/smbcredentials
: 자격 증명 파일 경로입니다.iocharset=utf8
: 문자 인코딩을 UTF-8로 지정합니다.sec=ntlmssp
: NTLMSSP 보안 메커니즘을 사용합니다.nofail
: 이 마운트가 실패해도 부팅 과정을 계속 진행합니다.
sudo nano /etc/fstab
여기서
nofail
옵션을 포함시켜 부팅 과정에서 이 마운트가 실패해도 시스템 부팅에는 영향을 주지 않도록 합니다.//[본인의 SMB IP주소]/[폴더] [리눅스 폴더] cifs credentials=/etc/smbcredentials,iocharset=utf8,sec=ntlmssp,nofail 0 0
- 변경사항 저장 및 시스템 재부팅:
- 시스템을 재부팅합니다.
- 재부팅 후에는 다음 명령으로 마운트가 성공적으로 이루어졌는지 확인할 수 있습니다.
sudo reboot
df -h
거의 6시간만에.. 드디어.. 성공..
댓글