요약. Wi-Fi에서는 현재 /24의 주소를 대상으로 선택한 TCP 포트
(기본 22)가 열렸는지 확인하고 연결 가능한 주소를 표시합니다. 그 뒤에는 일반 SSH 절차를
따릅니다. 자격증명을 보내기 전에 서버 호스트키 지문을 확인합니다. 발견 기능은 열린 포트를
찾을 수 있지만 변경된 호스트키가 안전한지는 결정할 수 없습니다.
도토리 SSH 터미널로컬 포트 검색, host 직접 입력, Android 터미널, 기기 보안 저장소의 자격증명과 TOFU 호스트키 확인을 한 앱에 둡니다.
자격증명을 묻기 전에 service를 찾는다
현재 Wi-Fi 어딘가에 SSH 서버가 있지만 주소를 모른다면 좁은 포트 검색이면 충분합니다.
/24의 host 주소 254개에서 선택한 포트의 TCP 연결을 시험하고 받아들이는 주소를
표시합니다. SSH가 표준 포트가 아닌 곳에서 실행된다면 22를 가정하지 말고 그 포트를 검색합니다.
열린 포트도 아직 후보일 뿐입니다. service가 SSH가 아닐 수 있고, 포트가 닫혀 보여도 서버가 절전 중이거나 방화벽에 막혔거나 다른 VLAN 또는 다른 포트에 있을 수 있습니다. IP 주소나 hostname을 아는 경우에는 폰이 Wi-Fi가 아니어도 직접 접속할 수 있어야 합니다.
발견 정보와 비밀을 분리한다
네트워크 검색 앱에서 SSH 앱으로 넘길 때 필요한 것은 대상 좌표뿐입니다.
host + port
username + password는 넘기지 않음
SSH 앱이 자기 화면에서 자격증명을 요청해야 합니다. 그래야 비밀번호가 deep link·browser history·log나 다른 앱 저장소에 들어가지 않습니다. 사용자가 자격증명 저장을 선택했다면 SSH 앱의 전용 보안 저장소에서 host와 port를 기준으로 보관합니다.
TOFU는 네트워크 연결 다음에 시작된다
SSH 호스트키와 비밀번호는 서로 다른 질문에 답합니다. 비밀번호는 사용자가 누구인지 서버에 증명하고, 호스트키는 사용자가 서버를 알아보는 데 쓰입니다. TOFU(Trust On First Use)는 첫 접속에서 key type과 SHA-256 지문을 보여 주고 기억할지 묻습니다.
다음 접속에서 지문이 같으면 진행할 수 있습니다. 다른 지문이면 눈에 띄는 경고가 필요합니다. 서버 재설치나 key rotation일 수도 있지만 중간자 공격일 수도 있습니다. 저장된 지문을 조용히 덮어쓰지 말고 신뢰할 수 있는 별도 경로로 새 키를 확인한 뒤 받아들입니다.
SSH host가 보이지 않을 때
- SSH service가 실행 중이고 검색하는 포트에서 listen하는지 확인합니다.
- 폰과 서버가 client isolation이나 VLAN에 가로막히지 않은 같은 도달 가능 네트워크인지 확인합니다.
- 알고 있는 IP 또는 hostname으로 직접 접속합니다. 발견과 접속은 서로 다른 경로입니다.
- 서버 방화벽이 폰의 대역을 허용하는지 확인합니다.
- 호스트키가 달라졌다면 발견 문제가 아니라 서버 identity 확인 문제로 다룹니다.
SSH는 원격 장비에서 명령을 실행할 수 있는 관리 도구입니다. 본인이 소유하거나 관리 권한을 받은 시스템과 네트워크에서만 사용합니다.
직접 접속·자격증명·터미널·설정·개인정보 화면






도토리 SSH 터미널는 선택한 로컬 포트에서 host를 찾은 뒤 SSH 자격증명·터미널 내용·신뢰한 호스트키를 SSH 접속 경로 안에만 둡니다. 도토리 SSH 터미널 자세히 보기