#往/mnt目录里安装系统 #其中最基础的四个包是base base-devel linux linux-firmware #linux-lts (lts:稳定版)
如果内核安装了稳定版,那么独显也要是稳定版的,要不然就会发生问题(我也不知道什么问题)
pacstrap /mnt base base-devel linux linux-firmware vim git dhcpcd e2fsprogs iwd 如果用了旧版镜像导致无法下载,一般显示GDP密钥出错,出现“User is unknown trust, installation failed“。先要安装最新密钥pacman -S archlinux-keyring。如果不是这个问题,就更新一下签名:pacman-key –refresh-keys
yay -S visual-studio-code-bin # Visual Studio Code yay -S intellij-idea-ultimate-edition intellij-idea-ultimate-edition-jre # idea yay -S pycharm-professional # PyCharm Professional yay -S intellij-idea-ultimate-edition # IntelliJ IDEA Ultimate Edition
===> 浏览器
yay -S google-chrome # google 浏览器 yay -S microsoft-edge-stable-bin # edge 浏览器
===> 办公软件
yay -S wps-office-cn wps-office-mui-zh-cn ttf-wps-fonts # WPS Office
===> 社交软件
yay -S icalingua++ # Icalingua++(第三方Linux QQ) yay -S deepin-wine-tim # win tim yay -S deepin-wine-wechat # win 微信 yay -S com.tencent.weixin # 微信
===> 实用工具
yay -S wemeet-bin # 腾讯会议 yay -S utools # uTools搜索 yay -S flameshot # 火焰截图 yay -S motrix-bin # 下载工具 yay -S kdiskmark-git # 磁盘检测工具 yay -S gimp # 图像处理 yay -S kdenlive # 视频后期 yay -S baidunetdisk-electron # 百度盘 yay -S xunlei-bin # 迅雷 yay -S netease-cloud-music # 网易云 yay -S obs-studio # obs yay -S p7zip # 压缩 yay -S unrar # 压缩 所有 AUR 软件可在 https://aur.archlinux.org/ 上查询。
(1) Configure settings for history, i.e. command lines remembered and saved by the shell. (Recommended.)
(2) Configure the new completion system. (Recommended.)
(3) Configure how keys behave when editing command lines. (Recommended.)
(4) Pick some of the more common shell options. These are simple "on" or "off" switches controlling the shell's features.
(0) Exit, creating a blank ~/.zshrc file.
(a) Abort all settings and start from scratch. Note this will overwrite any settings from zsh-newuser-install already in the startup file. It will not alter any of your other settings, however.
(q) Quit and do nothing else. The function will be run again next time.
近日,Analyticsvidhya 上发表了一篇题为《Introduction to Genetic Algorithm & their application in data science》的文章,作者 Shubham Jain 现身说法,用通俗易懂的语言对遗传算法作了一个全面而扼要的概述,并列举了其在多个领域的实际应用,其中重点介绍了遗传算法的数据科学应用。机器之心对该文进行了编译,原文链接请见文末。
# finally building model using tpot library from tpot import TPOTRegressor X_train, X_test, y_train, y_test = train_test_split(tpot_train, target, train_size=0.75, test_size=0.25)
gchq/CyberChef“The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis”
schlagmichdoch/PairDropPairDrop: Local file sharing in your browser. Inspired by Apple’s AirDrop. Fork of Snapdrop.
handsontable/handsontable“JavaScript data grid with a spreadsheet look & feel. Works with React, Angular, and Vue. Supported by the Handsontable team ⚡”
gorse-io/gorseGorse open source recommender system engine
RVC-Boss/GPT-SoVITS1 min voice data can also be used to train a good TTS model! (few shot voice cloning)
xianrendzw/EasyReport“A simple and easy to use Web Report System for java.EasyReport是一个简单易用的Web报表工具(支持Hadoop,HBase及各种关系型数据库),它的主要功能是把SQL语句查询出的行列结构转换成HTML表格(Table),并支持表格的跨行(RowSpan)与跨列(ColSpan)。同时它还支持报表Excel导出、图表显示及固定表头与左边列的功能。”
saltbo/zpanA self-hosted cloud disk base on the cloud storage./ 一个基于云存储的网盘系统,用于自建私人网盘或企业网盘。
openai/whisperRobust Speech Recognition via Large-Scale Weak Supervision
IsAmitprajapati/Restaurant-E-Commerce-Website“Functionality Like checkout, login with firebase, payment, product filter, upload the product details and image in firebase (admin) , admin only upload the product, most important think mobile responsive is also. A modern UI conforms to your audience’s existing perspective of what they think qualifies as a credible visual experience.”
heyform/heyform“HeyForm is an open-source form builder that allows anyone to create engaging conversational forms for surveys, questionnaires, quizzes, and polls. No coding skills required.”
lionsoul2014/ip2region“Ip2region (2.0 - xdb) is a offline IP address manager framework and locator, support billions of data segments, ten microsecond searching performance. xdb engine implementation for many programming languages”
bnhf/openvpn-admin-plus“Docker-based web interface (with golang backend) for monitoring and admin of an OpenVPN TAP/TUN server setup with PiVPN or other OpenVPN server installations. This project has been renamed from pivpn-tap-web-ui, to reflect its new broader scope.”
bnhf/docker-openvpn🔒 OpenVPN server in a Docker container complete with an EasyRSA PKI CA
veryacademy/docker-mastery-with-django“Docker Mastery with Django is an open-source initiative and tutorial series. Learn from a beginner level how to use Docker, compose and Kubernetes for django projects.”
adrianhajdin/project_mern_memories“This is a code repository for the corresponding video tutorial. Using React, Node.js, Express & MongoDB you’ll learn how to build a Full Stack MERN Application - from start to finish. The App is called “”Memories”” and it is a simple social media app that allows users to post interesting events that happened in their lives.”
usememos/memos“An open source, lightweight note-taking service. Easily capture and share your great thoughts.”
CharlyJazz/Upload-Download-Files“Examples of how upload and download files using differents approach like S3, Web Sockets, Streams, GCP Storage (Work in Progress)”
lucas-issa/simple-react-dropzone“Implements some simple functionalities over react-dropzone that should solve most cases of file upload, delete and download, keeping all flexibility of dropzone, if needed.”
timothymiller/cloudflare-ddns🎉🌩️ Dynamic DNS (DDNS) service based on Cloudflare! Access your home network remotely via a custom domain name without a static IP!
t3l3machus/ssh-log-alertReceive email alerts on successful ssh logins based on a predefined IP whitelist OR a predefined IP country origin whitelist (using mailgun)
DeanRickles/arch-plasmaCreate a baseline archlinux environment using KDE plasma with novnc and webockify pre-configured for others to use for their containers.
ajayrandhawa/Hidden-Screen-CaptureIt is primary designed to be hidden and monitoring the computer activity. Take a screenshot of desktop in hidden mode using Visual C++ and save automatically to ‘jpeg’ file in every 30 second. 60+ Most Popular antivirus not detect this application while it is running on background.
ra1nty/DXcamA Python high-performance screen capture library for Windows using Desktop Duplication API
XZB-1248/Spark“✨Spark is a web-based, cross-platform and full-featured Remote Administration Tool (RAT) written in Go that allows you control all your devices anywhere. Spark是一个Go编写的,网页UI、跨平台以及多功能的远程控制和监控工具,你可以随时随地监控和控制所有设备。”
trinib/AdGuard-WireGuard-Unbound-DNScryptLinux ultimate self-hosted network security guide ║ Linux 终极自托管网络安全指南 ║ Guía definitiva de seguridad de red autohospedada de Linux ║ लिनक्स परम स्व-होस्टेड नेटवर्क सुरक्षा गाइड ║ Окончательное руководство по безопасности собственной сети Linux
pirate/wireguard-docs“📖 Unofficial WireGuard Documentation: Setup, Usage, Configuration, and full example setups for VPNs supporting both servers & roaming clients.”
Nyr/wireguard-install“WireGuard road warrior installer for Ubuntu, Debian, AlmaLinux, Rocky Linux, CentOS and Fedora”
lingochamp/Multi-Scale-BERT-AES“Demo for the paper “”On the Use of BERT for Automated Essay Scoring: Joint Learning of Multi-Scale Essay Representation”””
nextcloud/all-in-one📦 The official Nextcloud installation method. Provides easy deployment and maintenance with most features included in this one Nextcloud instance.
talesam/nextcloudExecutando Nextcloud em docker com perfeição + Ngnix Proxy Manager + Redis + Postgre + Onlyoffice
lakinduakash/linux-wifi-hotspotFeature-rich wifi hotspot creator for Linux which provides both GUI and command-line interface. It is also able to create a hotspot using the same wifi card which is connected to an AP already ( Similar to Windows 10).
VFPX/FoxBarcode“A 100% Visual FoxPro class that provides a tool for generating images with different bar code symbologies to be used in VFP forms and reports, or exported to other applications”
vfp9/Print2PDFVFP code library to print reports directly to PDF with programmatic control(用VFP代码库将报告直接打印成PDF,并进行程序化控制)
wez/weztermA GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
CollaboraOnline/onlineCollabora Online is a collaborative online office suite based on LibreOffice technology. This is also the source for the Collabora Office apps for iOS and Android.
ONLYOFFICE/onlyoffice-nextcloud“The app which enables the users to edit office documents from Nextcloud using ONLYOFFICE Document Server, allows multiple users to collaborate in real time and to save back those changes to Nextcloud”
reachout2diff/spellcheckerprogram“Python spellchecking program with using language_check library. The language_check specifies the mistakes along with Rule Id, Message, Suggestion, and line number in the document”
rumia-san/winhasher“A simple file hasher with GUI, which supports drag and drop. Written in Powershell without external module dependencies. 用Powershell实现的文件MD5,SHA1,SHA256计算器,可以拖拽文件到窗口计算。”
rumia-san/hook_finaleSimple tutorial for WIN32 hook and DLL injection. Hook和DLL注入的简要教程。
winsiderss/systeminformer“A free, powerful, multi-purpose tool that helps you monitor system resources, debug software and detect malware. Brought to you by Winsider Seminars & Solutions, Inc. @ http://www.windows-internals.com“
arif-id/Aplikasi-Ujian-Online-berbasis-Web-CAT“Deskripsi Aplikasi Ujian Online, adalah aplikasi yang digunakan untuk melakukan proses ujian , tanpa menggunakan kertas (paperless) , atau sekarang ngetren dengan nama Computer Based Test (CBT), atau Computer Assisted Test (CAT). Semua proses ujian dilakukan melalui komputer, mulai dari pembuatan soal, pengaturan kelas, pengaturan user yang bisa ikut ujian, pengaturan guru mengajar, sampai proses ujian, dengan memanfaatkan teknologi rekayasa web. Tipe soal yang bisa masuk ke aplikasi ujian online di pembahasan ini adalah tipe soal pilihan ganda. Pemrograman : PHP dengan framework : Codeigniter versi 2.x.x (ane lupa versinya, yang jelas versi 2) Javascript jQuery, untuk menghandel perintah-perintah javascript, dan lainya. format data JSON untuk pertukaran data antara server dgn client, pada menu-menu yang ber-AJAX Design UI dengan framework CSS, Twitter Bootstrap Level user : Admin, merupakan level tertinggi dari aplikasi, bisa memanej data : guru/dosen, siswa, mata pelajaran, soal, lihat hasil ujian Guru, mempunyai akses, bisa memanage data : soal, daftar ujian, dan melihat hasil ujian Siswa, mempunya akses, bisa mengikuti ujian, sesuai dengan mata pelajaran yang ia ikuti, yang diatur oleh level admin, dan melihat hasil ujian.”
schoetty/CAToRComputerized Adaptive Testing System written in Ruby on Rails
HarshadPunghera/AI-InvigilatorTo Identify potential cheating behavior in online Exam. (Face/Object Detection). Capstone project to create a series of models which takes in processed videos and examine the frames in order to detect and identify potential cheating behaviour frames. The output should show frames detecting suspicious activity and the corresponding time stamp.
GourabNath/Project-Computer-Vision-for-Exam-Invigilation“In this project, we have created a virtual examination surveillance system that will be able to monitor the examinees throughout the period of an examination. Computers are trained to detect ‘inappropriate’ motions of the candidates during an examination. We have used Viola Jones Object Detection Algorithm for the detecting such ‘inappropriate’ motions. We have also attempted to create a simple user interface to highlights specific minutes or seconds where cheating like movements happened with links to the video clips of those specific sections. “
danielAdama/Face-Eye-Detection-via-WebcamBuilt a face and eye detector using a haarcascade classifier which can be used to identify persons who have the intentions to cheat in an online exam.
rakhadkz/frontalis-androidThe mobile application that prevents cheating on exams using actions tracking of student
GPAMBD/Exam-Proctoring-SystemThe specialized Machine Learning Model based project to avoid cheating activities during online exams.
rajan-31/automated-exam-proctoringAutomated Exam Proctoring -> A ML model to keep watch on exam candidates through webcam and inform exam coordinator about any attempt of cheating.
kaliautkarsh98/Camera-Model-for-cheating-detection-This project helps to create an automated proctoring system that helps to find the cases when an exam attendee might be using unfair means in an online camera based examination.
tirtharajghosh/Intelligent-Examination-System“Intelligent Examination System aka iES is an online examination system with features like Anti-cheat, Timer, Auto-submit, Resumable on Accidental Shutdown etc.”
hemanth-nag/Camera_Flask_App“Camera app using flask, OpenCV wherein we can click pictures, record videos, apply filters like greyscale, negative and ‘face only’ snapchat filter.”
nileshprasad137/Automated-Essay-GraderProject based on Machine Learning to extract features from essays and train using suitable ML algorithms to predict essay scores.
heeryoncho/korean_essay_grade_prediction“Code for domestic conference (South Korea) paper “”Comparison of Automatic Score Range Prediction of Korean Essays Using KoBERT, Naive Bayes & Logistic Regression”””
empathephant/automatic-essay-graderMachine learning project that attempts to grade essays written by non-native English speakers on a scale from 1 - 7.
chmullig/datascience-aesMy code for the Columbia Data Science final project Kaggle competition. Automated essay grading system.
yucheng1992/Automated-Essay-GraderThis repository contains all the code written for the final project of CSCI-GA.2590-001 Natural Language Processing 15Spring
bronwynbiro/AutomatedEssayGradingAutomated essay grading via 1) handcrafted features and logistic regression (QWK = 0.847) and 2) Doc2Vec and a 2-layer LSTM (QWK = 0.971).
SahilC/virtual-tutorA virtual tutor to teach you how to play the piano. Built entirely using openCV.
hkneptune/FreeFileSyncA Copy of FreeFileSync Source Code. This repository is just a mirror of the FreeFileSync source code. Please do not send pull requests. Submit issues to the official forum (https://freefilesync.org/forum/).
cryptomator/cryptomatorMulti-platform transparent client-side encryption of your files in the cloud
sankalpjain99/Automatic-Essay-ScoringCreated a web app that can automatically score essays. The grading model was trained using HP Essays Dataset from Kaggle. Used Long Short Term Memory (LSTM) network and machine learning algorithms to train model. WebApp was created using Flask framework.
pavanred/NLP_Automatic_Grader“Automatic Essay Grader system scores and evaluates essays by natural language processing - detect errors in grammar, usage, semantics, coherence, length etc and an automated essay scoring system. This system is evaluated by comparing essay scores to manually evaluated essay scores.”
octanove/expatsEXPATS: A Toolkit for Explainable Automated Text Scoring
inamiotko/Signature_verificationSiganture verification using Siamese Neural Network. Used datasets contain 2 sets of data coming from different sources. The bigger set contains 2640 images of handwritten signatures while the smaller one contains 240 images. The accuracy of the trained model on bigger dataset reaches 100% and 82% on smaller one.
amirping/SandBOX“Face track , Detectation , And key Points FInder , With openIMAJ”
ashah03/alzheimers-facial-recognitionA facial recognition system implemented with Java (using the OpenIMAJ library) with the goal of preventing Alzheimer’s patients from wandering out of their homes. Won 2nd place at ACSEF 2016.
sarxos/webcam-capture“The goal of this project is to allow integrated or USB-connected webcams to be accessed directly from Java. Using provided libraries users are able to read camera images and detect motion. Main project consist of several sub projects - the root one, which contains required classes, build-in webcam driver compatible with Windows, Linux and Mac OS, which can stream images as fast as your camera can serve them (up to 50 FPS). Main project can be used standalone, but user is able to replace build-in driver with different one - such as OpenIMAJ, GStreamer, V4L4j, JMF, LTI-CIVIL, FMJ, etc.”
Trussin/Chinese-Chess-AIA Chinese Chess program and a AI based on Monte Carlo Tree Search and Neural Network(like AlphaGo)一个中国象棋程序和一个配套的基于蒙特卡洛算法及神经网络的人工智能(模仿阿尔法狗)
JaidedAI/EasyOCR“Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.”
rmvanarse/ps1_projectAutomatic signature verification and authentication using computer vision
DefUs3r/Automatic-Signature-Verification“Python implementation of Automatic Signature Stability Analysis And Verification Using Local Features by Muhammad Imran Malik, Marcus Liwicki, Andreas Dengel, Seiichi Uchida, Volkmar Frinken published in 2014 at14th International Conference on Frontiers in Handwriting Recognition and some experiments in Keras-Tensorflow on Automatic Signature Verification using CNNs in vanilla and Siamese architecture”
sunnypwang/aesA Comparative Study of Pretrained Language Models for Automated Essay Scoring with Adversarial Inputs
ikttan/maesAutomated Essay Scoring with Shallow Linguistic Features
Ashish-Gore/Forge-or-Real-Signature-Detection-using-Deep-Learning“Signature verification is an important biometric technique that aims to detect whether a given signature is genuine or forged. It is essential in preventing falsification of documents in numerous financial, legal, and other commercial settings. This is a comparative analysis of different already known deep learning architectures to check which of those performs the best on the classification. It was solely for offline handwritten signatures.”
rrahulrroy/offline-handwritten-signature-verification-using-pytorch“Offline handwritten signature using Pytorch. Here one-shot learning is used using a Siamese network, as the amount of dataset is small, and the dissimilarity between the original and forged signatures is observed.”
sounakdey/SigNetSigNet: Convolutional Siamese Network for Writer Independent Offline Signature Verification
netrapathak/Offline-Signature-VerificationImplemented two papers for offline signature verification. Both use different deep learning techniques - Convolutional network and Siamese network.
pmitros/discern“Library: This is an API wrapper for EASE, which is a tool to grade arbitrary free text responses. Most of the code is by Vik Paruchuri, under my supervision”
ZhaoBin-Li/Automated-Essay-Grading“Computational Models of Cognition, Automated Essay Grading using Latent Semantic Analysis, by ZhaoBin Li and Owen Szafran”
Saiteja-Reddy/Automatic-Text-Scoring“Implementation of the paper - “”SKIPFLOW: Incorporating Neural Coherence Features for End-to-End Automatic Text Scoring”””
openedx-unsupported/easeEASE (Enhanced AI Scoring Engine) is a library that allows for machine learning based classification of textual content. This is useful for tasks such as scoring student essays.
madhavthaker/AES“Developed an Automatic Essay Grading tool in Python that utilizes TensorFlow to build a Four-Layer feed-forward neural network. Additionally, by utilizing the Natural Language Tool Kit (NLTK) package, I built a regression model that incorporates features such as grammar and sentiment to grade test essay sets.”
pymumu/smartdns“A local DNS server to obtain the fastest website IP for the best Internet experience, support DoT, DoH. 一个本地DNS服务器,获取最快的网站IP,获得最佳上网体验,支持DoH,DoT。”
destan19/OpenAppFilter“OAF is a parental control plug-in based on OpenWrt, which supports app filtering for games, videos, chats, downloads, such as Tiktok, Youtube, Telegram,etc.”
heanuea/Mnist-Digit-Reader-A Web Application Built with Flask and Python that reads images containing numbers with the Help of Tensor-flow should recognize each digit from 0 to 9
PyImageSearch/imutils“A series of convenience functions to make basic image processing operations such as translation, rotation, resizing, skeletonization, and displaying Matplotlib images easier with OpenCV and Python.”
Bonfire/OptiGraderOptiGrader is an optical mark recognition (OMR) application that serves as both a scantron grader and an online gradebook.
liangzelang/Answer-Card-Recognition“本项目是用图像处理的方法对常见的答题卡进行检测、识别,得到答题卡的结果。(This project is about Answer Card, using image process methods to detect and recognize the Answer card ,based on OpenCV 3.x)”
ctnatsai/optical-mark-readerMakes use of image processing techniques to scan and mark a given students MCQ sheet.
s9k96/Optical-Mark-RecognitionPython script to read an omr sheet and perform perspective transform and then calculating the right and wrong bubbled answers.
microsoft/ai-edu“AI education materials for Chinese students, teachers and IT professionals.”
guyueyingmu/avbook“AV 电影管理系统, avmoo , javbus , javlibrary 爬虫,线上 AV 影片图书馆,AV 磁力链接数据库,Japanese Adult Video Library,Adult Video Magnet Links - Japanese Adult Video Database”
taosdata/TDengine“TDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps.”
################ Don't change here ############### ################## Function #################### record_type="" ip="" zone_identifier="" record_identifier="" update=""
# Log function log() { if [ "$1" ]; then echo -e "[$(date)] - $1" >> $log_file fi } #To get local IP address get_ip() { if [ $type == "ipv4" ]; then record_type="A" ip=$(ip addr | grep ${INTERFACE} -A2 | grep inet | grep -v inet6 | awk '{print $2}') elif [ $type == "ipv6" ]; then record_type="AAAA" ip=$(ip addr | grep ${INTERFACE} -A2 | grep inet6 | awk '{print $2}' | cut -d '/' -f1) else echo "Type wrong" log "Type wrong" exit 0 fi }
# Check IP changed or not, if there's no change, then terminal programme check_ip_change() { if [ -f $ip_file ]; then old_ip=$(cat $ip_file) if [ "$ip" == "$old_ip" ]; then echo "IP has not changed." log "IP has not changed." exit 0 fi fi } #Get zone_id subdomain ID get_id() { if [ -f $id_file ] && [ $(wc -l $id_file | cut -d " " -f 1) == 2 ]; then zone_identifier=$(head -1 $id_file) record_identifier=$(tail -1 $id_file) else zone_identifier=$(curl -s -X GET "https://api.cloudflare.com/client/v4/zones?name=$zone_name" -H "X-Auth-Email: $auth_email" -H "X-Auth-Key: $auth_key" -H "Content-Type: application/json" | grep -Po '(?<="id":")[^"]*' | head -1 ) rec_response_json=`curl -X GET "https://api.cloudflare.com/client/v4/zones/$zone_identifier/dns_records?name=$record_name" -H "X-Auth-Email: $auth_email" -H "X-Auth-Key: $auth_key" -H "Content-Type: application/json"` record_identifier=`echo $rec_response_json | grep -Po '(?<="id":")[^"]*'` echo "$zone_identifier" > $id_file echo "$record_identifier" >> $id_file fi } #Update DNS record update_dns() { update=$(curl -s -X PUT "https://api.cloudflare.com/client/v4/zones/$zone_identifier/dns_records/$record_identifier" -H "X-Auth-Email: $auth_email" -H "X-Auth-Key: $auth_key" -H "Content-Type: application/json" --data "{\"id\":\"$zone_identifier\",\"type\":\"$record_type\",\"name\":\"$record_name\",\"content\":\"$ip\"}") } ################### Main ################### log "Script start." #Got IP Address get_ip
# Check got the right ip address if [ "$ip" == "" ]; then echo "Can not get IP address.Please check your network connection." log "Can not get IP address.Please check your network connection." exit 0 fi
# Check IP changed or not check_ip_change
# Get zone_id and sumdomain record ID get_id
# Check get ID successfully or not if [ "$zone_identifier" == "" ]; then echo "Can not get zone_id." log "Can not get zone_id." exit 0 elif [ "$record_identifier" == "" ]; then echo "Can not get record_id." log "Can not get record_id." exit 0 fi
# Update DNS Record update_dns
# Check DNS record updated or not if [[ $update == *"\"success\":false"* ]]; then log "API UPDATE FAILED. DUMPING RESULTS:\n$update" echo -e "API UPDATE FAILED. DUMPING RESULTS:\n$update" exit 0 else echo "$ip" > $ip_file log "$record_name IP changed to: $ip" echo "$record_name IP changed to: $ip" fi
How to run the script
1 2 3 4 5
#update A record sudo bash /config/scripts/ddns/cloudflare-ddns.sh ipv4 <MY_DOMAIN_NAME>
#update AAAA record sudo bash /config/scripts/ddns/cloudflare-ddns.sh ipv6 <MY_DOMAIN_NAME>
#选项 1: 使用官方debian 12 源 tee /etc/apt/sources.list << "EOF" deb http://deb.debian.org/debian bookworm main non-free-firmware deb-src http://deb.debian.org/debian bookworm main non-free-firmware
deb http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware deb-src http://deb.debian.org/debian-security/ bookworm-security main non-free-firmware
deb http://deb.debian.org/debian bookworm-updates main non-free-firmware deb-src http://deb.debian.org/debian bookworm-updates main non-free-firmware EOF
# Configure firewall uci rename firewall.@zone[0]="lan" uci rename firewall.@zone[1]="wan" uci rename firewall.@forwarding[0]="lan_wan" uci del_list firewall.lan.device="tun0" uci add_list firewall.lan.device="tun0" uci -q delete firewall.vpn uci set firewall.ovpn="rule" uci set firewall.ovpn.name="Allow-OpenVPN" uci set firewall.ovpn.src="wan" uci set firewall.ovpn.dest_port="1194" uci set firewall.ovpn.proto="udp" uci set firewall.ovpn.target="ACCEPT" uci commit firewall /etc/init.d/firewall restart OpenWRT Firewall
生成服务器和客户端证书
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
# Configuration parameters export EASYRSA_PKI="/etc/easy-rsa/pki" export EASYRSA_REQ_CN="ovpnca" # Remove and re-initialize the PKI directory easyrsa --batch init-pki # Generate DH parameters # 此步会较久 easyrsa --batch gen-dh # Create a new CA easyrsa --batch build-ca nopass # Generate a keypair and sign locally for a server easyrsa --batch build-server-full server nopass # Generate a keypair and sign locally for a client easyrsa --batch build-client-full client nopass
#!/bin/sh ########################################################### # checkpsw.sh (C) 2004 Mathias Sundman <mathias@openvpn.se> # # This script will authenticate OpenVPN users against # a plain text file. The passfile should simply contain # one row per user with the username first followed by # one or more space(s) or tab(s) and then the password.
if [ "${CORRECT_PASSWORD}" = "" ]; then echo "${TIME_STAMP}: User does not exist: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE} exit 1 fi
if [ "${password}" = "${CORRECT_PASSWORD}" ]; then echo "${TIME_STAMP}: Successful authentication: username=\"${username}\"." >> ${LOG_FILE} exit 0 fi
# Provide VPN instance management ls /etc/openvpn/*.conf \ | while read -r OVPN_CONF do OVPN_ID="$(basename ${OVPN_CONF%.*} | sed -e "s/\W/_/g")" uci -q delete openvpn.${OVPN_ID} uci set openvpn.${OVPN_ID}="openvpn" uci set openvpn.${OVPN_ID}.enabled="1" uci set openvpn.${OVPN_ID}.config="${OVPN_CONF}" done uci commit openvpn /etc/init.d/openvpn restart