首页
统计
在线电影
虎牙直播
更多
壁纸
友情链接
留言板
关于
推荐
KMS服务
二维码生成
自用网盘
艾米库
Search
1
Bitwarden 服务端搭建记录(项目已经改名为:vaultwarden)
441 阅读
2
VPS常用测试脚本合集
414 阅读
3
自建云相册PhotoPrism
382 阅读
4
Debian10开启ssh远程登录
367 阅读
5
centos利用crontab设置定时任务
353 阅读
默认分类
登录
Search
标签搜索
Bitwarden
服务端
配置
防火墙
PhotoPrism
John
累计撰写
7
篇文章
累计收到
0
条评论
首页
栏目
默认分类
页面
统计
在线电影
虎牙直播
壁纸
友情链接
留言板
关于
推荐
KMS服务
二维码生成
自用网盘
艾米库
搜索到
7
篇与
默认分类
的结果
2021-10-11
UFW防火墙简单设置
ufw是一个主机端的iptables类防火墙配置工具,比较容易上手。一般桌面应用使用ufw已经可以满足要求了。安装方法sudo apt-get install ufw使用方法启用sudo ufw enable sudo ufw default deny作用:开启了防火墙并随系统启动同时关闭所有外部对本机的访问(本机访问外部正常)。关闭sudo ufw disable查看防火墙状态sudo ufw status开启/禁用相应端口或服务举例sudo ufw allow 80 #允许外部访问80端口 sudo ufw delete allow 80 #禁止外部访问80 端口 sudo ufw allow from 192.168.1.1 #允许此IP访问所有的本机端口 sudo ufw deny smtp #禁止外部访问smtp服务 sudo ufw delete allow smtp #删除上面建立的某条规则 sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22 #要拒绝所有的TCP流量从10.0.0.0/8 到192.168.0.1地址的22端口 #可以允许所有RFC1918网络(局域网/无线局域网的)访问这个主机(/8,/16,/12是一种网络分级): sudo ufw allow from 10.0.0.0/8 sudo ufw allow from 172.16.0.0/12 sudo ufw allow from 192.168.0.0/16推荐设置sudo apt-get install ufw sudo ufw enable sudo ufw default deny这样设置已经很安全,如果有特殊需要,可以使用sudo ufw allow开启相应服务。
2021年10月11日
39 阅读
0 评论
0 点赞
2021-10-11
自建云相册PhotoPrism
在Github上看到了PhotoPrism这个项目,使用Golang开发,TensorFlow进行照片分类,支持WebDAV协议,并且已经有10多k的star了。Photoprism的搭建我选择用Docker-Compose的方案,官方有具体的教程 https://docs.photoprism.org/getting-started/docker-compose/ 这里简单陈述下步骤:下载配置文件# 路径仅供参考 mkdir /home/ubuntu/photoprism cd /home/ubuntu/photoprism wget https://dl.photoprism.org/docker/docker-compose.yml vi /home/ubuntu/photoprism/docker-compose.yml修改配置内容version: '3.5' services: photoprism: # 使用预览版本: image: photoprism/photoprism:preview # 开机自启动 restart: unless-stopped security_opt: - seccomp:unconfined - apparmor:unconfined ports: - 2342:2342 environment: #设置登录密码 PHOTOPRISM_ADMIN_PASSWORD: "xxxxxx" # PLEASE CHANGE: Your initial admin password (min 4 characters) PHOTOPRISM_HTTP_PORT: 2342 # Built-in Web server port PHOTOPRISM_HTTP_COMPRESSION: "gzip" # Improves transfer speed and bandwidth utilization (none or gzip) PHOTOPRISM_DEBUG: "false" # Run in debug mode (shows additional log messages) PHOTOPRISM_PUBLIC: "false" # No authentication required (disables password protection) PHOTOPRISM_READONLY: "false" # Don't modify originals directory (reduced functionality) PHOTOPRISM_EXPERIMENTAL: "false" # Enables experimental features PHOTOPRISM_DISABLE_WEBDAV: "false" # Disables built-in WebDAV server PHOTOPRISM_DISABLE_SETTINGS: "false" # Disables Settings in Web UI PHOTOPRISM_DISABLE_TENSORFLOW: "false" # Disables using TensorFlow for image classification PHOTOPRISM_DARKTABLE_PRESETS: "false" # Enables Darktable presets and disables concurrent RAW conversion PHOTOPRISM_DETECT_NSFW: "false" # Flag photos as private that MAY be offensive (requires TensorFlow) PHOTOPRISM_UPLOAD_NSFW: "true" # Allow uploads that MAY be offensive # PHOTOPRISM_DATABASE_DRIVER: "sqlite" # SQLite is an embedded database that doesn't require a server PHOTOPRISM_DATABASE_DRIVER: "mysql" # Use MariaDB (or MySQL) instead of SQLite for improved performance PHOTOPRISM_DATABASE_SERVER: "mariadb:3306" # MariaDB database server (hostname:port) PHOTOPRISM_DATABASE_NAME: "photoprism" # MariaDB database schema name PHOTOPRISM_DATABASE_USER: "photoprism" # MariaDB database user name PHOTOPRISM_DATABASE_PASSWORD: "insecure" # MariaDB database user password PHOTOPRISM_SITE_URL: "http://localhost:2342/" # Public PhotoPrism URL PHOTOPRISM_SITE_TITLE: "PhotoPrism" PHOTOPRISM_SITE_CAPTION: "Browse Your Life" PHOTOPRISM_SITE_DESCRIPTION: "" PHOTOPRISM_SITE_AUTHOR: "" volumes: # 映射原始文件存储目录为挂载的对象存储的Bucket - "/mnt/photoprism/pictures:/photoprism/originals" # 缓存、索引文件,可映射到对象存储Bucket - "/mnt/photoprism/storage:/photoprism/storage" mariadb: image: mariadb:10.5 restart: unless-stopped security_opt: - seccomp:unconfined - apparmor:unconfined command: mysqld --transaction-isolation=READ-COMMITTED --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max-connections=512 --innodb-rollback-on-timeout=OFF --innodb-lock-wait-timeout=50 volumes: # 数据库文件存储在宿主机/home/ubuntu/photoprism/database下 - "./database:/var/lib/mysql" environment: MYSQL_ROOT_PASSWORD: please_change MYSQL_DATABASE: photoprism MYSQL_USER: photoprism MYSQL_PASSWORD: insecure # 开启自动更新 watchtower: image: containrrr/watchtower restart: unless-stopped volumes: - "/var/run/docker.sock:/var/run/docker.sock"运行docker-composedocker-compose -f /home/ubuntu/photoprism/docker-compose.yml up -d反向代理部署完成后,相关的反向代理可以参考官方文档 https://docs.photoprism.org/getting-started/proxies/nginx/ ,我这里做了一些修改,主要是使用了SSL证书做了https重定向。server{ listen 443 ssl; server_name xxxx; #自定义域名 ssl_certificate /etc/nginx/cert/xxxx.pem; #SSL证书 pem ssl_certificate_key /etc/nginx/cert/xxxx.key; #SSL证书 key ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; client_max_body_size 0; location / { proxy_pass http://127.0.0.1:2342; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_buffering off; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } server{ listen 80; server_name xxxx; #自定义域名 rewrite ^/(.*)$ https://xxxxx/$1 permanent; #自定义域名 }Web访问使用反向代理的域名登录PhotoPrism后,就可以创建相册, 然后上传照片了。第一次使用,上传完成后,可以手动做一次索引,以后使用每15分钟会自动索引。关于索引更多的内容可以看官方文档 https://docs.photoprism.org/user-guide/library/indexing/PhotoPrism支持分辨率的自适应,也就是说不论在PC、平板还是手机,都可以访问使用。同时可以看到PhotoPrism丰富的菜单栏和照片分类方式,包括基于时间线的日历、基于AI的Tag分类、基于地理位置的分类。虽然目前还没有基于人脸识别的分类,但在RoadMap上已经安排上了,相信很快就会发布。创建定时任务手动拷贝文件PhotoPrism不会自动索引,那我们这里就可以创建一个定时任务crontab -e # 设置每天晚上1点自动导入 0 1 * * * /usr/bin/docker exec photoprism_photoprism_1 /photoprism/bin/photoprism import
2021年10月11日
382 阅读
0 评论
0 点赞
2021-10-10
CentOS8的基础防火墙配置
1、安装yum install iptables-services #安装iptables 2、systemctl使用systemctl unmask firewalld #执行命令,即可实现取消服务的锁定 systemctl mask firewalld # 下次需要锁定该服务时执行 systemctl start firewalld.service #启动防火墙 systemctl stop firewalld.service #停止防火墙 systemctl reloadt firewalld.service #重载配置 systemctl restart firewalld.service #重启服务 systemctl status firewalld.service #显示服务的状态 systemctl enable firewalld.service #在开机时启用服务 systemctl disable firewalld.service #在开机时禁用服务 systemctl is-enabled firewalld.service #查看服务是否开机启动 systemctl list-unit-files|grep enabled #查看已启动的服务列表 systemctl --failed #查看启动失败的服务列表3、firewall-cmd使用firewall-cmd --state #查看防火墙状态 firewall-cmd --reload #更新防火墙规则 firewall-cmd --state #查看防火墙状态 firewall-cmd --reload #重载防火墙规则 firewall-cmd --list-ports #查看所有打开的端口 firewall-cmd --list-services #查看所有允许的服务 firewall-cmd --get-services #获取所有支持的服务 #区域相关 firewall-cmd --list-all-zones #查看所有区域信息 firewall-cmd --get-active-zones #查看活动区域信息 firewall-cmd --set-default-zone=public #设置public为默认区域 firewall-cmd --get-default-zone #查看默认区域信息 firewall-cmd --zone=public --add-interface=eth0 #将接口eth0加入区域public #接口相关 firewall-cmd --zone=public --remove-interface=eth0 #从区域public中删除接口eth0 firewall-cmd --zone=default --change-interface=eth0 #修改接口eth0所属区域为default firewall-cmd --get-zone-of-interface=eth0 #查看接口eth0所属区域4、用例firewall-cmd --query-port=8080/tcp # 查询端口是否开放 firewall-cmd --add-port=80/tcp --permanent #永久添加80端口例外(全局) firewall-cmd --remove-port=80/tcp --permanent #永久删除80端口例外(全局) firewall-cmd --add-port=65001-65010/tcp --permanent #永久增加65001-65010例外(全局) firewall-cmd --zone=public --add-port=80/tcp --permanent #永久添加80端口例外(区域public) firewall-cmd --zone=public --remove-port=80/tcp --permanent #永久删除80端口例外(区域public) firewall-cmd --zone=public --add-port=65001-65010/tcp --permanent #永久增加65001-65010例外(区域public) firewall-cmd --reload #重启防火墙(修改配置后要重启防火墙)
2021年10月10日
54 阅读
0 评论
0 点赞
2021-04-25
Bitwarden 服务端搭建记录(项目已经改名为:vaultwarden)
`github地址改为了 https://github.com/dani-garcia/vaultwardenNote: This project was known as Bitwarden_RS and has been renamed to separate itself from the official Bitwarden server in the hopes of avoiding confusion and trademark/branding issues.224 / 5000翻译结果注意:该项目被称为Bitwarden_RS,并已重命名为与官方的Bitwarden服务器分离,以免造成混淆和商标/品牌问题。需要更新下镜像,以前为地址为bitwardenrs/server,现在为vaultwarden/server` 更多配置可看官方的WIKI:https://github.com/dani-garcia/vaultwarden/wiki安装 Docker# 1. 执行官方的安装脚本 wget -qO- get.docker.com | bash # 2. 检查安装结果 docker version # 3. 启动 Docker systemctl start docker # 4. 查看 Docker 启动状态(绿色 active) systemctl status docker # 5. 允许 Docker 自启动 systemctl enable docker安装 Bitwarden快速开始不进行自定义,不需要域名,快速搭建一个 Bitwarden 后端# 1. 拉取 bitwarden_rs 镜像 docker pull bitwardenrs/server:latest # 2. 运行容器 docker run -d --name bitwarden -v /bw-data/:/data/ -p 5122:80 bitwardenrs/server:latest 自定义参数运行自定义一些参数,加入 HTTPS 支持等。当然,也可以使用 Nginx 反代,如果有 web 环境,建议采用 Nginx 反代的方式加入 HTTPS 支持。无 Web 服务器# 1. 拉取 bitwarden_rs 镜像 docker pull bitwardenrs/server:latest # 2. 生成一个 admin 用户管理页面的 token openssl rand -base64 48 # 3. 生成 ssl 证书,以启用 https,推荐使用 acme.sh 免费申请及自动续签 # > 3.1 下载并执行 acme.sh 脚本 curl https://get.acme.sh | sh # > 3.2 生成证书,这只是一种方式,其他方式可以自行搜索 apt install socat # debian 系为例 acme.sh --issue -d yourdomain.com --standalone # > 3.3 将生成的证书拷贝安装到指定文件夹 acme.sh --installcert -d yourdomain.com \ --key-file /path/to/yourdomain.com.key \ --fullchain-file /path/to/fullchain.cer \ # 4. 运行 bitwarden_rs 容器 docker run -d --name bitwarden \ -e SIGNUPS_ALLOWED=false \ -e INVITATIONS_ALLOWED=false \ -e ADMIN_TOKEN=step2_generated_token \ -e ROCKET_TLS='{certs="/path/to/docker/ssl/fullchain.cer",key="/path/to/docker/ssl/yourdomain.com.key"}' \ -e DOMAIN=https://yourdomain.com \ -e LOG_FILE=/path/to/log \ -e LOG_LEVEL=warn -e EXTENDED_LOGGING=true \ -e DATA_FOLDER=/path/to/data/folder \ -p 443:80 \ -v /path/to/host/ssl/:/path/to/docker/ssl/ -v /path/to/host/data/folder:/path/to/docker/data/folder \ bitwardenrs/server:latest 参数解释: SIGNUP_ALLOWED:是否允许注册 INVITATIONS_ALLOWED: 是否允许组织邀请注册 ADMIN_TOKEN:用户管理界面 (/admin),可用于删除用户及邀请用户注册 ROCKET_TLS:ssl 证书信息,同时需要配置 -v /path/to/host/ssl/:/path/to/docker/ssl/卷,前者为宿主机ssl证书的位置,后者为容器证书位置 DOMAIN:域名 LOG_FILE、LOG_LEVEL、EXTENDED_LOGGING:日志保存文件路径以及日志等级定义 DATA_FOLDER:docker容器数据保存文件夹(默认为 /data),除了定义这个文件夹之外,还可以定义附件、图标缓存、数据库等参数 DATABASE_URL:数据库路径 ATTACHMENT_FOLDER:附件路径 ICON_CACHE_FOLDER:图标缓存路径以上是我自己觉得需要的一些配置,更多参数可参考官方 Wiki。示例:docker run -d --name bitwarden -e SIGNUPS_ALLOWED=false -e INVITATIONS_ALLOWED=false -e ADMIN_TOKEN=bTVsf7Hj99HPxECRPOL9U70bP0Iy5lXmbbJVP2tvwDszB8CClv+MD3TT6mSJTa4L -e ROCKET_TLS='{certs="/ssl/bw.withdewhua.space/fullchain.cer",key="/ssl/bw.withdewhua.space/bw.withdewhua.space.key"}' -e DOMAIN=https://bw.withdewhua.space -e LOG_FILE=/data/bitwarden.warn.log -e LOG_LEVEL=warn -e EXTENDED_LOGGING=true -p 443:80 -v /bw-data/:/data/ -v /usr/local/nginx/conf/ssl/:/ssl/ bitwardenrs/server:latest有 Web 服务器以下以 Nginx 为例,基本操作类似于上述无 Web 环境情况。# step1-3 见 [无 Web 服务器情况] # 4. 运行 bitwarden_rs 容器 # > -p 指定端口可自己定义,只允许本机监听 docker run -d --name bitwarden \ -e SIGNUPS_ALLOWED=false \ -e INVITATIONS_ALLOWED=false \ -e ADMIN_TOKEN=step2_generated_token \ -e DOMAIN=http://yourdomain.com \ -e LOG_FILE=/path/to/log \ -e LOG_LEVEL=warn -e EXTENDED_LOGGING=true \ -e DATA_FOLDER=/path/to/data/folder \ -p 127.0.0.1:12580:80 \ -v /path/to/host/data/folder:/path/to/docker/data/folder \ bitwardenrs/server:latest # 5. 创建 nginx 配置文件 yourdomain.com.conf,内容示例如下,注意根据自己情况进行修改 server { listen 80; listen [::]:80; listen 443 ssl http2; listen [::]:443 ssl http2; ssl_certificate /path/to/ssl/cert; # 注意修改 ssl_certificate_key /path/to/ssl/key; # 注意修改 ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on; ssl_session_timeout 10m; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_buffer_size 1400; add_header Strict-Transport-Security max-age=15768000; ssl_stapling on; ssl_stapling_verify on; server_name yourdomain.com; # 注意修改 if ($ssl_protocol = "") { return 301 https://$host$request_uri; } location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://127.0.0.1:12580; # 和 step4 中指定端口一致 } }容器操作命令# $name 为 docker run 中定义的 name # 启动容器 docker start $name # 停止容器 docker stop $name # 删除容器 docker rm $name # 查看运行容器 docker ps -as升级 Bitwarden 镜像# 1. 重新拉取镜像 docker pull bitwardenrs/server:latest # 2. 停止、删除原容器 docker stop bitwarden docker rm bitwarden # 3. 重新运行 docker run 命令 # 4. 查看镜像文件 docker image ls # 5. 删除原镜像文件, $ID 在 step4 中可以看到 docker image rm $ID客户端使用方法使用方法就讲下 Chrome 插件的吧,其他的用法都是类似的。打开插件,点击右上角设置按钮填入 bitwarden 的域名保存后正常登录即可。后话弄好之后稍微体验了下,直接从 Bitwarden 官方导出然后导入到自己服务端,整个过程还是很容易的。目前体验下来来说感觉还是非常舒服的,主要说几点吧:这个 docker 镜像对于服务器的要求不高,个人使用的话,1 CPU 512MB RAM 应该就可以跑了,又可以充分利用自己的服务器了;我能用到的功能都有了,除了最基本的密码保存、上传附件等,官方需要付费使用的 TOTP 、密码检测等功能也都是可以直接使用的;数据在自己手里,可能会感觉会更安全点吧。
2021年04月25日
441 阅读
0 评论
0 点赞
2021-01-31
Debian10开启ssh远程登录
最小化安装debian系统后,ssh远程登录服务默认是关闭且禁止直接使用root账户进行登录。那么我们要如何开启ssh服务并允许root账户登录呢?下面自然简单说一下两种操作方式,适用于代码强迫症患者和小白使用,小白可以使用懒人代码复制粘贴回车开启ssh密码验证和允许root账户直接登录。标准的操作修改sshd_config文件,命令为:vi /etc/ssh/sshd_config将#PasswordAuthentication no的注释去掉,并且将no修改为yes将#PermitRootLogin prohibit-password的注释去掉,将prohibit-password改为yes启动SSH服务,命令为:/etc/init.d/ssh start // 或者service ssh start验证SSH服务状态,命令为:/etc/init.d/ssh status添加开机自启动 update-rc.d ssh enable懒人模式直接使用cat命令在sshd_config文件尾部追加所需要的内容就行,反正上面都是#注释的,不会造成任何冲突。cat >> /etc/ssh/sshd_config << EOF PasswordAuthentication yes PermitRootLogin yes EOF service ssh restart 小结debian下ssh服务开启密码认证和允许root账户登录的操作的很简单,标准操作中的设置开机启动是可以省略的,ssh服务默认就是开机启动,为了防止部分系统可能有问题,最好都走一遍。懒人模式,如果你不熟悉linux下编辑文本,那么直接复制粘贴回车就行。
2021年01月31日
367 阅读
0 评论
0 点赞
1
2