#para deshabilitar el swapfile
systemctl disable dphys-swapfile
#para deshabilitar el swapfile
systemctl disable dphys-swapfile
Basado en :
Instalar un certificado SSL gratis de Let’s Encrypt en
lighttpd
https://geekland.eu/instalar-certificado-ssl-gratis-lets-encrypt-lighttpd/
#Para
añadir el repositorio Backports en Raspbian Stretch hay que ejecutar el
siguiente comando en la terminal:
sudo sed -i "$ a\deb http://ftp.debian.org/debian stretch-backports
main" /etc/apt/sources.list
sudo apt-get update
sudo apt-get install certbot -t stretch-backports -y --force-yes
sudo apt-get install lighttpd
sudo certbot certonly --webroot -w /var/www/html/ -d dominio.net
(en mi caso fue pbeltran.ddns.net)
sudo cat /etc/letsencrypt/live/dominio.net/cert.pem
/etc/letsencrypt/live/dominio.net/privkey.pem >
/etc/letsencrypt/live/dominio.net/web.pem
#CREAR UNA CLAVE PARA REFORZAR
LA SEGURIDAD DEL INTERCAMBIO DE CLAVES
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
sudo nano
/etc/lighttpd/lighttpd.conf
#agregar este texto al final
# Activar y configurar https en
el servidor
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile =
"/etc/letsencrypt/live/dominio.net/web.pem"
ssl.ca-file =
"/etc/letsencrypt/live/dominio.net/chain.pem"
server.name = "dominio.net" # Domain Name OR Virtual
Host Name
ssl.use-sslv2 = "disable"
ssl.use-sslv3 = "disable"
ssl.use-compression = "disable"
ssl.cipher-list =
"EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"
ssl.dh-file = "/etc/ssl/certs/dhparam.pem"
ssl.ec-curve =
"secp384r1"
}
# forzar peticiones https
$HTTP["scheme"] == "http" {
# capture vhost name with regex conditiona -> %0 in
redirect pattern
# must be the most inner block to the redirect rule
$HTTP["host"] =~ ".*" {
url.redirect = (".*" =>
"https://%0$0")
}
}
Forzar HTTP Strict Transport Security
setenv.add-response-header = ( "Strict-Transport-Security"
=> "max-age=15768000; includeSubdomains" )
#Acto seguido comprueben que el
modulo setenv esté activado. Para ello deberán comprobar que el fichero que
estamos editando contenga el siguiente código:
server.modules = (
#....
"mod_setenv",
#....
)
sudo service lighttpd restart
RENOVACIÓN DEL CERTIFICADO SSL
DE LET’S ENCRYPT
sudo certbot renew --dry-run
basado en
https://blog.desdelinux.net/como-saber-que-intentos-fallidos-de-ssh-ha-tenido-nuestro-servidor/
https://www.jesusamieiro.com/ssh-ver-los-fallos-en-los-intentos-de-acceso-en-debian/
cat /var/log/auth* | grep Failed
cat /var/log/auth.log | grep Accepted*
basado en: https://www.entredevyops.es/posts/ssh-2fa.html
sudo
apt-get install -y libpam-google-authenticator
sudo nano /etc/pam.d/sshd
#y agregar
auth required pam_google_authenticator.so
sudo nano /etc/ssh/sshd_config
ChallengeResponseAuthentication
yes
sudo
service sshd restart
#al usuario al cual le quieres activar el 2FA
google-authenticator
recomiendo crear un archivo Ps1 ademas para llamarlo via cmd se debe agregar este codigo
powershell
-ExecutionPolicy Bypass -File D:\Proyectos\correo.txt.ps1
Este es el contenido para el archivo PS1
$EmailTo = "CuentaDestino@gmail.com"
$EmailFrom = "CuentaOrigen@gmail.com"
$Emailuser = "username@gmail.com"
$Emailpass = "XXXXXXXXX"
$Subject = "Subject"
$Body = "Test Body"
$SMTPServer = "smtp.gmail.com"
$filenameAndPath = "D:\BK\17-03-2019-archivos-bk.RAR"
$SMTPMessage = New-Object System.Net.Mail.MailMessage($EmailFrom,$EmailTo,$Subject,$Body)
$attachment = New-Object System.Net.Mail.Attachment($filenameAndPath)
$SMTPMessage.Attachments.Add($attachment)
$SMTPClient = New-Object System.Net.Mail.SmtpClient($SMTPServer, 587);
$SMTPClient.EnableSSL = $true
$SMTPClient.credentials = New-Object System.Net.NetworkCredential($Emailuser, $Emailpass);
$SMTPClient.Send($SMTPMessage)