分类 Linux 下的文章

动态ipv6可简单分为有状态和无状态两类。
家中NAS没有公网ipv4地址,只能使用ipv6公网地址满足远程访问NAS的需求。
但无状态ipv6地址不适合绑定服务,因此只能用有状态的ipv6,后者的负作用是路由重启/重拨后,ipv6前辍不会自动更新,造成NAS失联。
为解决这个问题,手写一小段 shell 脚本,让系统每分钟进行一次。原理为:如果不能 ping 通 www.qq.com V6地址,就重启网卡,以重新获取有效的 ipv6 地址。

#!/bin/sh
PATH="$PATH":/usr/sbin
IF=ens18

ping6 www.qq.com -c 1

if [ $? -eq 0 ]; then
        exit 0
else
        ifdown $IF && ifup $IF ;ifup $IF
fi

生成方法

使用以下命令可以生成40位的随机密码:
openssl rand -bash64 30

原理解释

上面的命令为 openssl 随机生成 30 字节的二进制文件,但二进制文件对人类的读写不友好,所以采用 base64 编码方式对这 30 字节的随机文件进行编码,生成40位字符在A~Z,a~z,0~9,/,+,=范围的密码。

- 阅读剩余部分 -

#!/bin/bash
#脚本作用:从预设的“用户名:密码”组合文件中批量添加SAMBA用户。
#编写日期:2023-2-19

export PATH=/bin:/sbin:/usr/bin:/usr/sbin
for i in $(cat $1 |xargs)
    do
      USER=`echo $i | cut -f 1 -d ":"`
      PASSWD=`echo $i | cut -f 2 -d ":"`
      id $USER &>/dev/null
    if [ $? -eq 0 ]
      then
        echo "用户$USER已经存在!" 
      else
        echo "开始创建用户:$USER" 
        useradd -m -d /home/$USER -s /usr/sbin/nologin -g teacher $USER 
        echo $i | chpasswd
        echo -e "$PASSWD\n$PASSWD" | smbpasswd -a $USER && echo "$USER已成功添加为SAMBA用户。" || echo "用户$USER添加失败!"
    fi
done

开放端口映射端口用途
16881688KMS
222222SSH
40094009FRPS
4455445Samba
519814455Samba2