안녕하세요.
혹시나 해서 질문게시판에 올립니다. 비슷한 현상을 겪으신 분들이나 의견 있으신 분들 답변 부탁드립니다.
사무실에서 사용하는 PC 는 MS 윈도우 10 / MS 윈도우 11 입니다.
작업서버는 리눅스 ( 주로 레드햇, centos , rocky ) 입니다.
리눅스 서버끼리는 ssh 로 잘 넘어다니고요.
실제로는 ssh-keygen 으로 public key 를 등록해서 암호 입력 없이 로그인 / 로그아웃 합니다.
윈도우에서 리눅스로 접속할 때도 ssh 로 잘 넘어다닙니다. ssh 로 접속해서 작업하고, 정상 접속 됩니다.
문제는, public key 를 서버에 넘겨주고 password 없이 ssh 접속하는게 안 됩니다. 공개 키 파일을 서버에 넘겨줬는데도, 암호를 물어봅니다.
자동화를 위해서 Windows PowerShell 에서 vbs 스크립트를 작성했습니다만,
1. Windows PowerShell 에서 ssh 암호 입력 정상 작동
> ssh 접속아이디@리눅스서버
위 커맨드는 정상 작동합니다. 암호를 입력하면 정상 로그인 됩니다. 예를 들면
> ssh *****@******.com ## 정상 작동.
2. Windows PowerShell 에서 ssh 공개키 이용 실패. 암호 입력 요구.
> ssh-keygen ## 윈도우에서 공개키 생성.
> scp id-rsa.pub 접속아이디@리눅스서버:/home/접속아이디/.ssh/authorized_keys
> ssh 접속아이디@리눅스서버
위와 같이, 공개 키 파일을 리눅스 서버에 복사해서 authorized_keys 로 복사했는데도 , ssh 로 접속했을 때 암호 입력을 요구합니다.
근데 이게 MS Windows -> linux 접속 때만 이렇고,
linuxA서버 -> linuxB서버 접속 때는 공개 키 방식으로 접속해도 정상적으로 암호 입력 없이 진행됩니다.
혹시 비슷한 현상을 겪으신 분들, 혹은 다른 분들이라도 의견 주시면 대단히 감사하겠습니다.
이상입니다. 즐거운 하루 되시기 바랍니다.
윈도우는 key passphrase 라는것을 해주면 잘되는가 보네요.
https://dreamholic.tistory.com/111?category=790008
권한조정에 대한 부분은 참고하시려면 제가 강좌란에 올린 내용도 참조 부탁드립니다.
https://www.2cpu.co.kr/lec/3990
공개키 설정할 때 암호 설정하게 생성해서 진행했고,
권한 부분도 윈도우 / 리눅스 쪽에서 열어서 시험해 봤습니다만 , 안 되더군요.
-i 옵션으로 client 의 private key 를 전송해서 접속 ( = ssh -i "사설키" 유저아이디@리눅스서버 ) 해 봤는데도 안 됩니다.
일단 제 머리로는.... 건드려 볼 만 한걸 다 건드렸는데 안되서, 계속 인터넷 뒤져보는 중입니다.
다른 분들도 혹시 의견 있으시면
답글 달아 주시면 감사하겠습니다.
답변 감사드립니다. 즐거운 하루 되시기 바랍니다.
원인은 SSH 의 p.... 어쩌고, 옵션이 기억 안나는데,
SSH 서버 쪽에서 퍼블릭 키의 권한 / 유저아이디를 체크하는 옵션
그게 윈도우 쪽 계정과 달라서 생긴 문제로 보입니다.
SSH Daemon 옵션 이름이 기억 안나는군요. 어쨌던.
그래서 , 데몬을 내렸다 올릴까 하다가
말씀해 주신대로 일단 plink / pscp 로 작업했습니다.
결국은 scp 를 설치한 꼴이 되어서, 나중에 한 번 더 손 봐야 되겠습니다만, 어쨌던 지금 당장은 이걸로 써야 겠습니다.
답변 주신 분들 감사드립니다.
새해 복 많이 받으시길 바랍니다.