服务器管理员

系统和网络管理员的问答

2
DNS超时应该如何工作?
我最近遇到了一个问题,其中要求我的服务器(带有托管DNS提供商)的IP地址的远程服务响应: DNS problem: SERVFAIL looking up A for mysql.xavamedia.nl (更新:这里提到的远程服务是“让我们加密”;我针对他们的问题跟踪器提交了一个错误,这使我走上了这条路。) 在本地网络上进行测试时,我能够看到有时从托管的DNS服务器收到空的DNS响应。显然,这是间歇性的,因为仅当DNS记录不在高速缓存中时才会发生,并且仅在DNS服务器非常繁忙时才出现问题。 这是Wireshark对空响应消息的描述: 当然,由于大多数DNS查询和响应都是通过UDP发送的,因此本地解析器将等待一段时间以等待响应,然后放弃。我现在想知道的是,是否存在有关DNS响应时间的准则?我的DNS托管服务商有点耸耸肩,说我的本地解析器过早发送了空响应。我以前从未遇到过此问题,但是我对失败模式感到惊讶-空DNS响应,没有错误代码。 有人知道一些有关如何工作以及如何/何时可以证明我的DNS托管做错事的准则吗?

3
带有chroot的SFTP取决于连接用户的公钥
我想构建一个服务器(运行Debian或FreeBSD),该服务器通过sshfs从不同的客户端接收备份。每个客户端都应该能够读取和写入自己的备份数据,但不能读取其他任何客户端的数据。 我有以下想法:每个客户端都通过公用密钥auth连接到backup@backupserver.local。用户备份具有一个特殊的authorized_keys文件,如下所示: command="internal-sftp" chroot="/backup/client-1/data" ssh-rsa (key1) command="internal-sftp" chroot="/backup/client-2/data" ssh-rsa (key2) command="internal-sftp" chroot="/backup/client-3/data" ssh-rsa (key3) etc... 这样做的好处是,我不需要为每个客户端使用单独的用户,并且可以轻松地使用脚本自动生成authorized_keys文件。 只有一个问题:chroot=...不能正常工作。OpenSSH的authorized_keys文件似乎没有与ChrootDirectory等效的文件(可在/ etc / ssh / sshd_config中全局或在“匹配用户”块中使用)。 有没有使用OpenSSH完成我想要的工作的合理简单方法?也许command=...以一种聪明的方式使用指令?另外,还有其他SFTP服务器可以执行我想要的操作吗? 编辑:为了更清楚我要实现的目的:我希望多个客户端能够在我的服务器上存储文件。每个客户端都不能看到其他任何客户端的文件。而且我不想在服务器上堆满几十个用户帐户,因此我想为客户提供一个易于管理的解决方案,使客户端共享一个用户帐户,但仍然无法访问彼此的文件。
9 linux  ssh  freebsd  sftp  ssh-keys 

3
如何将MySQL 5.7.9安装到Ubuntu 14.04?
我尝试使用这些指示进行安装,但是安装安装的版本为5.5。 $ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa:ondrej/mysql-5.7 $ sudo apt-get update $ sudo apt-get install mysql-server http://tecadmin.net/install-mysql-5-on-ubuntu/

4
为什么RAID 10设备需要初始化?
当创建一个Linux软件RAID设备作为raid10设备时,我很困惑为什么必须对其进行初始化。确实,同样的问题适用于raid1或raid0。 最终,大多数人会在其之上放置某种文件系统,并且该文件系统不应假定磁盘数据处于任何状态。每次写入都会影响在其中写入了N个镜像的raid10或raid1设置中的两个磁盘。最初没有任何理由可以初始化raid10,因为它会随着时间的流逝而发生。 我可以理解为什么要对raid5 / 6设置有奇偶校验的要求,但是即使如此,这似乎也可能是懒惰的。 只是让人们对此感到更好吗?

