分类 电脑 下的文章

为iredadmin添加密码保护 - Basic Authentication

现象:将nginx的Basic Authentication配置内容,添加到/etc/nginx/templates/iredadmin.tmpl页头或页尾,不起作用。

尝试:调整位置,可以Basic Authentication的配置内容添加到/etc/nginx/templates/iredadmin.tmpl文件中的python配置里。

如:

# Python scripts
location ~ ^/admin(.*) {                        # <- Changed
    rewrite ^/admin(/.*)$ $1 break;             # <- Changed

    include /etc/nginx/templates/hsts.tmpl;

    include uwsgi_params;
    uwsgi_pass unix:/run/uwsgi/iredadmin.socket;
    uwsgi_param UWSGI_CHDIR /var/www/iredadmin;
    uwsgi_param UWSGI_SCRIPT iredadmin;
    uwsgi_param SCRIPT_NAME /admin;             # <- Changed

    auth_basic           "Administrator’s Area";
    auth_basic_user_file /etc/apache2/.htpasswd; 

    # Access control
    #allow 127.0.0.1;
    #allow 192.168.1.10;
    #allow 192.168.1.0/24;
    #deny all;
}

参考:

Failed to write core file (error 14) - freebsd - libcrypto.so.7

现象:freebsd系统不能ssh,提示 failed to write core file for process sshd error 14。

尝试:手动尝试启动sshd,也是错误。运行如pkg,tar的命令,也是一样的错误提示。询问得知,出现问题前,曾尝试解压、安装一个软件。查看该软件的内容,有lib目录,估计错误将软件的lib文件覆盖了freebsd的系统关键文件了。再查看freebsd的/lib目录中,libcrypto.so.7的文件日期较新。最后在freebsd官方下载相应系统版本的base.txz文件,解压后将libcrypto.so.7放回到freebsd的lib目录中,sshd就能正常启动了。

参考:https://forums.freebsd.org/threads/shared-object-libcrypto-so-7-not-found.50488/

在宝塔环境中安装sqlsrv-5.6.1

centos7,宝塔7.4.8,nginx,php7.1

  1. 下载编译好,适合centos7的现成文件:https://github.com/Microsoft/msphpsql/releases
  2. 将下载好的文件解压,得到如 php_sqlsrv_71_nts.so 和 php_pdo_sqlsrv_71_nts.so 文件
  3. 在宝塔面板中,点击“文件”转到php7.1的扩展路径:/www/server/php/71/lib/php/extensions/no-debug-non-zts-20160303
  4. 将 php_sqlsrv_71_nts.so 和 php_pdo_sqlsrv_71_nts.so 两个文件上传到 /www/server/php/71/lib/php/extensions/no-debug-non-zts-20160303 目录
  5. 再在宝塔面板的“软件商店”里,找到php7.1,点击“设置”、“配置文件”,在配置文件内容的最末,添加以下两行来加载新添加的扩展:

    extension=php_sqlsrv_71_nts.so
    extension=php_pdo_sqlsrv_71_nts.so
  6. 然后在“php7.1管理”页的“服务”里点击“重载服务”,以让设置生效
  7. 如果php加载sqlsrv扩展时提示:libodbc.so.2: cannot open shared object file: No such file or directory in Unknown on line 0 请执行 yum -y install unixODBC 来安装unixODBC
  8. 如果php页面提示需要使用微软的ODBC驱动,可以下载和安装msodbcsql17,如 https://packages.microsoft.com/rhel/7/prod/msodbcsql17-17.6.1.1-1.x86_64.rpm

参考:

尝试用binlog还原mysql数据库数据

问题:无mysql数据库完整备份,但binlog齐全。想还原到指定时间的数据状态。

尝试:

  1. 先用mysqldump备份当前的数据,和将binlog文件复制到另外的路径
  2. 用mysqlbinlog查看各binlog的内容,估计出数据库是在什么时候创建的,存在哪(几)个binlog文件
  3. 从binlog中导出指定数据库到指定时间的所有查询,如

    mysqlbinlog --database=anqun --stop-datetime="2021-01-15 14:52:00" mysql-bin.000001 > anqun.sql
    mysqlbinlog --database=anqun --stop-datetime="2021-01-15 14:52:00" mysql-bin.000002 >> anqun.sql
    ...
  4. 然后在测试机里,将anqun.sql导入到mysql数据库里,验证数据。如果导入时提示 Duplicate entry '' for key 'PRIMARY' 之类的错误sql语句,可以用mysql带-f的参数跳过(忽略)

参考:

proxmox - debian 10 - 重启系统后无法连接 - auto - allow-hotplug

问题:在debian 10系统上安装proxmox,在创建linux bridge网络后重启机子,机子失联。

尝试:在proxmox管理界面创建linux bridge后,会自动更改/etc/network/interface的配置内容,如删除原网卡的allow-hotplug。如果这时没有将相应的网卡设置为自动启动autostart,那么重启机子后,机子会断网。

解决:将相应的网卡设置为自动启动(autostart)。

-# The loopback network interface
 auto lo
 iface lo inet loopback
 
-# The primary network interface
-allow-hotplug eno1
 iface eno1 inet static

proxmox-network-1.png

参考: