Articles of linux

为什么不能在USB上读取SATA上的GPT分区磁盘?

如果我连接到SATA GPT分区4TB磁盘,那么它工作正常。 如果我拿起磁盘并放入USB3机箱,我就可以得到 [root@localhost liveuser]# sfdisk /dev/sdb sfdisk: Checking that no-one is using this disk right now … sfdisk: OK Disk /dev/sdb: 486401 cylinders, 255 heads, 63 sectors/track Old situation: Units: cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0 Device Boot Start End #cyls #blocks Id System /dev/sdb1 0+ 267349- 267350- 2147483647+ […]

networking层7深度包检测linux解决scheme是不是一个一体化的发行版?

概述: 我的软件已经将我们的Edge / DNS服务器硬编码到它们中,从DNS服务器返回的DNS查询没有被正确屏蔽。 我需要将从BIND查询请求返回的DNS条目与请求查询的源服务器(而不是DNS服务器IP)一起屏蔽。 我之所以要屏蔽这个原因,是因为如果一个攻击者得到我的边缘服务器IP和DDoS的一个,他们将无法获得其他服务器的IP和DDoS的攻击或攻击它们。 下图说明了我试图完成的简单版本。 有两种types的用户可以连接的方式: 直接提供给他们/硬编码的边缘服务器IP 要么 直接连接到他们分配的边缘服务器,然后通过Web界面,他们select连接到哪个办公室/服务器,后端的服务器上的iptables REDIRECT会通过VPN隧道。 问题: 事件顺序: 用户2连接到他们的边缘服务器(服务器2) 边缘服务器2将其查询redirect到边缘服务器1 边缘服务器1向边缘服务器2返回边缘服务器1的embedded在DNS数据包中的IP的查询响应。 用户获得他们不应该知道的隐藏的边缘服务器IP。 核心问题: 边缘服务器的IP被embedded到DNS响应数据包中,并需要被屏蔽到用户所连接的原始边缘服务器IP上 DNS查找示例输出: User2查询google.ca DNS服务器1处理查询并返回它自己的IP的结果,而不是谷歌的IP。 查找请求(错误): nslookup google.ca Server: UnKnown Address: 2.2.2.2 Name: google.ca Address: 1.1.1.1 查找请求应该显示: nslookup google.ca Server: UnKnown Address: 2.2.2.2 Name: google.ca Address: 2.2.2.2 以下是构build的networking/系统的大型版本。 办公室可以有一个或多个服务器,取决于有多less用户。 (这只是给你一个如何扩展的想法) 我试过了: iptables的前/后路由(没有掩码) 玩BINDconfiguration(改变db.override文件返回服务器的IP)工作,但将需要一个单独的服务器每个边缘服务器,因为这个文件不能实时更新。 潜在的解决scheme理论: 第7层解决scheme可以改变DNS查询结果IP,无论是防火墙还是强制特定查询显示原始边缘服务器IP的嗅探器/注入脚本。

IPsec – 奇怪的行为

我已经build立了linux(debian)和mikrotik路由器之间的站点到站点ipsec连接。 隧道已经到了 linuxconfiguration: config setup interfaces=%defaultroute keep_alive=60 plutodebug=all plutostderrlog=/var/log/pluto.log nat_traversal=yes protostack=netkey oe=off conn sitetosite left=10.0.0.249 #local gateway leftsubnets=10.0.0.0/24 leftid=xxx.xxx.xxx.xxx #linux external IP leftsourceip=10.0.0.249 right=yyy.yyy.yyy.yyy #mikrotik external IP rightsubnets=10.111.11.0/24 rightid=yyy.yyy.yyy.yyy pfs=yes type=tunnel forceencaps=yes authby=secret auto=start Linux防火墙规则不能在这两个子网之间伪装: iptables -t nat -A -s 10.0.0.0/24 ! -d 10.111.11.0/24 -j MASQUERADE 在mikrotik我有类似的规则。 问题是我无法从Mikrotik LAN客户端ping 10.0.0.249(Linux局域网网关) 有任何想法吗 ?

