服务器管理员

系统和网络管理员的问答

5
如何将cdrom设备连接到kvm / qemu域(使用命令行工具)?
我已经在Ubuntu笔记本电脑上设置了运行Windows XP的虚拟机。使用virt-managerGUI应用程序,我可以将CD插入驱动器,然后转到Details→IDE CDROM 1,然后单击Connect按钮。然后,该CD在我的虚拟机中可用。 如何通过命令行执行相同操作?显然,我也希望能够与命令行断开连接。 注意:我可以使用virsh start testbed(测试床是域/ VM的名称)从命令行启动VM。

2
使用Nginx的Varnish是否比仅使用Nginx更好?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我看到很多关于将Nginx与Varnish结合使用的讨论,但我不明白为什么。nginx还不够吗? Nginx具有SSI,具有反向代理缓存,重量轻,具有SSL,可以与cgi,fpm等配合使用。 Varnish具有相同的功能,但没有ssl,也没有cgi支持。
22 nginx  varnish 

6
如何准备捐赠电脑
我们将淘汰约40台Dell台式机。我们想捐赠它们,但需要擦除驱动器。尽可能有效地擦除所有内容的最佳方法是什么? 在捐赠之前重新安装OEM操作系统是标准做法,还是通常由收件人来解决?如果需要重新安装操作系统,对3种不同型号进行映像的最佳方法是什么?
22 hardware 

2
如何在Ubuntu中阻止除三个端口以外的所有端口?
如何封锁除1962、999、12020以外的所有端口? 一个用于SSH的端口,另一个用于一个脚本的端口。因此,有必要允许这些端口上的传出,对吗? 我的iptables: # Generated by iptables-save v1.4.4 on Sat Feb 25 17:25:21 2012 *mangle :PREROUTING ACCEPT [643521:136954367] :INPUT ACCEPT [643521:136954367] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [645723:99904505] :POSTROUTING ACCEPT [645723:99904505] COMMIT # Completed on Sat Feb 25 17:25:21 2012 # Generated by iptables-save v1.4.4 on Sat Feb 25 17:25:21 2012 …
22 ubuntu  iptables 


6
FTP有哪些安全的替代方法?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使其成为服务器故障的主题。 6年前关闭。 这个Hacker News故事是关于FTP的缺点的。我可以设置FTP的唯一原因是它很简单。 我scp已经知道并使用过,但是有时我想与某人共享文件而不让他们ssh访问我的服务器。我希望他们能够上载和下载文件,但别无其他,我想将它们限制在一个目录中。我也希望他们的连接像一样被加密ssh。 符合这些条件的FTP替代品有哪些?
22 security  ftp  sftp 

4
UFW的速率限制:设置限制
UFW的手册页提到它可以为我设置iptables速率限制: ufw支持连接速率限制,这对于防止暴力登录攻击很有用。如果IP地址在最近30秒内尝试启动6个或更多连接,则ufw将拒绝连接。有关 详细信息,请参见 http://www.debian-administration.org/articles/187。典型用法是: ufw limit ssh/tcp 不幸的是,这是我能找到的所有文档。我想坚持使用UFW,而不要使用更复杂的iptables命令(以使事情“不复杂”)。 我如何使用ufw将端口80上的所有传入(非传出)流量限制为每30秒20个连接?如何禁用端口30000至30005的速率限制?默认情况下是否为所有端口启用速率限制?