1
.net framework 3.5错误代码:0x800F081F
我刚刚将工作PC更新为Windows 10 Enterprise。更新后,我注意到除RDP之外的所有其他远程连接工具均无法安装或无法正常工作,并且提示我安装.NET Framework 3.5。我尝试了几种不同的方法来安装此功能,但没有成功。我访问了很多在线资源,并尝试了大多数建议,但仍然无法安装。至此,我有: 尝试在PC本身上使用Windows Update安装程序进行安装,但出现错误代码:0x800F081F 我试图通过Microsoft下载更新并安装,但未使用Windows Update获得相同结果 我已经通过命令提示符运行了DISM修复,然后尝试以相同的结果进行安装 我试图在PC的“打开或关闭Windows功能”窗口中打开.NET Framework 3.5功能 加上上述相同项目的多个版本。 我的问题是我是否在PC上丢失了某些东西,是否可以采取另一种方法,还是我看不到的其他问题? 提前谢谢你的帮助。

1
SSH-1挂在“进入交互式会话”(不是DNS;可能与SELinux相关)
我在CentOS 6.7上遇到问题,其中SSH登录比该网络上的任何非6.7计算机(例如7.2、5.11)多1秒。在客户端运行调试显示“进入交互式会话”挂起。 我用来作为该测试基础的命令是time ssh <host> true使用SSH密钥从笔记本电脑上获得的。 我已经检查/修改过的两件事是UseDNS和GSSAPIAuthentication,并且两者都被禁用。 我在其他端口上启动了单独的守护程序,并进行了调试,并发现发生短挂起的位置: debug1: SELinux support enabled debug3: ssh_selinux_setup_exec_context: setting execution context {1s hang} debug3: ssh_selinux_setup_exec_context: done SELinux设置为“宽松”。我不确定为什么它还要打扰“设置上下文”。有什么办法可以使这两个人更好地相处而不完全禁用SELinux?我知道1s并不多,但是我使用这台特定的机器作为SSH网关来托管具有IP白名单的主机(这是一台静态IP机器),并且整日累积。 在运行strace之后,挂起的位置更加细微: 22:16:05.445032 open("/selinux/user", O_RDWR|O_LARGEFILE) = 4 <0.000090> 22:16:05.445235 write(4, "unconfined_u:system_r:sshd_t:s0-s0:c0.c1023 unconfined_u", 56) = 56 <0.334742> 22:16:05.780128 read(4, "18\0unconfined_u:system_r:prelink_mask_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_mount_t:s0-s0:c0.c1023\0unconfined_u:system_r:abrt_helper_t:s0-s0:c0.c1023\0unconfined_u:system_r:oddjob_mkhomedir_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_notrans_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_execmem_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_java_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_mono_t:s0-s0:c0.c1023\0unconfined_u:system_r:chkpwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:passwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:updpwd_t:s0-s0:c0.c1023\0unconfined_u:system_r:mount_t:s0-s0:c0.c1023\0unconfined_u:system_r:rssh_t:s0-s0:c0.c1023\0unconfined_u:system_r:xauth_t:s0-s0:c0.c1023\0unconfined_u:system_r:unconfined_t:s0-s0:c0.c1023\0unconfined_u:system_r:openshift_t:s0-s0:c0.c1023\0unconfined_u:unconfined_r:oddjob_mkhomedir_t:s0-s0:c0.c1023\0unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023\0", 4095) = 929 <0.000079> 写入/selinux/user仅需350毫秒。 更新1-我尝试过的事情: 正在更新。许多盒子需要更新。这对登录时间没有任何实质性影响。 semodule -d …

3
我应该在(官方)存储库中使用CentOS软件包版本还是软件包的最新稳定版本?
这是一个开放式的问题,但我希望对此主题进行建设性和有益的讨论。 因此,需要澄清一个问题:在运行CentOS 7(或其他任何Linux发行版/版本)的服务器上,最好坚持使用Base / EPEL存储库中的软件包版本,还是可以得到最新的稳定版本?形成打包站点?在这种情况下,我更具体地指的是像nginx,MariaDB和PHP 7这样的软件包。例如,在EPEL 1.6.3上安装nginx 1.8.0的利弊是什么?两种方式之间是否存在性能差异或安全风险? 欢迎所有讨论和经验,请尝试引用资源和事实。

