터널레스 SSH
4730 단어 tipsshdesarrollo
esta permite usar claves privadas para conectarse evitando digitar el password
y la conxión es encriptada lo que la hace segura.
SSH puede hacer mucho más luego de conectarse y abrir un shell remoto, ese es el tema
드 호이. Los túneles SSH son túneles de comunicación encriptados creados a traves de
연결 SSH. 특히 VPN을 사용하는 데 어려움이 없습니다.
Algunos ejemplos para los cuales uso los túneles en mi día a día:
Conectarse a la base de datos remota
En unambiente de Produceción seguro, la base de datos NUNCA debe estar expuesta al
Internet, es decir que si queremos conectarnos con alguna herramienta como DataGrip 또는 PHPStorm
no se puede, a menos que creemos el túnel 프리메로.
La Idea es que el servidor si tiene acceso ssh, y es donde está instalada la base de datos
pero la base no escucha en una interfaz externa solo en la local (127.0.0.1),
por lo que podemos usar la conexión ssh a este servidor para conectarnos
a la base de datos desde nuestro 주변 환경.
ssh -L 3306:localhost:3306 servidor-remoto
돈데:
ssh -L <puerto-local>:localhost:<puerto-remoto> <gateway>
Una vez este se esté ejecutando, podemos usar cualquier herramienta para conectarnos a la
base de datos en el host localhost puerto 3306 pero realmente nos estamos conectando a la base
en el servidor.
Usar un servidor como SOCKS 프록시
En el Trabajo con uno de mis clientes, elambiente de Produceción de la aplicación con la que trabajo
미국에서 사용하기 쉬운 지리적 위치. Por lo que desde mi local no puedo acceder.
서비스와 AWS 서비스는 미국에서 지원됩니다.
Creando un proxy SOCKS 및 usando ese proxy en la configuración del navegador para acceder a esta
traves del servidor 적용.
ssh -N -D 1080 servidor-remoto
Este comando crea un proxy SOCKS en el puerto 1080 local. En la configuración de proxy del
navegador escojen usar configuración de proxy manual, y en la casilla de SOCKS 프록시
colocan localhost y puerto 1080. Al aplicarlo están navegando y accediendo recursos como si
estuvieran ko 미국.
Usar un servidor comoambiente de desarrollo
Hubo un tiempo en que mi laptop no estaba funcionando bien, y al cargarle de trabajo hacía
que los ventiladores se encendieran y sonara mucho, para evitar eso por un tiempo
decidí usar un servidor en AWS para ejecutar los proyectos en los que estaba trabajando
para disminuir la carga en el local.
Los servidores en AWS por defecto siempre están protegidos por los grupos de seguridad
que generalmente solo dan acceso a los puertos 80, 443 y 22. Pero en los proyectos con los que
trabajo necesito poder acceder a los puertos 3306, 8080, 4200, 4300, 4400, 4500, 8081 등
que son los puertos que abren las herramientas de desarrollo/frameworks.
La Opción Fácil era abrir esos puertos en el grupo de seguridad, pero estaba haciendo
알 서비스도 취약합니다.
La Opción más segura es conectarse a ese servidor via ssh, y automáticamente hacer
port forwarding
. 로그 편집 및 직접 관리 ~/.ssh/config 로컬se crea un host y se coloca los puertos que se enlazaran automáticamente cuando se conecte via ssh.
예:
cat ~/.ssh/config
Host dev-marcelo
HostName 4.4.4.4 #IP del servidor
IdentityFile ~/.ssh/aws-marcelo.pem
ForwardAgent yes
# remote ports
LocalForward 9080 localhost:80
LocalForward 9443 localhost:443
LocalForward 3306 localhost:3306
LocalForward 8080 localhost:8080
LocalForward 8081 localhost:8081
LocalForward 4200 localhost:4200
LocalForward 4300 localhost:4300
LocalForward 4400 localhost:4400
LocalForward 4500 localhost:4500
쿠안도하고
ssh dev-marcelo
Automáticamente tengo todos los puertos especificados ya enlazados, si por ejemplo ejecuto
php -S localhost:8080 index.php en el servidor entonces puedo verlo en mi 브라우저 로컬 코모
로컬 호스트:8080
Otros sitios de referenceencia para entender los túneles en inglés:
Reference
이 문제에 관하여(터널레스 SSH), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/marceloandrade/tuneles-ssh-3ok1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)