1
Linux中同一子网上的两个网络接口和两个IP地址
最近,我遇到了这样的情况:我需要在分配给一个Linux主机的同一子网上使用两个IP地址,以便我们可以运行两个SSL / TLS站点。我的第一种方法是使用IP别名,例如使用eth0:0,eth0:1等,但是我们的网络管理员对安全性设置了一些相当严格的设置,从而压制了这个想法: 他们使用DHCP监听,通常不允许使用静态IP地址。静态寻址是通过使用静态DHCP条目完成的,因此相同的MAC地址始终获得相同的IP分配。如果您有要求,可以在每个切换端口禁用此功能(原因是我与网络人员的关系很好,这并不难做到)。 在交换机端口上禁用DHCP侦听的情况下,他们必须在交换机上制定一条规则,即允许该MAC地址X具有IP地址Y。不幸的是,这样做的副作用还在于,仅允许MAC地址X具有IP地址Y。IP别名要求为MAC地址X分配两个IP地址,因此这不起作用。 在交换机配置上可能已经有解决这些问题的方法,但是为了保持与网络管理员的良好关系,我尝试寻找另一种方法。拥有两个网络接口似乎是下一步的逻辑。幸运的是,该Linux系统是一台虚拟机,因此我能够轻松添加第二个网络接口(无需重新启动,我可能会添加-非常酷)。几次击键后,我启动了两个网络接口并运行,并且两个接口都从DHCP提取了IP地址。 但是随后出现了问题:网络管理员可以看到(在交换机上)两个接口的ARP条目,但是只有我提出的第一个网络接口才能响应ping或任何类型的TCP或UDP流量。 经过大量的挖掘和戳戳后,这就是我的想法。它似乎可行,但是对于看起来应该很简单的某些事情,它似乎也需要大量工作。还有其他想法吗? 步骤1:在所有接口上启用ARP过滤: # sysctl -w net.ipv4.conf.all.arp_filter=1 # echo "net.ipv4.conf.all.arp_filter = 1" >> /etc/sysctl.conf 从Linux内核文档中的文件networking / ip-sysctl.txt中: arp_filter - BOOLEAN 1 - Allows you to have multiple network interfaces on the same subnet, and have the ARPs for each interface be answered based on …
22 linux  routing 

8
我应该完全关闭Linux Web服务器的交换吗?
最近,我的朋友告诉我,关闭具有足够内存的linux Web服务器上的交换是个好主意。我的服务器有12 GB,当前在峰值负载下使用4GB(不计算缓存和缓冲区)。 他的观点是,在正常情况下,服务器将永远不会使用其所有RAM,因此,它可能遇到OutOfMemory情况的唯一方法是由于某些bug / ddos​​ / etc。因此,如果关闭交换,系统将耗尽内存,最终将使程序占用内存(很可能是Web服务器进程)以及其他一些进程崩溃。在交换的情况下打开的它会同时吞噬RAM和交换空间,最终将导致相同的崩溃,但是在此之前,它将卸载sshd之类的关键进程进行交换,并开始执行大量交换操作,从而导致严重的速度下降。这种方式在ddos系统下可能会由于巨大的延迟而进入完全无法使用的状态,并且我可能将无法登录并杀死Web服务器进程或拒绝所有传入流量(除ssh之外的所有流量)。 这是正确的吗?我是否缺少某些东西(例如即使我有足够的RAM,交换分区在某种程度上还是很有用的事实)?我应该关闭它吗?

3
mysql:无法从mysql.proc加载。该表可能已损坏
MySQL已启动: /usr/bin/mysqld_safe --datadir=/srv/mysql/myDB --log-error=/srv/mysql/logs/mysqld-myDB.log --pid-file=/srv/mysql/pids/mysqld-myDB.pid --user=mysql --socket=/srv/mysql/sockets/mysql-myDB.sock --port=3700 但是当我尝试做某事时: ERROR 1548 (HY000) at line 1: Cannot load from mysql.proc. The table is probably corrupted 如何解决? $ mysql -V mysql Ver 14.14 Distrib 5.1.58, for debian-linux-gnu (x86_64) using readline 6.2 $ lsb_release -a Distributor ID: Ubuntu Description: Ubuntu 11.10 Release: 11.10 …
22 ubuntu  mysql 

5
Nginx set_real_ip_from AWS ELB负载均衡器地址
我在Amazon ELB负载均衡器后面有一组Nginx服务器。我正在使用set_real_ip(来自HttpRealIpModule),以便可以访问这些服务器上的原始客户端IP地址(用于传递到php-fpm并在HttpGeoIPModule中使用)。 似乎set_real_ip_from在nginx配置中只能接受一个I​​P地址。但是,关于ELB机器,亚马逊说: 注意:由于与LoadBalancer关联的IP地址集会随着时间而变化,因此您永远不要使用任何特定IP地址创建“ A”记录。如果要为您的LoadBalancer使用友好的DNS名称,而不是由Elastic Load Balancing服务生成的名称,则应为LoadBalancer DNS名称创建CNAME记录,或使用Amazon Route 53创建托管区域。有关更多信息,请参阅在弹性负载平衡中使用域名 但是,如果我需要输入IP地址,则不能使用CNAME(亚马逊的或我自己的)。有解决这个问题的方法吗?

