iPad · Mac Native SSH No relay server

Connect once.
Every tab, ready.연결하는 순간, 모든 탭이 준비됩니다.

uSSH는 iPad와 Mac을 위한 네이티브 SSH 서버 콘솔입니다. 서버에 연결하면 터미널과 함께 리소스·Docker·파일·로그·프로세스 정보를 미리 불러와, 탭을 옮길 때 기다리지 않습니다. 기기에서 서버로 직접 연결하고, 비밀번호와 키는 기기 Keychain에만 둡니다.

iPadOS 26 · macOS 26 · 한국어 · English · 日本語

앱의 실제 화면 구성을 재현한 예시입니다. 서버 이름과 주소는 예시 값입니다.

Overview 모든 서버를 한 화면에

iPad · Home
앱의 실제 화면 구성을 재현한 예시입니다. 서버 이름과 주소는 예시 값입니다.

iPad에서 앱을 열면 전체 서버 대시보드가 먼저 나옵니다. 어떤 서버가 연결돼 있고, 어디가 바쁘고, 무엇이 실패했는지를 한 화면에서 확인합니다.

  • Summary

    전체 서버·연결된 서버·터널 규칙·연결 실패 수를 요약합니다. 실패한 서버가 있으면 이름과 함께 표시합니다.

  • Live

    연결된 서버마다 CPU·메모리·디스크 사용률 카드를 5초마다 갱신합니다. 85%를 넘으면 강조색으로 바뀝니다.

  • Tunnels

    등록된 포트 포워딩 규칙과 자동 시작 여부를 보여 주고, 누르면 해당 서버의 Tunnels 탭으로 이동합니다.

  • Recent

    최근 접속한 서버를 시간순으로 보여 주고, 목록에서 바로 연결할 수 있습니다.

  • Sidebar

    즐겨찾기와 그룹으로 정리된 사이드바에서 연결 상태를 점 모양으로 구분합니다. 채운 점은 연결됨, 빈 원은 대기, 빨간 점은 실패입니다.

Seven Tabs 연결 즉시 준비되는 7개 탭

⌘1 – ⌘7

서버에 연결되면 리소스·Docker·파일·프로세스를 병렬로 미리 불러오고, 기본 로그 스트림(syslog)을 시작합니다. 탭을 옮겨도 다시 조회하지 않고 받아 둔 내용을 바로 보여 주며, 최신 내용은 각 탭의 새로고침으로 받습니다.

01

Terminal 터미널

직접 구현한 터미널 에뮬레이터. 여러 셸 세션, 좌우 화면 분할, 전체 화면, 검색, 한글 입력(IME)을 지원합니다.

⌘1
02

Resources 리소스

CPU·load average·코어 수, 메모리·스왑, 디스크별 사용량, 네트워크 인터페이스 전송 속도, 업타임. 자동 갱신을 켜고 끌 수 있습니다. (Linux /proc 기반)

⌘2
03

Docker

컨테이너 목록과 상태·이미지·CPU·메모리를 보고 시작·정지·재시작·삭제합니다. Docker가 없거나 권한이 없으면 이유와 해결 방법을 알려 줍니다.

⌘3
04

Files 파일

SFTP 파일 브라우저. 폴더 이동, 새 폴더, 업로드·다운로드, 삭제. SFTP가 없는 서버에서는 셸 명령 방식으로 자동 전환합니다.

⌘4
05

Tunnels 터널

로컬 포트 포워딩 규칙(예: localhost:15432 → 127.0.0.1:5432). 서버에 연결되면 자동 시작하도록 지정할 수 있고, 자동 재연결 뒤에는 실행 중이던 터널을 되살립니다.

⌘5
06

Logs 로그

실시간 로그 스트리밍. syslog·nginx access/error·dmesg 프리셋과 직접 입력한 명령, 레벨 필터(Info/Warn/Error), 검색, 일시정지, 자동 스크롤.

⌘6
07

Processes 프로세스