1
使用Real-IP时如何记录$ remote_addr的原始值
我的环境中的用户请求通过多个系统传递: [客户]-> [ELB] ---> [nginx]-> [网络] (ELB = AWS Elastic Load Balancer) 多亏了这个答案,我让nginx确定了正确的客户端IP地址并将其传递给带有X-Forwarded-For和X-Real_IP标头的上游服务器(网络)。相关的nginx配置: real_ip_header X-Forwarded-For; set_real_ip_from 10.0.0.0/8; real_ip_recursive on; proxy_set_header X-Real-IP $remote_addr; 我的问题是,nginx中的Real IP模块用$remote_addr其X-Forwarded-For计算结果替换了现有变量。这给了我原始的客户端IP,但是我丢失了实际上将请求发送到代理(即ELB)的系统的IP地址。 总的来说,拥有客户端IP对我来说更重要,但是我希望能够记录完整的请求链,以便我可以了解(并调试)流量的流向。目前,我只能让nginx记录客户端IP,它自己的IP和上游服务器IP。我也希望能够登录ELB IP。 我看到X-Istence在2013年问了同样的问题,运气不佳。从那以后有什么变化或改善?

4
UPS要求-最大负载还是实际负载?
我们的UPS部门之一在本周末发生了故障(新年快乐!),因此我一直在寻找更换它的机会。 我已经针对我们的功率要求进行了计算,结果显示功率不到8000W。这是基于我们正在运行的硬件制造商的数据表,而不是实际的当前使用情况。 我们目前有两个UPS单元,最大的是4000W,另一个是1500W,因此看来我们已经处于容量不足的状态(尽管这些单元永远不会超过60%的容量) 我应该购买能够处理所有硬件最大负载(8000W)的设备,还是仅基于峰值负载和一定的净空?(这里不考虑增长) 另外,最好的做法是有一个较大的单元,还是有两个较小的单元,因为我们在大多数硬件上都有冗余的PSU。 更新资料 今天上午与APC进行了交谈,该装置没有希望,而且它不在保修范围内,因此需要更换。 我在饲料上放了一个功率计,以了解实际使用情况,功率为1.8kW。 我上面提到的8kW数字是最大潜在负载,包括每个交换机端口是否也启用了POE。 由于我们永远都不会达到8kW的标记,而且从技术上讲这是不可能的,因为我们只有两个16A SP馈入机柜,因此每个馈入最多只能消耗3.68kW。 因此,我要提出的建议是,我们购买两台3kW UPS冗余设备,它们将满足我们的平均水平。负载加上1kW的开销(这足够大吗?),然后添加两个额外的3kW电池以提供所需的运行时间。然后,我将每个冗余PSU分配给每个UPS,这样每个UPS(理论上)将有1.8kW负载的一半。 值得注意的是,我们执行了交错的加电过程,因此恢复供电后负载不会激增。 这听起来理智吗?

1
10GbE VMware分布式交换机的iSCSI设计选项?MPIO与LACP
我正在为数据中心的几个VMware vSphere 5.5和6.0群集扩展存储后端。在我的VMware经验中,我主要使用NFS数据存储(Solaris ZFS,Isilon,VNX,Linux ZFS),并且可能将Nimble iSCSI阵列以及可能的Tegile(ZFS)混合阵列引入环境中。 当前的存储解决方案是Nexenta ZFS和基于Linux ZFS的阵列,它们可向vSphere主机提供NFS挂载。通过存储头上的2 x 10GbE LACP中继和每个ESXi主机上的2 x 10GbE来提供网络连接。交换机是配置为MLAG对等体的双Arista 7050S-52机架顶部单元。 在vSphere方面,我正在使用在2个10GbE上行链路上配置了LACP绑定的vSphere Distributed Switch(vDS)和VM端口组,NFS,vMotion和管理流量的网络I / O控制(NIOC)分配份额。 多年来,这种解决方案和设计方法一直表现出色,但是增加iSCSI块存储对我来说是一个很大的转变。在可预见的将来,我仍然需要保留NFS基础结构。 我想了解如何在不更改物理设计的情况下将iSCSI集成到此环境中。ToR开关上的MLAG对我来说非常重要。 对于基于NFS的存储,LACP是提供路径冗余的常用方法。 对于iSCSI,通常不赞成LACP,建议使用MPIO多路径设计。 我到处都在使用10GbE,并希望保持到每个服务器的简单两端口链接。这是为了布线和简化设计。 鉴于以上所述,如何充分利用iSCSI解决方案? 通过LACP配置iSCSI? 在vDS上创建VMkernel iSCSI适配器,并尝试将它们绑定到单独的上行链路,以实现某种形式的突变MPIO? 添加更多的网络适配器?

