首页
关于本博客
友情链接
推荐
linux/shell
Search
1
LEDE官方固件安装中文语言包的方法
11,087 阅读
2
LEDE固件踢出弱信号客户端,实现WiFi无缝漫游脚本
9,183 阅读
3
基于CloudFlare API的纯Shell动态DNS(DDNS)脚本
8,153 阅读
4
一次OpenVPN交叉编译笔记
6,664 阅读
5
利用iptables的string模块来屏蔽域名(关键词匹配)
6,111 阅读
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
登录
Search
标签搜索
nginx
OpenWrt
openvpn
SSH
seafile
cloudflare
iptables
openssl
linux
letsencrypt
CentOS
反向代理
ftp
openvpn配置模板
vsftpd
seafile网盘
Linux启动脚本
ddns
nas
seafile服务器
自渡
累计撰写
75
篇文章
累计收到
1
条评论
首页
栏目
study
OpenWrt/LEDE
网络技术
数通
HCNP/CCNP
linux
shell
CentOS
Ubuntu/Debian
php
Linux应用
C#
C/C++
虚拟化
IDC
杂项
MySQL
运维笔记
zabbix
seafile
openvpn
QEMU/KVM
windows
html
nginx
互联网应用
IP地址段汇总
页面
关于本博客
友情链接
推荐
linux/shell
搜索到
6
篇与
Linux应用
的结果
2024-10-21
linux操作系统下几种常见的压缩软件
在linux操作系统下,有多种常见的压缩软件可供使用。常见的一般有zip、gzip、bzip2、xz、tar、7z、rar等。这些软件在最新的Ubuntu/Debian操作系统中均可以使用apt/apt-get一键安装,下面是它们的一些使用方法:1. gzip用途:常用于压缩单个文件。扩展名:.gz命令:gzip filename解压命令:gunzip filename.gz2. bzip2用途:比gzip提供更高的压缩比,但速度较慢。扩展名:.bz2命令:bzip2 filename解压命令:bunzip2 filename.bz23. xz用途:提供更高的压缩率,适用于需要极小文件大小的场景。扩展名:.xz命令:xz filename解压命令:unxz filename.xz4. tar用途:用于打包多个文件为一个文件,通常与其他压缩工具结合使用。扩展名:.tar命令(打包并压缩):tar -czf archive.tar.gz directory/解压命令:tar -xzf archive.tar.gz5. zip用途:常用于压缩多个文件或目录,支持Windows系统。扩展名:.zip命令:zip -r archive.zip directory/解压命令:unzip archive.zip6. 7z用途:提供高压缩比,支持多种格式。扩展名:.7z命令:7z a archive.7z files/解压命令:7z x archive.7z8. rar用途:常见于windows操作系统。压缩率高,可以将文件压缩到更小的体积,支持加密文件名。扩展名:.rar命令:rar a archive.rar file1 file2 解压命令:unrar x archive.rar总结本文简单演示了linux操作系统下几个常见的压缩工具操作方法,这些工具各有优缺点,适合不同的使用场景。可以根据实际需求选择合适的压缩工具,有效减少存储空间,方便文件传输。
2024年10月21日
15 阅读
0 评论
0 点赞
2024-10-18
LibreSpeed——在本地搭建一台网速测试服务器
LibreSpeed是Github上的一个基于PHP和HTML的开源速度测试服务器项目,该项目可在Web上进行速度测试。平时我们在做网速测试时测的都是公网的速度,如果我们要在内网做测速,或者要测试到云服务器的连接速度,可以在服务器上部署该项目。项目地址:https://github.com/librespeed/speedtestDEMO中科大、南京大学等高校也使用该源码搭建了测速服务器。中科大测速网站:https://test.ustc.edu.cn/南京大学测速网站:https://test.nju.edu.cn/官方介绍没有 Flash、没有 Java、没有 Websocket、没有废话。这是一个用 Javascript 实现的非常轻量级的速度测试,使用了 XMLHttpRequest 和 Web Workers。支持所有现代浏览器:IE11、最新 Edge、最新 Chrome、最新 Firefox、最新 Safari。也适用于移动版本。官方列出的部署要求:如果仅使用测速功能,不进行数据存储,则可以不需要MySQL,只需要Web服务器+PHP环境就行。一个速度相当快的 Apache 2 Web 服务器(也支持 nginx、IIS)PHP 5.4 或更新版本(其他后端也可用)MariaDB 或 MySQL 数据库存储测试结果(可选,也支持 Microsoft SQL Server、PostgreSQL 和 SQLite)安装方法推荐使用Ubuntu系统,首先使用apt一键安装所需的软件包apt update apt install nginx php php-fpm unzip下载并解压源码,确定网站目录mkdir -p /home/wwwroot/ wget -O /home/wwwroot/ https://github.com/librespeed/speedtest/archive/refs/heads/master.zip cd /home/wwwroot && unzip speedtest-master.zip && mv speedtest-master speedtest 新建一个nginx配置文件nano /etc/nginx/conf.d/speedtest.conf #加入以下内容 server { listen 80; server_name 你的域名; root /home/wwwroot/speedtest; index index.html; location / { allow all; } location ~ [^/]\.php(/|$) { try_files $uri =404; fastcgi_pass unix:/run/php/php8.3-fpm.sock; fastcgi_index index.php; include fastcgi.conf; fastcgi_read_timeout 300s; } } 使用Ctrl+O写入,并使用Ctrl+X退出修改php配置nano /etc/php/8.3/fpm/pool.d/www.conf #加入以下内容后保存 listen = /run/php/php8.3-fpm.sock 启动nginx和phpsystemctl start nginx systemctl start php-fpm8.3补充源码里包含了多个HTML模板,在examples目录里,这里建议使用example-singleServer-gauges.html这个模板比较好看,模板默认都做了移动端适配。
2024年10月18日
48 阅读
0 评论
0 点赞
2018-12-14
Linux操作系统生成UUID的方法
Linux内核本身具有生成随机UUID的功能。cat /proc/sys/kernel/random/uuid该命令每执行一次,就可以输出一个随机的UUID。
2018年12月14日
2,063 阅读
0 评论
0 点赞
2018-08-20
利用iptables的string模块来屏蔽域名(关键词匹配)
简介iptables功能十分丰富,它能够对网关下带客户端的上网行为进行有效的控制,下面介绍如何利用它的string模块来对客户端的上网行为进行控制。string模块是iptables的一个扩展模块,目前大多数系统都已集成了该模块,少数较老的openwrt路由如果没有的话,可通过opkg命令安装。应用场景部署于基于Linux操作系统的网关上,可以是路由器,也可以是挂于旁路的防火墙、审计系统,只要可收集到客户端的上网流量即可。保护客户端数据安全,避免被某些无底线的互联网公司收集个人数据。屏蔽令人不适的广告。操作命令示范如果要屏蔽一个具体的网站,具体思路是让防火墙匹配客户端请求的数据包中的关键字,然后将该包丢弃,使客户端放弃连接。比如百度地图在定位的同时会收集当前IP地址所对应的物理位置。美名其曰收集地理位置提供更好的服务,实则令人厌烦,暴露了用户的行踪,时常有人代理服务器IP被定位到自家门口的情况。该API目前已关闭,然而不仅仅是百度地图,其他某些地图厂家也会这么干。而客户端向百度上报自己地点的数据包会携带相应的域名,即HTTP请求的Host头部(api.map.baidu.com和map.baidu.com),基于此原理即可将域名作为关键词来进行匹配。iptables -I FORWARD 1 -p tcp -m multiport --dports 80,443 -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG PSH,ACK -m string --string "api.map.baidu.com" --algo bm -j REJECT --reject-with tcp-reset iptables -I FORWARD 1 -p tcp -m multiport --dports 80,443 -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG PSH,ACK -m string --string "map.baidu.com" --algo bm -j REJECT --reject-with tcp-reset客户端的数据经由网关发出时,经过的是FORWARD链,所以应在它上面配置规则,multiport模块用于匹配多端口。即使它使用了SSL来传输数据,通过443端口传送时,我们仍然能从其中Client Hello数据包内的server_name(SNI)字段得知请求的主机名。这样,即使传输内容虽已加密,但是请求的主机名是明文传送的,iptables仍可以通过这一点来进行匹配。--tcp-flags可以更精确地匹配不同状态的数据包,避免错杀,若无额外配置该选项,则很可能将baidu的其他业务也屏蔽。--algo bm是匹配算法,默认是使用bm,当然也有较为复杂的kmp算法。最后的--reject-with tcp-reset较为重要的作用是将连接重置,令客户端无法与服务器建立连接。当然,这个操作已经将整个百度地图的服务全部屏蔽,客户端无法通过该局域网使用百度地图。而实际情况,我们常在室外(LTE网络)使用它,在室内基本是用不到的。题外话对于防火墙来说,通过返回TCP RST数据包给客户端来达到终止客户端的连接是非常合适的,因为在TCP/IP协议中,RST包是用来关闭异常的连接的,客户端一旦收到该数据包,将会立即关闭对主机的连接,不再尝试重连,应用会发出“连接已重置”或者"Connection reset by peer"的错误提示。而若将REJECT改为DROP,防火墙则是默默地丢弃数据包,不明真相的客户端迟迟未收到服务器回应,会多次发包尝试重连,防火墙则必须多次丢弃该数据包。因此REJECT与DROP相比,前者对防火墙的资源消耗少,显然采取它是明智的,这也与某些ISP的网络审计和过滤系统原理是类似的。防火墙被设计出来的目的就是为了保证内部网络的安全,将关键词过滤这一功能统一部署于网关将给防火墙后的客户端带来极大的方便和安全性,可以阻止无底线公司上传用户敏感数据,屏蔽流氓软件广告推送等等。
2018年08月20日
6,111 阅读
0 评论
0 点赞
2018-08-18
开源虚拟隧道创建程序VTun编译及配置详解
程序简介vtun是一款开源、轻量级的网络虚拟隧道创建程序,VTun可以通过TCP/IP协议为企业在公网上建立安全的VPN隧道。VTun的功能与OpenVPN类似,都是使用了Linux内核中的虚拟网卡TUN/TAP设备,同时它也支持PPP设备,能够提供多种形式的隧道。但是VTun与OpenVPN的区别是:VTun的隧道是一对一的,即隧道内仅有客户端和服务器两端,不像OpenVPN一样可以设置一个网段和分配不同IP给多个客户端,灵活性略逊后者。 VTun更适合应用于企业总公司与分公司远程组网的场景,直接部署于网关。部署和测试的系统环境客户端:Linux CentOS 7.3 ARM(树莓派3b)服务端:Linux CentOS 6.9 x86_64 (KVM VPS主机)系统内核必须有TUN/TAP和PPP模块,VPS主机须母机的支持。这里只测试RedHat系的系统,Debian系的类似。部署和测试的系统环境下载及编译程序先安装依赖yum install -y openssl openssl-devel zlib zlib-devel bison byacc flex gcc wget ppp lzo lzo-devel git下载程序源码cd /usr/src && git clone https://github.com/VTun/VTun cd /usr/src/VTun && ./configuremake && make install对配置文件进行修改编译完成后,默认的配置文件在/etc/vtund.conf,二进制文件在/sbin/vtund。程序启动时,将会通过读取/etc/vtund.conf配置文件来建立虚拟隧道。该文件内也给出了许多配置例子以供参考。VTun所能提供的隧道类型有IP隧道(tun)、以太网隧道(tap)、串行隧道(支持所有通过串行隧道工作的协议,如PPP、SLIP等等)、pipe隧道(支持通过Unix pipe工作的隧道)。用户可以根据环境的需求来选择合适的隧道类型以及协议。我仅测试了TUN和PPP隧道,而PPP隧道在进行连接时总是报找不到伪终端的错误(Can't allocate pseudo tty,No such file or directory.),调试多次无果,且由于相关资料较少,最终放弃了PPP隧道,如果有大佬知道如何解决还请留言多多指教。而TUN隧道的测试较为顺利,下面贴出TUN/TAP隧道的配置:TUN/TAP隧道服务端配置:#option字段是全局选项,包括监听的端口及定义使用到的二进制文件目录 options { port 5000; #服务器所监听的端口,默认为5000 bindaddr { iface eth0; }; #服务监听的网卡,一般为eth0 syslog daemon; #开启daemon模式,即守护模式,使程序在后台运行 ppp /usr/sbin/pppd; #这是一些二进制文件的目录,默认无需改动 ifconfig /sbin/ifconfig; route /sbin/route; firewall /sbin/ipchains; ip/sbin/ip;}#此处是定义默认会话的选项,将会应用于整个文件内的所有隧道 default { compress no; #compress决定是否对数据压缩,默认为no,压缩方法可选zlib和lzo speed 0; #speed选项可对隧道总速度进行限制,默认为0不限制,限速单位为KB/s } #以下是配置隧道选项,可一次性添加多个字段,即多条隧道,下列以tunnel1为例 tunnel1 { passwd XXXXXX; #此处定义隧道的密钥 type tun; #type选项可根据需求选择tun或者tap proto tcp; #proto是选择隧道通信所使用的协议,在国内运营商对UDP包大幅丢包的状态下,建议选择TCP以建立可靠的连接 device tun0; #隧道建立后,tun虚拟网卡的名称,不得与当前已有的设备重名 compress no; #压缩数据,同default字段里的compress encrypt no; #选择是否加密,加密有多种选项,当你不认为你处在一个可靠的网络内时,建议启用,默认加密方式为blowfish128ecb keepalive yes; # 该选项可隔一段时间ping对端以确认会话的状态,若客户端在NAT网关或者防火墙后,建议开启 stat yes; # 在日志里面记录隧道连接状态 #up字段是隧道在连接后,所执行的命令,即开启一个虚拟网络设备 up { #该选项表示隧道内,本地IP为10.221.96.10,对端IP为10.221.96.11,客户端在配置时应与之相对应 ifconfig "%% 10.221.96.10 pointopoint 10.221.96.11 mtu 1450"; }; down { #在隧道关闭时所执行的命令,即关闭网卡 ifconfig "%% down"; }; }TUN/TAP隧道客户端配置options { port 5000; timeout 60; #此处选项是设置连接到对端的超时时间,单位为秒 ppp/usr/sbin/pppd; ifconfig/sbin/ifconfig; route/sbin/route; firewall/sbin/ipchains; ip/sbin/ip; } #tunnel1字段是为了连接上面服务端的tunnel1隧道 tunnel1 { passwd XXXXXX; #隧道密码,只有与服务器一致才可连接成功 #以下选项同上 type tun; proto tcp; compress no; encrypt no; keepalive yes; stat yes; device tun0; persist yes; #开启此选项后,当物理网络出现问题时,可确保虚拟网卡tun设备不会处于down状态 up { ifconfig "%% 10.221.96.11 pointopoint 10.221.96.10 mtu 1450"; #该选项应该与服务端相对应,IP不得冲突,mtu应保持一致 }; down { ifconfig "%% down"; }; }启动VTunVTun的二进制文件为/sbin/vtund;服务端的启动命令为:vtund -s -f /etc/vtund.conf客户端的启动命令为:vtund -f /etc/vtund.conf tunnel1 $SERVER_IP其中-s选项表示程序以服务端运行,-f表示从配置文件中读取,在客户端启动命令中,tunnel1作为隧道的名称,应该加入到vtund -f /etc/vtund.conf后面,并且最后应填上对端服务器的外网IP。总结VTun作为轻量级网络隧道软件,与OpenVPN相比,配置也非常简单,根据官方介绍,它同OpenVPN一样也可以采用SSL来确保服务器不被仿冒,只能建立一对一隧道这一特性,决定了它更适合部署在网关/路由设备上,而openvpn极高的安全性以及多客户端的特性,决定了它更适合用于客户端-服务器这一模式,如出差员工通过手机、笔记本电脑连接至公司网关这一情景,能够保证员工在安全未知的网络环境下,仍然能通过SSL/TLS来建立安全的连接。
2018年08月18日
4,938 阅读
0 评论
0 点赞
1
2