PID·CPU·메모리·명령 목록을 보고 PID·명령·사용자로 검색합니다. 종료는 확인을 거쳐 SIGTERM 또는 SIGKILL로 보냅니다.

⌘7
+

Snippets 스니펫

자주 쓰는 명령을 저장해 터미널로 보냅니다. {{변수}} 입력 칸과 미리보기, Safe·Warning·Danger 위험도 표시, 위험 명령 실행 전 확인.

⌘K

Terminal iPad에서 제대로 쓰는 터미널

VT · xterm

에뮬레이터

VT/xterm 제어 시퀀스를 처리하는 자체 파서. 한글·CJK 같은 전각 문자 폭을 정확히 계산하고, 박스 그리기 문자를 끊김 없이 그려 htop·vim·tmux 화면이 깨지지 않습니다. 마우스 리포트와 화면 크기 변경을 지원합니다.

세션 · 분할 · 전체 화면

한 서버에 여러 셸 세션을 탭으로 열고, 두 세션을 좌우로 나란히 볼 수 있습니다. 전체 화면에서도 세션 탭과 종료 버튼이 항상 보이며, ⌘T로 들어가고 나옵니다. 다른 탭을 다녀와도 셸은 끊기지 않습니다.

입력

하드웨어 키보드와 한글 입력기(IME), Option 키를 Meta로 쓰는 설정을 지원합니다. 화면 키보드 사용 시에는 보조 키 줄을 제공합니다.

esctab^C^D^Z^L← ↓ ↑ →붙여넣기검색전체 화면

선택 · 검색

드래그로 선택해 복사하고, 단어와 URL을 인식합니다. 스크롤백 전체에서 문자열을 찾을 수 있습니다.

모양

5가지 색 테마와 3가지 글꼴, 10–20pt 글자 크기, 스크롤백 500–10,000줄을 고를 수 있습니다. 원격 클립보드 쓰기(OSC 52)와 벨은 직접 켜야 동작합니다.

DarkMidnightSolarized DarkGreen PhosphorPaper (Light)SF MonoMenloCourier New

접속 후 실행

서버마다 셸이 열린 뒤 자동으로 실행할 명령(예: cd /srv/app && git status)과 처음 열 탭을 정해 둘 수 있습니다.

Library 서버 정리와 접속 방식

Servers · Keys

그룹 · 즐겨찾기

서버를 그룹으로 묶고, 끌어다 놓아 옮기고, 그룹을 접고 펼칩니다. 이름·호스트·태그로 검색하고 이름순 또는 최근 접속순으로 정렬합니다. ⌘[ ⌘]로 이전·다음 서버로 이동합니다.

ssh_config 가져오기

설정에서 config 파일이나 .ssh 폴더를 골라 Host·HostName·User·Port·ProxyJump 항목을 서버로 등록합니다. 폴더를 고르면 IdentityFile 키도 함께 Keychain으로 가져옵니다. 가져올 항목은 미리 보고 고를 수 있습니다.

ProxyJump

다른 등록 서버를 경유 서버(bastion)로 지정해 접속합니다. 현재는 한 단계(단일 홉) 경유를 지원합니다.

인증

비밀번호 또는 개인 키. OpenSSH 형식의 ed25519·ECDSA(P-256/384/521) 키와 passphrase로 암호화된 키를 읽습니다. RSA 키는 아직 지원하지 않습니다.

ed25519ECDSA P-256 / 384 / 521passphraseRSA 미지원

기기에서 키 만들기

앱 안에서 ed25519 키를 만들고 공개 키를 복사합니다. 연결된 서버의 authorized_keys에 공개 키를 설치한 뒤, 키만으로 로그인되는지 확인하고 나서 인증 방식을 바꿉니다.

Siri · 단축어

"서버 연결"과 "스니펫 실행" 동작을 단축어 앱과 Siri에서 쓸 수 있습니다.

Security 자격증명은 기기 밖으로 나가지 않습니다

Keychain · TOFU
01

직접 연결