4
网络服务器随机提供不同的虚拟主机
我们已经在Ubuntu Trusty上运行了nginx。它通过一个IP地址上的https服务多个网站。 随机地,尽管它似乎与工作量有些关系,但有时单个请求会出现在错误的虚拟主机上。这导致要求lustrum.thalia.nu由服务,thalia.nu反之亦然。然后,当用户突然进入另一个网站时,这将产生令人讨厌的错误页面。按时F5,用户将再次回到原始目标。 似乎与浏览器或操作系统无关。已经确认它会在Firefox(Linux,Windows,Mac),Edge(Windows)和Chrome(Linux,Windows,Android)和Safari(iOS)上发生。 当系统处于负载状态时,此问题似乎更经常发生,这表明存在某种竞争状况。 芦荟 server { server_name lustrum.thalia.nu; listen 443 ssl; ssl on; ssl_certificate /etc/nginx/certs/lustrum.thalia.nu.crt; ssl_certificate_key /etc/nginx/certs/lustrum.thalia.nu.key; add_header Strict-Transport-Security "max-age=63072000; preload"; root /var/www/thalia-lustrum/public_html; location / { index index.php; try_files $uri $uri/ /index.php?$args; } # Add trailing slash to */wp-admin requests. rewrite /wp-admin$ $scheme://$host$uri/ permanent; # Pass all .php …

1
在故障转移群集中混合HBA?
我有两个服务器故障转移群集,出于各种原因-它们使用的硬件不匹配。 一个安装了Emulex HBA,另一个安装了Qlogic。 对于在盒子中使用两种不同牌子/型号的卡进行多路径处理,我会有些抽搐。因此,在共享存储故障转移群集中执行此操作有点不舒服。 是否有特定的原因为什么这可能是一个坏(或好?)主意,还是我只是过分关注?

2
iptables正在将IP转换为域
我想阻止服务器上的整个IP: iptables -A INPUT -s 77.0.0.0/8 -j DROP 虽然当我跑步 iptables -L 根据该记录,我得到了一个奇怪的域而不是IP DROP tcp -- x4d000000.dyn.telefonica.de/8 anywhere
9 iptables 

3
通过端口8080/8443服务HTTP / HTTPS是否安全?
由于基础结构的限制,为世界提供HTTP服务的建议解决方案之一是通过端口8080和8443提供该服务。 我担心的是,某些用户可能无法访问这些服务,因为它们不在标准端口上运行,并且内容可能被(例如)作为公司网络策略的一部分进行了过滤。 那么...整个互联网上的用户可能无法访问这些服务的可能性有多大?

2
如何对sendmail TLS_Rcpt使用通配符?
sendmail对TLS对话设置了一个位置限制。我想检查发送到example.com的邮件是否已发送到具有* .messagelabs.com证书的服务器。我想防止DNS欺骗和MitM。如果messagelabs只有一台服务器,那就容易了: TLS_Rcpt:example.com VERIFY:256+CN:mx.messagelabs.com 但是,messagelabs有许多服务器和不同服务器的群集,它们具有相同名称的唯一IP和证书。很好,我只想检查要向我发送邮件的服务器是否经过验证,属于Messagelabs。 我努力了 TLS_Rcpt:example.com VERIFY:256+CN:messagelabs.com TLS_Rcpt:example.com VERIFY:256+CN:*.messagelabs.com TLS_Rcpt:example.com VERIFY:256+CN:.*.messagelabs.com 但我收到类似的错误 CN mail31.messagelabs.com does not match .*.messagelabs.com 我怎样才能做到这一点?这是对我们的经常性请求(主要是针对TLS_Rcpt:example.com VERIFY:256 + CN:*。example.com之类的配置),因此我可以修改sendmail.cf,但我无法理解 STLS_req R $| $+ $@ OK R<CN> $* $| <$+> $: <CN:$&{TLS_Name}> $1 $| <$2> R<CN:$&{cn_subject}> $* $| <$+> $@ $>"TLS_req" $1 $| <$2> R<CN:$+> $* $| …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.