Bloqueo de direcciones IP chinas

9

Recientemente verifiqué uno de los archivos auth.log de mis servidores y noté una actividad muy sospechosa. Recientemente cerré el demonio ssh de mi servidor, por lo que los registros finalizan el 22 de enero, pero lo que noté después de revisar el archivo de registro fue que todas las direcciones IP son chinas.

Aquí están las últimas 10 líneas de intentos fallidos de inicio de sesión:

$ cat auth.log | grep Failed | tail -n10
Jan 22 13:42:14 servername sshd[10306]: Failed password for root from 183.3.202.104 port 10894 ssh2
Jan 22 13:42:18 servername sshd[10306]: message repeated 2 times: [ Failed password for root from 183.3.202.104 port 10894 ssh2]
Jan 22 13:42:28 servername sshd[10365]: Failed password for root from 183.3.202.104 port 34140 ssh2
Jan 22 13:42:32 servername sshd[10365]: message repeated 2 times: [ Failed password for root from 183.3.202.104 port 34140 ssh2]
Jan 22 13:42:44 servername sshd[10423]: Failed password for root from 183.3.202.104 port 56290 ssh2
Jan 22 13:42:48 servername sshd[10423]: message repeated 2 times: [ Failed password for root from 183.3.202.104 port 56290 ssh2]
Jan 22 13:43:03 servername sshd[10511]: Failed password for root from 183.3.202.104 port 64153 ssh2
Jan 22 13:43:08 servername sshd[10511]: message repeated 2 times: [ Failed password for root from 183.3.202.104 port 64153 ssh2]
Jan 22 13:43:18 servername sshd[10569]: Failed password for root from 183.3.202.104 port 33472 ssh2
Jan 22 13:43:23 servername sshd[10569]: message repeated 2 times: [ Failed password for root from 183.3.202.104 port 33472 ssh2]

Al buscar direcciones IP que no sean 183.3.202.104, las líneas se convierten en:

$ cat auth.log | grep Failed | grep -v 183.3.202.104 | tail -n10
Jan 22 02:36:41 servername sshd[31074]: message repeated 5 times: [ Failed password for root from 221.203.142.71 port 33746 ssh2]
Jan 22 02:36:54 servername sshd[31388]: Failed password for root from 221.203.142.71 port 57792 ssh2
Jan 22 02:37:13 servername sshd[31388]: message repeated 5 times: [ Failed password for root from 221.203.142.71 port 57792 ssh2]
Jan 22 02:37:25 servername sshd[31698]: Failed password for root from 221.203.142.71 port 55440 ssh2
Jan 22 02:37:41 servername sshd[31698]: message repeated 5 times: [ Failed password for root from 221.203.142.71 port 55440 ssh2]
Jan 22 02:37:58 servername sshd[31918]: Failed password for root from 221.203.142.71 port 50225 ssh2
Jan 22 02:38:13 servername sshd[31918]: message repeated 5 times: [ Failed password for root from 221.203.142.71 port 50225 ssh2]
Jan 22 04:55:23 servername sshd[22179]: Failed password for invalid user support from 113.160.158.43 port 61614 ssh2
Jan 22 09:36:40 servername sshd[4160]: Failed password for invalid user a from 115.182.249.11 port 53046 ssh2
Jan 22 09:36:52 servername sshd[4204]: Failed password for invalid user oracle from 115.182.249.11 port 56673 ssh2

En primer lugar, me gustaría confirmar que esto es realmente un ataque; No estoy muy familiarizado con la gestión de la seguridad del sistema. En segundo lugar, me gustaría saber si hay alguna forma de bloquear todas las direcciones IP chinas; mi servidor hasta ahora se ha utilizado únicamente en Estados Unidos y no tiene nada que ver con China.

    
pregunta Honesty 25.01.2016 - 15:09
fuente

2 respuestas

8

Puede probar lista de bloqueo de Wizcraft , y formatearla en consecuencia. En el momento de mi publicación, esta lista de bloqueo se actualizó por última vez el jueves 24 de diciembre de 2015 11:01:52 MST. Tenga en cuenta que Taiwán no es parte de China continental, pero Hong Kong ahora pertenece y está controlado por Beijing.

Si solo usas tu servidor en América exclusivamente, puedes usar todas de esas reglas para bloquear a los atacantes. De lo contrario, elimine los que no desea y guarde los que haga.

También tenga en cuenta que esto no impedirá que los atacantes se conecten a una VPN en el país de su elección, y nuevamente intenten iniciar sesión como root. Esto es simplemente una curita.

EDIT - BadSkillz y Jenny D han recomendado fail2ban . Probablemente, esta será una mejor solución en general, pero probablemente no se dañe con ambos métodos.

    
respondido por el Mark Buffalo 25.01.2016 - 15:33
fuente
3

También me molesta ver estos intentos de inicio de sesión con fuerza bruta y, lamentablemente, sí, son en su mayoría de China (espionaje de 'aspiradora'). La buena noticia es que la solución es sencilla. que luego le permite deshabilitar las contraseñas como método de inicio de sesión

Primero crea tus claves SSH seguras:

vea doc para linux / OSX / Windows enlace

en un terminal en tu caja local

ssh-keygen -t rsa -b 4096 -C "youremailaddr@example.com"

esto le pedirá una contraseña (recuérdelo) ... creará un par de archivos privados y públicos

private file  /home/mylogin/.ssh/id_rsa_supermoon
public file   /home/mylogin/.ssh/id_rsa_supermoon.pub

Estos archivos ahora son locales para su máquina ... solo copie el archivo público en su servidor remoto y colóquelo en el archivo (o adjúntelo a)

/home/mylogin/.ssh/authorized_keys

asegúrese de que tenga los permisos de archivo adecuados en el host remoto

chmod 700 /home/mylogin/.ssh
chmod 600 /home/mylogin/.ssh/authorized_keys

Ahora vuelva a su host local y haga clic para iniciar sesión en su caja remota

# only need to issue this set of 3 cmds once on same terminal
export REMOTE_IP=1.2.3.4 # your remote host IP
eval $(ssh-agent)
ssh-add ~/.ssh/id_rsa_supermoon  # enter same password as above

ssh mylogin@${REMOTE_IP}

* Inicio de Opcional ------------ *

PS: se ha cansado de las solicitudes de contraseña en todos los ssh y luego coloque esto en su ~ / .bashrc local

if [ ! -S ~/.ssh/ssh_auth_sock ]; then
  eval $(ssh-agent)
  ln -sf "$SSH_AUTH_SOCK" ~/.ssh/ssh_auth_sock
fi
export SSH_AUTH_SOCK=~/.ssh/ssh_auth_sock
ssh-add -l | grep "The agent has no identities" && ssh-add ~/.ssh/id_rsa_supermoon

------------ Fin de la Opcional

IMPORTANTE: confirme que puede iniciar sesión correctamente usando ssh ... SOLAMENTE luego en su host remoto edite el archivo de configuración ssh

sudo vi /etc/ssh/sshd_config  
# PasswordAuthentication yes   # we do NOT want yes if ssh keys work
PasswordAuthentication no

para activar el cambio del archivo de configuración en el host remoto, simplemente rebote el servidor ssh:

sudo service sshd restart  # (systemd ONLY) this does not kill your login session

Hecho: inmediatamente no verá más intentos brutos de inicio de sesión ya que su host remoto ahora ignora los intentos de contraseña y esos guttersnipes se arrastrarán para molestar al servidor desprotegido de otra persona

    
respondido por el Scott Stensland 19.11.2016 - 04:18
fuente

Lea otras preguntas en las etiquetas