如何在将LVM中的镜像添加到现有的LV时指定用于镜像的PV?

我在RHEL服务器上安装了一个包含单个LV的现有VG,它由less量的SAN磁盘组成。 为了将服务器迁移到更新的SAN,我希望将现有的存储镜像反映到已添加到服务器的新存储中。 我们正在试图做到这一点,这样就不会中断LV的可用性。 我怀疑应该有一些方法来使用lvconvert命令来做到这一点,但我似乎无法弄清楚我的生活。 看起来很简单,为卷添加一个镜像,但是我一直无法find任何关于如何指定用来创build新镜像腿的磁盘集。 目前我有以下几点: 旧SAN: PV VG Fmt Attr PSize PFree /dev/mapper/mpath0 vg_ap01 lvm2 a– 136.00G 0 /dev/mapper/mpath1 vg_ap01 lvm2 a– 136.00G 0 /dev/mapper/mpath11 vg_ap01 lvm2 a– 136.00G 1.00G /dev/mapper/mpath12 vg_ap01 lvm2 a– 136.00G 0 /dev/mapper/mpath2 vg_ap01 lvm2 a– 136.00G 0 /dev/mapper/mpath3 vg_ap01 lvm2 a– 136.00G 1.00G /dev/mapper/mpath4 vg_ap01 lvm2 a– 136.00G 1.00G […]

networking服务器上奇怪的CPU加载峰值

我在我的网站上有奇怪的,非常奇怪的CPU负载高峰。 正常加载2-3个左右,当我有这个峰值时,大约是100-150个峰值,可能是在任何时候。 不取决于我正常的加载情况(例如上午6点),峰值2-3-5分钟 CPU负载影响networkingstream量和nginx请求的数量。 这一次我没有很多Web服务器的请求。 服务器是与另一台服务器上的nginx,php-fpm,redis,rabbit-mq,mysql分开的web服务器。 我真的需要build议,我怎么知道这个来源。 当我知道源,我会消除它。 我会很感激你的build议。 来自zabbix监控的图表:

Git / svn – 保持同步两个不同的访问权限的存储库

我已经被@PatrickQuirkbuild议在这里发布这个问题… 网上有太多的资料让我了解,并能够得到我自己的图片,所以我轻轻地要求社区为我的旅程提供灯光。 我的情况: 我们公司的防火墙后面有一个SVN服务器。 不可能移动到DMZ。 我们需要一些第三方(我们的客户)从远程位置访问部分源代码,因为他们正在为开发作出贡献。 但是他们不是来自我们公司的,所以我不能提供他们的VPN访问。 我需要他们不仅能够读取源代码,还可以提交更改。 我们的SVN回购包含我们所有的产品。 我只想给我的客户端提供一些文件夹。 我的公司非常不愿意让我们购买一个私人的GitHub帐户…出于安全原因,而不是成本…我们正在尝试几个月以下,但它不工作,因为它需要手动同步: 在线租用虚拟机。 安装一个Git服务器。 提供对我们的开发者和我们的客户的访问。 做一个初步的结帐svn文件夹我想分享的数量减less。 我们都在努力:改进这些文件夹中的代码或创build新的源代码和文件夹。 我们的开发人员应该手动更新/提交这两个回购…这只是发生… 所以我正在寻找自动同步的解决scheme,但要记住访问权限… 另一个担心是,我们公司将在明年将我们所有的SVN迁移到Git …我没有期待这个问题,运行我们自己的git服务器,而不是SVN,但它将不得不被保留在防火墙之后。 然后,我迷失在“克隆”,“镜像”方面,并保持正确的访问权限… … – 你可以就这个分布式体系结构提供什么解决scheme/build议?

独立的L2TP / IPsec VPN与dynamicVLAN分配

