¿Archivos específicos de usuario / etc / hosts?

12

¿Es posible tener un archivo de host específico del usuario, o alguna otra forma de asignar una dirección IP a un nombre en un sistema Linux? Quiero poder enviar ssh a mi máquina local desde un laboratorio del campus sin tener que memorizar mi dirección IP.

Tengo una cuenta completa de Unix que uso desde el laboratorio, pero no tengo acceso a / etc / hosts. La computadora de mi casa tiene una dirección IP bastante estática, y cambia lo suficiente como para actualizarla manualmente en el sistema remoto.

Idealmente podría decir ssh me@my_machine.

Editar: Acerca del sistema operativo, el sistema operativo del host puede variar, desde Redhat hasta Ubuntu e incluso a veces FreeBSD. Tengo varias máquinas que uso con la misma cuenta (yay redes gigantes de la Universidad) y solo estoy buscando una forma de simplificar la conexión a máquinas específicas.

Tampoco estoy interesado en algo como dns dinámico. Por bastante estático, quiero decir que el último año académico, vi que mi dirección IP cambió aproximadamente 4 veces durante 9 meses. myname.dyndns.org no es mucho mejor que una dirección IP en cuanto a escribir (soy flojo: P). Tal vez alguna vez usaré algo como dyndns para ver los cambios de IP, pero por ahora no estoy demasiado preocupado.

Mike Cooper
fuente
Ninguna de las respuestas aquí tiene nada que ver con un archivo de host específico del usuario -____-
ThorSummoner

Respuestas:

16

Utilice un archivo ~ / .ssh / config con algo como

Host my-machine

Usuario yo

HostName 192.168.63.1

De esta manera, incluso puede omitir el "yo @" y simplemente hacer "ssh my-machine"

cabeza de código
fuente
¿Funcionará esto también con ssh usando herramientas como scp y rsync?
Mike Cooper
_______________
Kim
5

Así es como lo manejo ...

En .bash_aliases

alias myhomepc='ssh [email protected]'
alias mydevpc='ssh [email protected]'

Y luego úsalo así:

myworkpc:~ $ myhomepc
Password: 
Last login: Mon Sep 21 15:54:04 2009 from 111.222.333.445
myhomepc:~ $

Usar un servicio como dyndns mencionado anteriormente también es muy útil.

djhowell
fuente
En realidad, recomendaría esto además del método DNS dinámico. De esta manera, no tiene que preocuparse por el cambio de su IP, además tiene un comando más corto para escribir. alias myhomepc='ssh [email protected]
John T
.bash_aliases no siempre es leído por bash. Para estar seguro, es posible que deba ponerlo en ~ / .bashrc
Atmocreations
1

¿En qué sistema operativo estás específicamente? Alternativamente, si su enrutador admite DDNS, puede registrarse en Dyndns.org y obtener un nombre de dominio gratuito de ellos. El enrutador actualizará automáticamente su registro para su dominio cuando cambie la IP.

MDMarra
fuente
1

Considere DynDNS o No-IP . Incluso si su IP cambia, la utilidad de actualización le permitirá al servidor DynDNS / No-IP saber que su IP ha cambiado y continuará enviándola en consecuencia. Puede tener una dirección como [email protected]o [email protected].

John T
fuente
O si está utilizando un enrutador con firmware de terceros, puede actualizar automáticamente el registro DynDNS cada vez que se renueve el contrato de arrendamiento de DHCP. Como referencia, estoy usando el firmware de Tomato en un Linksys WRT54G para hacer esto.
EmmEff