6
使用IPtables还是使用空路由将一百万个IP地址列入黑名单?
我遇到过这样一种情况:客户端需要将一组将近一百万个单独的IP地址(没有子网)列入黑名单,并且网络性能是一个问题。虽然我可以推测IPTables规则对性能的影响比对路由的影响要小,但这只是一个推测。 有没有人有任何确凿的证据或其他理由赞成使用IPTables或空路由作为将IP地址长列表列入黑名单的解决方案?在这种情况下,一切都是自动化的,因此易用性并不是真正的问题。 编辑11年11月26日 经过一些测试和开发,这些选项似乎都不可行。似乎路由查找和iptables都通过规则集进行线性搜索,并且处理这些规则花的时间太长。在现代硬件上,将100万个项目放入iptables黑名单会使服务器的速度降低到每秒约2打数据包。因此IPTables和空路由都消失了。 ipset,如Jimmy Hedman所建议的那样,将非常有用,除了它不允许您在一个集合中跟踪超过65536个地址外,因此,除非有人有任何想法,否则我什至无法尝试使用它。 显然,阻止这么多IP的唯一解决方案是在应用程序层中进行索引查找。不是吗 更多信息: 这种情况下的用例是阻止IP地址的“已知违规者”列表访问Web服务器上的静态内容。FWIW,通过Apache进行阻塞Deny from同样很慢(如果不是更多的话),因为它也进行线性扫描。 仅供参考:最终可行的解决方案是将apache的mod_rewrite与berkeley DB映射结合使用以对黑名单进行查找。伯克利数据库的索引性质使列表可以随着O(log N)性能进行扩展。

1
bash脚本中的Ctrl-C
如何在bash脚本中实现ctrl+ c处理,以使脚本以及该脚本当前运行的命令被中断? (想象一下,有一个脚本执行一些长时间运行的命令。用户按下ctrl+ c并中断该命令,但脚本继续执行。)我需要它的行为使其被杀死。

3
Kerberos如何与SSH配合使用?
此问题已从超级用户迁移,因为可以在服务器故障时回答。 迁移 8年前。 假设我有四台计算机,笔记本电脑,Server1,Server2,Kerberos服务器: 我使用PuTTY或SSH从L登录到S1,输入用户名/密码 然后从S1 SSH到S2。Kerberos验证我身份时不需要密码 描述所有重要的SSH和KRB5协议交换:“ L向S1发送用户名”,“ K向S1发送用户名”等。 (此问题旨在进行社区编辑;请非专业读者加以改进。)

4
钟表偏移五分钟时间表
是否可以抵消设置为每5分钟运行一次的cron脚本? 我有两个脚本,脚本1从一个数据库中收集一些数据并将其插入到另一个数据库中,脚本2提取此数据和许多其他数据,并从中创建一些漂亮的报告。这两个脚本需要每5分钟运行一次。我想将脚本2偏移一分钟,以便它可以根据新数据创建报告。例如,我希望脚本1 每小时:00, :05, :10, :15 [...]运行:01, :06, :11, :16 [...]一次,脚本2 每小时运行一次。脚本不相互依赖,并且脚本2必须运行,无论脚本1是否成功。但是,如果报告中可以包含最新数据,将很有用。cron有可能吗? 发布; 我已经考虑过在shell脚本中同时使用这两个命令,因此它们会彼此立即运行,但这是行不通的,有时脚本1可能会挂起以等待外部API等,因此可能要花15分钟才能运行,但是脚本2必须每5分钟运行一次,这样执行此操作将停止/延迟脚本2的执行。如果我可以在Cron中进行设置,则意味着脚本2可以运行,而不管脚本1在做什么
22 cron 

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.