我正在为Linux(Debian 7)VPN集中器进行各种远程访问。 由于客户端的可用性,所提供的协议之一是L2TP / IPsec。 我正在使用xl2tpd,它反过来使用pppd和pppd通过RADIUS服务器validation用户。 我们现在想要实现的是基于用户连接到VPN来控制networking访问。 例如,用户A应该只能访问子网X,而用户B只能访问子网Y.实际上,这与WLAN的dynamicVLAN分配类似。 不幸的是,我找不到(如果我错了,请纠正我)Linux下L2TP / IPSec VPN的开箱即用解决scheme。 我想出了一个可以做到这个诀窍的想法,但是它看起来像是一个相当多的工作,所以我想知道它是否包含任何明显的缺陷,或者是否有更简单的方法。 思路:使用RADIUS(尤其是Tunnel-Private-Group-Id)的dynamicVLAN分配属性和ppp的radattr.so插件。 xl2tpd为每个连接的客户端分配一个新的虚拟接口pppX,插件创build一个文件/var/run/radattr.pppX,其中包含从RADIUS服务器接收到的所有属性。 ppp-ifup脚本可以使用这些属性将新创build的虚拟接口分配给具有相应VLAN的Linux桥接端口。 有没有人build立这样的configuration呢? 有什么阻止这个工作? 你会不会因为某种原因而不喜欢这种configuration? 提前致谢

Linux NFS服务器拒绝阻塞锁

所以我有这个问题。 这个可怕的,可怕的问题。 我有一套Linux NFS服务器(在使用CTDB的NFS / CIFS集群中),只有在锁被阻塞时才拒绝锁。 如果这是一个非阻塞的呼叫,它工作得很好。 查看下面的交通stream量: lockinglocking电话: 9.414674 10.10.1.40 -> 10.10.1.14 NLM 282 V4 LOCK Call FH:0xf6b3519c svid:5 pos:0-0 nlm.lock.caller_name == "centos-ad2012r2" nlm.exclusive == 1 nlm.block == 1 9.415002 10.10.1.14 -> 10.10.1.40 NLM 106 V4 LOCK Reply (Call In 39) NLM_BLOCKED nlm.stat == 3 18.613965 10.10.1.40 -> 10.10.1.14 NLM 274 V4 CANCEL Call […]

如何监控每个iptables伪装设备的带宽

题: 我可以使用哪种工具实时监视和分解哪些带宽由iptables传送到哪台计算机? 语境: 我有一个Linux的盒子,通过iptables和3个以太网(2个局域网,1个广域网)来伪装大约15台设备。 用户有时会消耗所有的ADSL带宽。 我使用bwm-ng来监控stream量,并看到如下结果: $ bwm-ng bwm-ng v0.6 (probing every 0.500s), press 'h' for help input: /proc/net/dev type: rate / iface Rx Tx Total ============================================================================== tun0: 0.00 KB/s 0.00 KB/s 0.00 KB/s eth0: 31.35 KB/s 649.82 KB/s 681.18 KB/s eth1: 649.40 KB/s 33.84 KB/s 683.24 KB/s eth2: 0.00 KB/s 0.00 KB/s 0.00 KB/s […]

Amazon EC2 – 无法find/挂载EBS卷分区

我有一个Linux实例,已经连接了20GB的ebs卷。 Web控制台卷页面显示: 20 GiB gp2 snap-b3a87xyz in-use i-cd5b9999 (myinstance):/dev/sda1 (attached) Web控制台实例页面显示: Root device type: ebs Root device: /dev/sda1 Block devices: /dev/sda1 在命令行上(20GB分区未显示为已安装): # df -kh Filesystem Size Used Avail Use% Mounted on /dev/xvda2 6.0G 803M 5.3G 14% / devtmpfs 1.8G 0 1.8G 0% /dev tmpfs 1.8G 0 1.8G 0% /dev/shm tmpfs 1.8G 17M 1.8G 1% […]