Get-ChildItem -Path "C:\Users\linux\Desktop\*.doc" | Where-Object CreationTime -GT (Get-Date).AddHours(-8) | Compress-Archive -DestinationPath "C:\BackUp\mis-docs.zip"
En este blog voy dejando información que me suelo encuentro en Internet. Para poder tenerla a mano siempre, al igual que otra gente del palo.. Los temas están relacionados con informática, programación, desarrollo web y móvil.
2018-12-28
BackUp con PowerShell Copiar archivos modificados en las ultimas 8hs y guardarlos en un Zip
Hola gentes acá dejo un simple linea de comando para PowerShell, que permite buscar los archivos que fueron modificados las ultima 8 horas en un PATH X y comprimirlo en un Destino X en formato ZIP.
2018-08-22
Configurar Server OpenSSH en Debian 9.5 con PublicKey tipo ED25519 que es mas segura que RSA y conectar con Putty
Hola Amigos acá les dejo todo lo que hay que hacer para configurar el Server OpenSSH en Debian 9.5
En estos pasos damos por entendido que el usuario que esta realizando los pasos es "user1" y en algunos momento "root" para otros cambios. Y tambien esta mis PC es la que tiene instalado el Server OpenSSH an que queremos entrar desde otro PC con Linux o Putty con Windows
Linux donde instalamos el server OpenSSH
Paso 1)
Ver si tenes instala Server OpenSSH
Si no existe el servicio, es porque no esta instalado, si existe pasa al paso 3
Paso 2)
Instalar Server SSH ponemos todo "YES"
Paso 3)
Configurar el server para poder entrar solo con clave y cambiar alguna parámetros por seguridad.
En estos pasos damos por entendido que el usuario que esta realizando los pasos es "user1" y en algunos momento "root" para otros cambios. Y tambien esta mis PC es la que tiene instalado el Server OpenSSH an que queremos entrar desde otro PC con Linux o Putty con Windows
Linux donde instalamos el server OpenSSH
Paso 1)
Ver si tenes instala Server OpenSSH
su root /etc/init.d/ssh status
Si no existe el servicio, es porque no esta instalado, si existe pasa al paso 3
Paso 2)
Instalar Server SSH ponemos todo "YES"
su root apt install openssh-server
Paso 3)
Configurar el server para poder entrar solo con clave y cambiar alguna parámetros por seguridad.
echo '' > /var/log/sshd_bannersCambiar el archivo sshd_config con
su root nano /etc/ssh/sshd_config
Protocol 2 # <= inserta si no esta en el archivo
Port 22 # <= Por otro numero distinto al estándar eje 2822
PermitRootLogin no
AllowUsers user1 user2 # <= lista de usuario en el sistema /home/xxx que van a entrar por ssh
PubkeyAuthentication yes
LoginGraceTime 2m
PasswordAuthentication no
PermitEmptyPasswords no
StrictModes yes
UsePAM no
X11Forwarding no # <= Solo si trabajamos en modo consola
PermitTunnel no
UsePrivilegeSeparation sandbox
PrintMotd no
PrintLastLog yes
Banner /var/log/sshd_banners.log
Paso 4)
Generar la clave publica y privada de tipo ED25519 y es recomendable poner un password para mas seguridad a la key que vamos a generar, si alguien te la roba también tiene que saber el password para poder utilizarla. Damos todo entre y ponemos un password o lo dejamos en blanco.
Generar la clave publica y privada de tipo ED25519 y es recomendable poner un password para mas seguridad a la key que vamos a generar, si alguien te la roba también tiene que saber el password para poder utilizarla. Damos todo entre y ponemos un password o lo dejamos en blanco.
ssh-keygen -t ed25519
Paso 5)
Ya tenemos los dos archivos generado en nuevos directorio /home/user1/.ssh/
id_ed25519 <= privada
id_ed25519.pub <= publico
Paso 6)
Crear el archivo "authorized_keys" que va en ese mismo directorio que va ir a buscar el mismo Server OpenSSH, copiamos la key publica a authorized_keys.
cp -p /home/user1/.ssh/id_ed25519.pub /home/user1/.ssh/authorized_keys
Paso 7)
Reiniciamos el servicio de OpenSSH, para que tome todo los cambios.
su root /etc/init.d/ssh restart
Paso 8)
En la misma Pc que tiene el server SSH que es a donde queremos entrar desde windows con Putty por ejemplo. Ya esta listo, el server linux. Lo que nos queda hacer es sacar la clave privada "id_ed25519"
Sacar la key privada para copiarla y llevar a PuTTYgen.
cat /home/user1/.ssh/id_ed25519
Paso 9)
Copiamos todo lo que salio por pantalla, lo guardamos en un archivo key-user1-pri.ppk y pegamos dentro todo.
-----BEGIN OPENSSH PRIVATE KEY-----
b3Bsasasasadwfrrfrferwfewfefewfewcxzffgfdasfsd
........
........
7owz/DzjZrPx1ABOSWlsaskakjsakljfiedGLg/m0=
........
........
7owz/DzjZrPx1ABOSWlsaskakjsakljfiedGLg/m0=
-----END OPENSSH PRIVATE KEY-----
Windows Putty
Paso 10)
Abrimos PuTTYgen => "Load" y buscar el archivo creado antes como ejemplo "key-user1-pri.ppk"
le ponemo el password si lo pide.
Aceptamos el mensaje que muestra el programa.
Y después marcamos "ED25519"
Cuando este marcado, apretar el botón "Save private key" y se puede pisar el archivo cargado o crear una nuevo.
Paso 11)
Abrimos Putty y poner
IP del server linux a conectar
Cambiar el puerto si es distinto a 22
Connection => Data => Auto-login poner el nombre del usuario del key "user1"
Connection => SSH => Auth => Private key ... buscar el archivo nuevo reformatiado con PuTTYgen
Volvemos a Session => Saved Sessions, ponemos un nombre y click en "Save"
Y por ultimo "Open"
Y listo tendría que poder entrar al server OpenSSH sin problema, si tu key tiene password te la va a pedir, si no tiene entrar directo al server.
2018-01-17
Configurar Google Cloud AppEngine + PHP Flex + CakePHP 3.5.*
Como configurar CakePHP 3.5 dentro de Google Cloud con AppEngine (PHP Flex) y me costo mucho por eso dejo acá los pasos a seguir con la versión 3.5.*.
Primero pasos entrar a la consola shell de google por el navegador y pone estas lineas para instalar composer en AppEngine:
Listo, ya poder ejecutar composer en la consola
Después hay que bajar cakephp 3.5.* y sus dependencias con composer
Editar el archivo CK35/composer.json y agregar la extencion intl que es requerida para que la active AppEngine en el Deploy de manera automatica por Google Cloud
Crear un archivo en CK35/app.yaml para activar el entorno PHP Flex, indicar la carpeta root publica, el archivo por el que pasan todas las llamas, carpeta estaticos que son publicas. Y variables del sistema que pueden ser leidas por PHP, para configurar la DBs, Debug, etc.. esto ultimo es a gusto.
Con esto, ya estamos listo para ejecutar el deploy dentro de la carpeta CK35 donde esta el app.yaml
Le comento que hay que comentar en bootstrap.php la linea que carga los plugins que son instalados por composer para DEV ya que cuando se hace un DEPLOY no van a estar disponible los archivos y va da error que no encuentra los archivos, este error tonto puede hacer buscar el problema por un rato. Un ejemplo es el Plugin DebugKit que es un requerimiento DEV para composer.
O manejar de manera correcta la variable de entorno y poder CAKEPHP_DEBUG = '0' para que los plugin que se cargan para DEV no se intenten cargar después de hacer el DEPLOY
Primero pasos entrar a la consola shell de google por el navegador y pone estas lineas para instalar composer en AppEngine:
mkdir -p ${HOME}/bin php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === rtrim(file_get_contents('https://composer.github.io/installer.sig'))) { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" php composer-setup.php --filename=composer --install-dir=${HOME}/bin export PATH=${HOME}/bin:${PATH}
Listo, ya poder ejecutar composer en la consola
composer ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.2.0 2018-01-17 01:28:52 ... ...
Después hay que bajar cakephp 3.5.* y sus dependencias con composer
composer self-update && composer create-project --no-dev --ignore-platform-reqs --prefer-dist cakephp/app CK35 3.5.*
Editar el archivo CK35/composer.json y agregar la extencion intl que es requerida para que la active AppEngine en el Deploy de manera automatica por Google Cloud
"require": {
"php": ">=5.6",
"ext-intl": "*",
"cakephp/cakephp": "3.5.*",
.....,
.....,
},
......
.....
Crear un archivo en CK35/app.yaml para activar el entorno PHP Flex, indicar la carpeta root publica, el archivo por el que pasan todas las llamas, carpeta estaticos que son publicas. Y variables del sistema que pueden ser leidas por PHP, para configurar la DBs, Debug, etc.. esto ultimo es a gusto.
runtime: php env: flex runtime_config: document_root: webroot front_controller_file: index.php handlers: - url: /css static_dir: webroot/css - url: /img static_dir: webroot/img - url: /js static_dir: webroot/js - url: /favicon\.ico static_files: webroot/favicon.ico upload: webroot/favicon.ico - url: /.* script: index.php env_variables: # Uncomment the following to enable debug mode. CAKEPHP_DEBUG: '1' # If connecting via TCP/IP to Google Cloud SQL PROD_DB_HOSTNAME: "__PROD_DB_HOSTNAME__" PROD_DB_PORT: "__PROD_DB_PORT__" # If connecting via App Engine to Google Cloud SQL PROD_DB_UNIXSOCKET: "__PROD_DB_SOCKET__" PROD_DB_USERNAME: "__PROD_DB_USERNAME__" PROD_DB_PASSWORD: "__PROD_DB_PASSWORD__" PROD_DB_DATABASE: "__PROD_DB_DATABASE__" # Change below to match your settings for local development. # If connecting to MySQL using TCP/IP DEV_DB_HOSTNAME: "__DEV_DB_HOSTNAME__" DEV_DB_PORT: "__DEV_DB_PORT__" # If connecting to MySQL using sockets. DEV_DB_UNIXSOCKET: "__DEV_DB_SOCKET__" DEV_DB_USERNAME: "__DEV_DB_USERNAME__" DEV_DB_PASSWORD: "__DEV_DB_PASSWORD__" DEV_DB_DATABASE: "__DEV_DB_DATABASE__"
Con esto, ya estamos listo para ejecutar el deploy dentro de la carpeta CK35 donde esta el app.yaml
CK35/gcloud app deploy
Le comento que hay que comentar en bootstrap.php la linea que carga los plugins que son instalados por composer para DEV ya que cuando se hace un DEPLOY no van a estar disponible los archivos y va da error que no encuentra los archivos, este error tonto puede hacer buscar el problema por un rato. Un ejemplo es el Plugin DebugKit que es un requerimiento DEV para composer.
O manejar de manera correcta la variable de entorno y poder CAKEPHP_DEBUG = '0' para que los plugin que se cargan para DEV no se intenten cargar después de hacer el DEPLOY
Suscribirse a:
Entradas (Atom)