[vc_row el_class=”blog-info”][vc_column][vc_single_image source=”featured_image” img_size=”full” style=”vc_box_rounded”][vc_empty_space height=”40px”][vc_row_inner][vc_column_inner width=”1/6″][/vc_column_inner][vc_column_inner width=”2/3″][vc_column_text el_class=”font-weight-bold”]
Cómo configurar el servidor SFTP de AWS con AWS S3
Un tutorial sobre la configuración del servidor SFTP de AWS con AWS S3.
“Secure Shell (SSH) File Transfer Protocol (SFTP) es un protocolo de red utilizado para la transferencia segura de datos a través de Internet. El protocolo es compatible con la funcionalidad completa de seguridad y autenticación de SSH. Se usa ampliamente para intercambiar datos, incluida información confidencial, entre socios comerciales en una variedad de industrias, como servicios financieros, atención médica, venta minorista y publicidad.”
[/vc_column_text][vc_empty_space height=”40px”][/vc_column_inner][vc_column_inner width=”1/6″][/vc_column_inner][/vc_row_inner][vc_row_inner][vc_column_inner width=”1/6″][/vc_column_inner][vc_column_inner width=”2/3″][vc_column_text]
Hoy vamos a configurar un servidor SFTP de AWS utilizando AWS S3 y AWS Transfer Family. ¡Empecemos juntos!
1) En la consola de AWS Transfer Family, seleccione “Crear servidor”.

2) Elija SFTP.

3) Como proveedor de identidad, elija “Servicio administrado”. Para sus diferentes propósitos, puede utilizar las opciones de proveedor de AWS Directory Service o Custom Identity.

4) El servidor SFTP no debe ser de acceso público, pero debemos acceder a él desde el puerto 22. Para hacer esto, debemos configurar una VPC, una subred pública y una dirección IP elástica. Además, puede usar su propio nombre de host para el punto final de SFTP.

5) Debe definir un grupo de seguridad. La IP de origen debe ser su IP de VPN.


6) Para el dominio, estamos seleccionando AWS S3.

7) Configurar detalles adicionales. (No es necesario cambiar nada por ahora).

8) ¡Su servidor SFTP de AWS está en funcionamiento! Ahora, necesitamos crear un usuario SFTP para acceder.

9) Debe seleccionar un nombre de usuario, crear un rol de IAM para su acceso a S3 y seleccionar un depósito de AWS S3.

Su política de confianza de roles de IAM debería tener este aspecto:

Su política de IAM que está adjunta al rol debe configurarse así:
{“Version”: “2012–10–17”,“Statement”: [{“Sid”: “Test1”,“Action”: [“s3:ListBucket”,“s3:GetBucketLocation”],“Effect”: “Allow”,“Resource”: [“arn:aws:s3:::BUCKET_NAME”]},{“Sid”: “ Test2”,“Effect”: “Allow”,“Action”: [“s3:PutObject”,“s3:GetObject”,“s3:DeleteObjectVersion”,“s3:DeleteObject”,“s3:GetObjectVersion”],“Resource”: “arn:aws:s3:::BUCKET_NAME/*”}]}
10) Necesitamos crear una clave SSH usando ssh-keygen. Utilice este comando para crear una clave:
$ ssh-keygen -P “” -m PEM -f key_name

11) Abra el archivo key_name.pub y copie el texto y péguelo en la clave pública SSH.

12) Conecte su servidor SFTP con este comando:
$ sftp -i <your_private_key> <username>@<sftp_dns_host>

13) Intente enumerar su AWS S3 Bucket con ls.

14) Sube un archivo:


Solución de problemas
- Si recibe un error de “Permiso denegado” después de conectarse al servidor SFTP, verifique su permiso de usuario de la política y el rol de IAM.
- Está recibiendo “No se conoce tal host” y “Cierre de conexión”. errores cuando desea conectarse a su servidor SFTP, debe verificar su estado SFTP (debe estar en línea) y las configuraciones del grupo de seguridad.
- Si el punto final de su servidor SFTP no está configurado, verifique la configuración de su VPC y subred pública. La subred pública debe enrutarse a Internet Gateway y los nombres de host DNS de VPC y la resolución deben estar habilitadas.
¡Gracias por leer!
Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre Laravel:
- Hoja de ruta para desarrolladores de Nodejs 2022
- Simulando el entorno de AWS localmente con AWS Localstack
[/vc_column_text][/vc_column_inner][vc_column_inner width=”1/6″][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row][vc_row el_class=”social-info”][vc_column width=”1/6″][/vc_column][vc_column width=”2/3″][vc_row_inner][vc_column_inner width=”1/2″][vc_column_text][social_share_button themes=’theme1′][/vc_column_text][/vc_column_inner][vc_column_inner el_class=”youtube-inner-col” width=”1/2″][vc_column_text][likebtn theme=”youtube” lang=”auto” show_like_label=”0″ white_label=”1″ alignment=”right”][/vc_column_text][/vc_column_inner][/vc_row_inner][vc_row_inner el_class=”social-info-inner”][vc_column_inner width=”1/4″][vc_single_image image=”921″][/vc_column_inner][vc_column_inner width=”3/4″][vc_column_text]
Diego Pacheco
Ingeniero en Sitemas, MBA (Babson College). Desarrollador PHP/Java/JavaScript. Fundador & CEO de EpicStudio. Entusiasta de las tecnologías web (JavaScript, Vue, Laravel, AWS, Docker) Viajes, Negocios, Surf y Growth.[/vc_column_text][asvc_list_item icon_fontawesome=”fa fa-calendar-o” icon_size=”14px”]Programar una reunión[/asvc_list_item][/vc_column_inner][/vc_row_inner][/vc_column][vc_column width=”1/6″][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]
Recent Post
[/vc_column_text][lvca_posts_carousel posts_query=”size:3|order_by:rand|post_type:post” image_linkable=”true” image_size=”full” taxonomy_chosen=”post_tag” display_title=”true” display_post_date=”true” display_summary=”true” autoplay_speed=”3000″ animation_speed=”300″ display_columns=”3″ scroll_columns=”3″ gutter=”3″ tablet_display_columns=”2″ tablet_scroll_columns=”2″ tablet_gutter=”3″ tablet_width=”800″ mobile_display_columns=”1″ mobile_scroll_columns=”1″ mobile_gutter=”3″ mobile_width=”480″][vc_empty_space height=”20px”][/vc_column][/vc_row]
