sed Образец

Я все время возвращаюсь к красивому ответу @Jander в надежде на декодер копирования и вставки, когда сталкиваюсь с подобным:

user@machine:~$ grep Sig...: /proc/18475/status
SigPnd: 0000000000000000
SigBlk: fffffffe7dfbfaff
SigIgn: 0000000000001000
SigCgt: 0000000182006e47
user@machine:~$ 

Думаю, я нужно что-то придумать ... скажите:

user@machine:~$ ruby -wn - /proc/18475/status <<'EOF'
if $_.match(/Sig(Pnd|Blk|Ign|Cgt):\s([0-9a-f]{16})/) == nil
  next
end
field = $1
mask = $2.to_i(16)
names = []
Signal.list().each_pair() {
  |name, number|
  if number == 0
    # "EXIT" => 0
    next
  end
  if (mask & (1 << (number - 1))) == 0
    next
  end
  names << name
}
puts("Sig#{field}: #{names.join(" | ")}")
EOF
SigPnd: 
SigBlk: HUP | INT | QUIT | ILL | TRAP | IOT | ABRT | FPE | BUS | SYS | PIPE | ALRM | TERM | URG | TSTP | CONT | CHLD | CLD | TTIN | TTOU | IO | XCPU | XFSZ | PROF | WINCH | USR1 | USR2 | PWR | POLL
SigIgn: PIPE
SigCgt: HUP | INT | QUIT | BUS | SEGV | ALRM | TERM | VTALRM | USR1 | USR2
user@machine:~$ 

Я хотел, чтобы это было несколько разборчиво, но из-за этого вызывать его было немного неудобнее, чем хотелось бы, поэтому, благодаря предложению @alanc, я сохраню его как ~ / bin / psig.

1
18.05.2018, 09:02
1 ответ

What commands have been performed on the local FTP server?

Para habilitar el inicio de sesión de FTP en un sistema AIX, debe reconfigurar el FTP (al que llama inetd en su caso )para enviar registros de depuración a syslog y configurar syslog para guardar esos registros en un archivo.

  1. Edite /etc/inetd.confy agregue -dal final de la línea ftpd:

    ftp     stream  tcp6    nowait  root    /usr/sbin/ftpd  ftpd -d
    
  2. Actualizar inetd:refresh -s inetd

  3. Edite /etc/syslog.confy agregue una línea para daemon.debugpara guardar los registros en algún lugar:

    daemon.debug /var/log/ftp.log
    
  4. Cree un archivo para que syslog lo escriba:touch /var/log/ftp.log

  5. Actualizar syslogd:refresh -s syslogd

Syslog enviará los registros de cualquier demonio a este archivo, por lo que querrá filtrarlo con grep, quizás:grep 'daemon:debug ftpd' /var/log/ftp.log.

Los comandos que se enviaron a través de FTP se registrarán con la cadena command:; aquí hay una muestra:

May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: command: USER username-here^M
May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: <--- 331
May 18 10:13:35 ftpserver daemon:debug ftpd[3932700]: Password required for username-here.
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: command: PASS
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: <--- 230-
May 18 10:13:42 ftpserver daemon:debug ftpd[3932700]: Last login: Fri May 18 10:13:02 EDT 2018 on ftp from ftpclient.example.com
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 230
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: User username-here logged in.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: PORT 10,1,1,1,229,54^M
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 200
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: PORT command successful.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: command: LIST^M
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 150
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Opening data connection for /bin/ls.
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: <--- 226
May 18 10:13:43 ftpserver daemon:debug ftpd[3932700]: Transfer complete.

¡Sí, esas M de Control -aparecen como tales en los registros!


What commands have been performed by the local FTP client to other servers?

Dado que las aplicaciones pueden realizar sus propias acciones de FTP, sería difícil encapsular todos los programas cliente posibles (como/usr/bin/ftp)para detectar esto. La mejor apuesta es configurar el servidor FTP remoto para registrar los comandos, tal como lo hicimos anteriormente. Lo segundo -mejor sería configurar el cortafuegos de AIX para permitir -y -registrar el tráfico destinado al puerto 21.

Asegúrese de tener instalado el conjunto de archivos ipsec:

lslpp -L bos.net.ipsec.rte; echo $?

Debería mostrar un conjunto de archivos listado con un código de retorno de 0, y no:

lslpp: 0504-132  Fileset bos.net.ipsec.rte not installed.

Asegúrese de que los dispositivos ipsec estén habilitados:

lsdev -l ipsec_v4

Debería obtener una línea de regreso que diga "Disponible", no "Definido" o ninguna línea de regreso.

Si no hubo salida o el dispositivo fue "Definido":

  1. ejecutarsmitty ipsec4
  2. elija Start/Stop IP Security,
  3. elija Start IP Security,
  4. deje los valores predeterminados en Now and After RebootyDeny All Non_Secure = no
  5. pulsa Intro.

El dispositivo ipsec _v4 ahora debería mostrarse como "Disponible".

Cree un archivo de registro con:touch /var/log/ipsec.log.

Actualizar registro del sistema:

echo "local4.debug /var/log/ipsec.log rotate size 100k files 4" >> /etc/syslog.conf
refresh -s syslogd

Agregar una regla para permitir y registrar el tráfico destinado al puerto 21:

# -v 4 == IPv4
# -n 2 == add this after the first rule
# -a P == permit
# -O eq == destination port *equals* 21
# -P 21 == destination port 21
# -w O == outbound connections; change this to “B” to log in both directions
# -c tcp == TCP protocol
# -s, -m, -d, -M = source/dest IP & mask (any)
# -l Y = Log it
# -r L = applies only to packets destined or originated from the local host
genfilt -v 4 -n 2 -a P -O eq -P 21 -w O -c tcp -s 0.0.0.0 -m 0.0.0.0 -d 0.0.0.0 -M 0.0.0.0  -l Y -r L -D “allow and log port 21 traffic”

Iniciar registro:

mkfilt -g start

Activar el conjunto de reglas:

mkfilt -u

Espere a que se produzcan las conexiones FTP salientes, luego:

grep ipsec_logd /var/log/ipsec.log | grep DP:21

Verá las direcciones IP de origen y destino para las conexiones FTP salientes junto con las marcas de tiempo, como:

May 18 11:29:40 localhost local4:info ipsec_logd: #:0 R:p  O:10.1.1.1 S:10.1.1.1 D:10.2.2.2 P:tcp SP:55091 DP:21 R:l I:en0 F:n T:0 L:0

No registra el contenido(comandos )de la sesión FTP, pero tendrá marcas de tiempo y destinos. Tenga en cuenta que se registra cada paquete de cada conexión FTP.


Referencias:

7
27.01.2020, 23:14

Теги

Похожие вопросы