Apple의 swift-nio-ssh로 기기에서 서버로 바로 연결합니다. 중계 서버나 서드파티 백엔드를 거치지 않습니다.

02

Keychain에만 저장

비밀번호·개인 키·passphrase는 기기 Keychain에 저장하고, 접속할 때만 꺼내 쓴 뒤 바로 버립니다. iCloud로 동기화되지 않습니다.

03

호스트 키 확인

처음 접속할 때 지문을 보여 주고 신뢰를 묻습니다. 이후 키가 바뀌면 경고합니다. 알려진 호스트 목록을 확인하고 지울 수 있습니다.

04

Face ID · Touch ID

서버별로 생체 인증을 걸어, 접속할 때 인증을 요구할 수 있습니다.

05

앱 잠금

앱을 열 때와 1분 넘게 다른 앱을 쓰다 돌아올 때 잠급니다.

06

시크릿 없는 백업

백업 파일에는 비밀번호·키를 넣지 않습니다. 8자 이상 암호를 정하면 AES-256으로 암호화해 내보냅니다.

Sync iPad와 Mac에서 같은 목록

iCloud · CloudKit

동기화되는 것

서버·그룹·스니펫·터널 규칙과 서버별 설정(접속 후 실행 명령, 기본 탭)이 iCloud로 동기화됩니다.

동기화되지 않는 것

비밀번호·개인 키·passphrase. 각 기기 Keychain에 따로 남으므로, 새 기기에서는 자격증명을 다시 입력합니다.

백업 · 가져오기

JSON 백업으로 내보내고 가져옵니다. 이미 있는 항목은 건너뛰므로 여러 번 가져와도 중복되지 않습니다.

Keyboard 하드웨어 키보드 단축키

Magic Keyboard
⌘N서버 추가
⌘[  ⌘]이전 · 다음 서버
⌘1–7탭 이동
⌘K스니펫
⌘.연결 · 연결 해제
⌘T터미널 전체 화면
⌥Meta 키로 사용(설정)
⌃C ⌃D제어 문자 전송

Specs 요구 사항과 구성

플랫폼

iPadOS 26 이상, macOS 26 이상. iPad와 Mac 앱이 같은 코드베이스에서 각 플랫폼에 맞게 빌드됩니다.

언어

한국어 · English · 日本語 (앱 안에서 전환)

기술

SwiftUI · SwiftData · CloudKit · swift-nio-ssh · swift-crypto

상태

App Store 출시 준비 중입니다.

FAQ 자주 묻는 질문

중계 서버를 쓰나요?

아니요. 기기에서 서버로 직접 SSH 연결하며 서드파티 백엔드나 중계 서버를 거치지 않습니다.

비밀번호와 키는 어디에 저장되나요?

기기 Keychain에만 저장되며 iCloud로 동기화되지 않습니다. 백업 파일에도 들어가지 않습니다.

RSA 키를 쓸 수 있나요?

현재는 지원하지 않습니다. ed25519 또는 ECDSA 키를 사용하세요. 앱에서 ed25519 키를 직접 만들어 서버에 설치할 수 있습니다.

리소스 탭이 비어 있어요.

리소스 모니터링은 Linux의 /proc 정보를 읽습니다. macOS·BSD 서버에서는 대신 안내 문구가 표시됩니다.

연결할 때마다 데이터를 많이 쓰나요?

연결 직후 각 탭 정보를 한 번씩 불러오고 기본 로그 스트림을 엽니다. 대시보드와 리소스 탭은 화면에 있는 동안만 주기적으로 갱신합니다.

iPad와 Mac에서 같은 서버 목록을 쓰나요?

네. 서버·그룹·스니펫·터널 규칙은 iCloud로 동기화되고, 자격증명은 각 기기 Keychain에 남습니다.

Server to screen.iPad · macOS 앱으로 출시를 준비하고 있습니다. 공개되면 알려 드립니다.

App Store 배지는 실제 출시 후 게시됩니다.