Pregunta

A menudo quiero ssh a una Mac y me encantaría hacer uso de iCloud para buscar información de enrutamiento IP/DNS. ¿Se puede hacer esto sin registrarse para un servicio DNS dinámico y configurarlo en cada Mac además de iCloud?

Supongamos que mi Mac en el tiempo en el nombre de host de casa es "Maui" y está ejecutando Snow Leopard. Cuando estoy en mi computadora portátil conectada a la red doméstica, puedo ssh maui.local. Seguro que sería bueno poder ssh maui.whatever.icloud.com o lo que sea funcionaría. Supongo que necesitaría "Maui" y mi nombre de iCloud para hacerle saber qué máquina bajo mi cuenta necesita llegar.

¿Alguien sabe si esto es posible a través de API o línea de comando? He examinado la información del desarrollador público varias veces, pero no veo nada prometedor. Cualquier puntería o ejemplos de código sería bienvenido.

PD No sugiera cuentas DNS gratuitas, ya que estoy realmente interesado en Mobileme exclusivamente para esta pregunta. Sé que eso funcionará, pero estoy buscando evitar instalar cualquier otra cosa u otra cuenta/dependencia externa de estas Mac.

¿Fue útil?

Solución

Esto ha cambiado un poco con 10.7 y querrá tener en cuenta que esto usa IPv6 casi por completo, así que pruebe con ping6 y traceroute6 para depurar cosas.

Ya no se hace a través de @computername.mobilemename.members.mac.com, ahora se hace a través de members.btmm.icloud.com, y ya no es tan simple como tu mobilemename.

Paso 1: Descubra su dominio iCloud BTMM

Cualquiera de estos comandos proporcionará su dominio BTMM:

# dns-sd -E
# mDNS -E

La salida está formateada de manera ligeramente diferente, pero lo que buscas es la identificación numérica, será algo así como 12345678.members.btmm.icloud.com.

Paso 2: Lista de computadoras

Puede usar estas herramientas para explorar ese dominio para los servicios, por ejemplo, para servidores SSH:

# dns-sd -B _ssh 12345678.members.btmm.icloud.com

O si ya conoce el nombre de host, simplemente acceda directamente a computer-name.12345678.members.btmm.icloud.com. (Cualquier espacio en el nombre de su computadora será guiones en este dominio).

Puedes solamente Acceda a esto desde una computadora que también está configurada para BTMM en la misma cuenta, porque este nombre de host se resolverá en una dirección IPv6 que es realmente el final de un túnel de red cifrado entre sus computadoras BTMM.

Si desea ver la dirección IPv6 para un host específico, puede escribir

# dns-sd -G v6 computer-name.12345678.members.btmm.icloud.com

Y generará algo como:

17:37:47.504  Add     2  0 computer-name.12345678.members.btmm.icloud.com. FD11:993E:64AE:4DEA:011F:FBD1:F444:11A1%<0>  152

Paso 3: conectar

# ssh username@computer-name.12345678.members.btmm.icloud.com

Nota

No estoy seguro de si ese número cambiará, por lo que puede o no necesitar repetir el paso 1 en algún momento más adelante ...

Otros consejos

Leí algunos artículos sobre la base de Back to My Mac y supuestamente algunas personas se han conectado efectivamente a través de SSH, consulte la discusión contenida en Esta publicación de MacWorld.

La mejor publicación en el hilo es la siguiente:

Use el siguiente formato para conectarse como un nombre de usuario diferente:

SSH user.name@hostname.username.members.mac.com.

Si hace esto regularmente y desea guardar tener que usar el nombre de usuario todo el tiempo para SSH y SCP, cree un archivo llamado ~/.ssh/Configuración con contenido como el siguiente:

Host hostname.username.members.mac.com. Usuario user.name

Host Host2.Some.Domain.com. Nombre de usuario del usuario2 Puerto 2222 Localforward 3389 Interno-PC: 3389

El segundo host en este archivo también incluye usar un puerto que no sea 22 y permitir el acceso a una computadora de Windows llamada PC interna con escritorio remoto conectándose a localhost con el cliente de escritorio remoto.

Ahora, obviamente, Apple ha cambiado .Mac a Mobileme, por lo que no sé si eso ha cambiado a .me.com, y francamente no tengo una cuenta de Mobileme para probarlo.

EDITAR: Otra publicación interesante que quiera probar es en el fondo Veery

¡Resulta que es aún más fácil! :PAGS

Simplemente abra el terminal Vaya a Shell> Nueva conexión remota ...

Luego elija SSH y allí tenga su computadora BackTomyMac enumerada (si el sistema operativo lo ve).

Escriba su nombre de usuario y haga clic en Conectar.

Voila, incluso puedes ver la cadena de conexión utilizada. Y también puede usar FTP/SFTP ... desde este cuadro de diálogo hasta su Mac remota.

Mucho más fácil que escribir algún comando de shell como se sugiere en la punta original.

Puede ssh a su máquina que tiene "BAC a mi Mac" habilitado de esta manera:

ssh -p 22 username@computername.mobilemename.members.mac.com

Esto se debe a que las direcciones IP para la resolución son la versión 6.

Si usa ping6 o traceroute6, también puede llegar a su host.

Gran agradecimiento a pasatiempos y gafeta quienes tenían soluciones viables. El principal problema es que MobileMe Back to My usa el direccionamiento de IPv6 si está disponible y tal vez exclusivamente, por lo que no pensé en usar Ping6 o Traceroute6 y SSH aparentemente es lo suficientemente inteligente como para resolver IPv4 o IPv6.

ssh -p 22 username@computername.mobilemename.members.mac.com. Funciona de manera muy confiable para mí en las pruebas de hoy.

Desde que esto me tropezó como esperaba ping y host y nslookup Para trabajar, me imagino que pondré un buen resumen de lo que funcionó para mí. (¡con fotos! - Me gustan mucho las fotos)

Para resumir sftp, ssh, ping6, y traceroute6 debería trabajar con este esquema de nomenclatura.

Apple está incorporado en terminal (y iterm) es excelente para asegurarse de que su nombre de usuario y su nombre corto remoto sean correctos. El nombre es el nombre de host corto (que hostname Imprime) y no necesariamente se mostrará el buscador de nombres de intercambio más largo para la Mac remota).

short hostname

Esto es lo que muestra el terminal cuando descubre que se ejecuta mis máquinas Mac. El elemento del menú es Nueva conexión remota ... Y el atajo es Cambio+Dominio+K. Muestra cómo el nombre del buscador "Mikey's Mac" podría ser diferente al nombre de host corto mi

enter image description here

Licenciado bajo: CC-BY-SA con atribución
No afiliado a apple.stackexchange
scroll top