maj de la configuration

This commit is contained in:
bvaudour 2020-07-22 11:24:43 +02:00
parent df4f2c07c1
commit 2dac13303d
20 changed files with 210 additions and 69 deletions

28
aliases/add_badips.elv Normal file
View file

@ -0,0 +1,28 @@
#alias:new add_badips e:echo
fn add_badips [@_args]{
use moi/util/ip
use moi/util/list
use moi/util/map
use moi/util/number
use str
local:f = ~/bad_ips.txt
local:ips = [ (cat $f) ]
local:m = (map:to-set $ips)
local:c = 0
each [e]{
local:cond = (and (not (has-key $m $e)) (ip:is-ipv4 $e))
if $cond {
echo $e ajoutée
c = (number:++ $c)
m[$e] = $nil
ips = [ (all $ips) $e ]
}
} $_args
if (> $c 0) {
ips = [ (list:sort $ip:cmp4~ $ips) ]
}
local:result = (str:join "\n" $ips)
echo $result > $f
echo $c' IPs ajoutées ('(count $ips)' au total)'
}

View file

@ -1,37 +1,36 @@
#alias:new clean_known_hosts e:cat
fn clean_known_hosts [@_args]{
use str
use moi/util/condition
use moi/util/list
use moi/util/ip
fn less [cmp e1 e2]{ < ($cmp $e1 $e2) 0 }
fn sort-host [e1 e2]{
local:i1 = (condition:set (ip:is-ipv4 $e1) 2 (condition:set (ip:is-ipv6 $e1) 1 0))
local:i2 = (condition:set (ip:is-ipv4 $e2) 2 (condition:set (ip:is-ipv6 $e2) 1 0))
local:i1 = (condition:set (ip:is-ip $e1) 1 0)
local:i2 = (condition:set (ip:is-ip $e2) 1 0)
if (!= $i1 $i2) {
< $i1 $i2
} elif (== $i1 0) {
<s $e1 $e2
} elif (== $i1 1) {
less $ip:cmp6~ $e1 $e2
} else {
less $ip:cmp4~ $e1 $e2
less $ip:cmp~ $e1 $e2
}
}
local:khosts = [&]
cat ~/.ssh/known_hosts | eawk [_ hosts @rest]{
local:key = (joins ' ' $rest)
local:key = (str:join ' ' $rest)
if (not (has-key $khosts $key)) {
khosts[$key] = [&]
}
splits , $hosts | each [h]{
str:split , $hosts | each [h]{
khosts[$key][$h] = $nil
}
}
local:lines = [(keys $khosts | each [key]{
local:hosts = (keys $khosts[$key] | list:sort $sort-host~ | joins ,)
put $hosts $key | joins ' '
local:hosts = (keys $khosts[$key] | order &less-than=$sort-host~ | str:join ,)
put $hosts $key | str:join ' '
})]
echo (joins "\n" $lines) > ~/.ssh/known_hosts
echo (str:join "\n" $lines) > ~/.ssh/known_hosts
}

2
aliases/dig.elv Normal file
View file

@ -0,0 +1,2 @@
#alias:new dig e:dig +noall +answer
fn dig [@_args]{ e:dig +noall +answer $@_args }

69
aliases/digall.elv Normal file
View file

@ -0,0 +1,69 @@
#alias:new digall e:dig ANY +noall +answer
fn digall [@_args]{
use moi/util/list
use str
local:default_records = [
A
AAAA
CNAME
PTR
TXT
MX
SRV
NAPTR
NS
SOA
]
local:records = []
local:servers = []
local:flags = [
+noall
+answer
]
local:domains = []
fn init []{
each [e]{
if (is $e[0] '+') {
flags = [ (all $flags) $e ]
} elif (is $e[0] @) {
servers = [ (all $servers) $e ]
} elif (list:includes $e $default_records) {
records = [ (all $records) $e ]
} else {
domains = [ (all $domains) $e ]
}
} $_args
if (== (count $records) 0) {
records = $default_records
}
}
fn digr [d @args]{
local:results = [ (each [r]{
e:dig $@args $r $d $@flags
} $records) ]
results = [ (list:remove-duplicate $results) ]
echo (str:join "\n" $results)
}
fn digs [s d]{
echo (styled $s bright-yellow)
digr $d $s
}
fn digd [d]{
echo (styled 'Domaine: '$d bright-green)
if (> (count $servers) 0) {
each [s]{
digs $s $d
} $servers
} else {
digr $d
}
}
init
each $digd~ $domains
}

View file

@ -3,7 +3,6 @@ fn ip-of [@_args]{
use str
use moi/util/condition
use moi/util/ip
use moi/util/list
fn less [cmp e1 e2]{ < ($cmp $e1 $e2) 0 }
@ -79,7 +78,7 @@ fn ip-of [@_args]{
if (has-key $hosts $d) {
exists = $true
echo (styled ' local:' bright-yellow)
keys $hosts[$d] | list:sort $sort-ip~ | each [ip]{
keys $hosts[$d] | order &less-than=$sort-ip~ | each [ip]{
echo ' - '$ip
}
}
@ -88,7 +87,7 @@ fn ip-of [@_args]{
local:info = $remote[$d]
echo (styled ' remote:' bright-yellow)
echo ' IPs:'
keys $info[ips] | list:sort $sort-ip~ | each [ip]{
keys $info[ips] | order &less-than=$sort-ip~ | each [ip]{
echo ' - '$ip
}
echo ' Resolvers: '$info[resolvers]

1
aliases/xaa Normal file
View file

@ -0,0 +1 @@