나에게는 꽤나 어려웠던 자동배포를 위한 우분투 서버 <=> 로컬PC 연결..
정말 별 것 아닌게 문제였는데,
이걸 모르고 계속 삽질을 그렇게 했다니ㅜㅜ..
3일간 2-3시간자며 겨우 이해했으니, 잊지 않도록 적어야겠다..!
링크 게시글 많이 참고하며 진행
위 글 보며 우분투에 git설치, git 관리자용 사용자 추가, SSH 디렉토리, 인증파일 생성은 했음!
+) 추가로
git config --global user.name "kimLrLr"
git config --global user.email "rimiha9708@gmail.com"
이런 식으로 git config도 해줌

ifconfig 검색하면 나오는 IP인데 다 동일하게 10.0.2.15인 것으로 확인되어짐. 게스트 포트는 서버에서 LISTEN할 포트번호인데 지정해주지 않으면 보통 22번 포트를 쓰기 때문에 22번으로 넣어준다.
ssh-keygen -t rsa -b 4096 -N ""
위 명령어로 공개키, 비공개키 1개씩 발급.
이 때, 경로는 키 쌍은 C:\Users\user\.ssh 경로에 위치한다.
( -N ""를 넣어준 이유는 자동배포 하려면 비밀번호를 넣으면 연결이 힘들기 때문에..😭)

명령어 치면 나오는 Enter file in which to save the key는 위치 저기하면 되냐? 같은 내용이니 별 특별한 일 없으면 그냥 Enter..

확인해보면 잘 들어가있다.
이후, .ssh폴더에 authorized_keys.txt파일을 하나 생성해 id_rsa.pub이라는 이름의 공개키를 복사해 넣어준다.
id_rsa 우클릭해서 속성 열고, 보안 탭에서 고급 클릭!

고급 보안 설정 창 나오면 "상속 사용 안 함" 클릭!

상속된 권한은 모두 제거해주고,
"추가"버튼 눌러 보안 주체 클릭!

선택할 개체 이름에는 본인 윈도우 계정 이름 적어주기(MS 계정이면 메일 주소)

권한은 이렇게 두 개 체크하고 적용해준다.
하기 전, 앞전에 한 것들 헷갈리니, .ssh폴더 안에 있는 기존의 authorized_keys 내용 삭제하고, key 발급 받아진 것들도 삭제해주자.
ssh-keygen -t rsa -b 4096 -N ""
그 다음에 pub파일 authorized_keys에 복사
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 755 /home/kimlrlr
입력 후,
소유권 확인 및 수정 방법은
sudo chown -R kimlrlr:kimlrlr /home/kimlrlr
이러고도 오류 생길 수 있으니..
SSH 디렉토리와 authorized_keys 파일 권한 확인해주기
chmod 700 /home/kimlrlr/.ssh
chmod 600 /home/kimlrlr/.ssh/authorized_keys
sudo nano /etc/ssh/sshd_config
- PORT 22 주석 해제
- HostKey /etc/ssh/ssh_host_rsa_key 주석 해제
- PermitRootLogin yes
- PubkeyAuthentication yes
- AuthorizedKeysFile .ssh/authorized_keys 주석 해제
- PasswordAuthentication no



설정 해줬으면 ctrl + o 누른 다음 Enter키 눌러 저장하고,
ctrl + x키로 나가주자!
sudo systemctl restart ssh
sudo systemctl restart sshd
참고로 잘 돌아가고 있는지 서버 상태 보려면 아래 명령어 사용!
sudo systemctl status ssh
sudo systemctl status sshd
잘 되고 있으면 아래처럼 나온다!

sudo ufw status verbose

만일 상태가 활성화 되어있지 않으면 아래 명령어로 열어준다.
sudo ufw enable
sudo ufw allow 포트번호
그럼 아래처럼 규칙이 추가되었다고 뜸

authorized_key파일에 넣어주기!!!!!!아래 명령어로 찾아서 접속!
ssh -i ~/.ssh/id_rsa -p 포트번호 userName@IP
포트번호 없는 경우에는 -p 포트번호 부분 안써도 된다.
C:\Users\user\.ssh경로에 있는 known_hosts파일에 접속하려던 IP로 된 기록 지우기
sudo tail -f /var/log/auth.log
리눅스 커맨드창에 쳐서 넣은 다음 연결해보면 오류코드 뜬다!!