我正在尝试让运行Apache 2.2.17的Fedora 14服务器通过McAfee ScanAlert的PCI-DSS合规性扫描.我第一次尝试使用ssl.conf中设置的默认SSLCipherSuite和SSLProtocol指令...
SSLProtocol    ALL -SSLv2
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
未能引用弱密码已启用.使用ssllabs和serversniff工具进行扫描后发现,40位和56位密钥确实可用.
然后我改为......
SSLProtocol -ALL +SSLv3 +TLSv1
并尝试了各种网站上报告的所有以下字符串,以便从各种供应商处传递PCI扫描...
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH
SSLCipherSuite ALL:!ADH:!NULL:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:-LOW:+SSLv3:+TLSv1:-SSLv2:+EXP:+eNULL
SSLCipherSuite ALL:!ADH:!NULL:!EXP:!SSLv2:!LOW:RC4+RSA:+HIGH:+MEDIUM
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
SSLCipherSuite ALL:!ADH:!NULL:!EXP:!SSLv2:!LOW:!MEDIUM:RC4+RSA:+HIGH
我在更新后重启apache,apachectl configtest说我的语法没问题.随后的ScanAlert扫描全部失败,其他扫描工具继续显示40和56位密码可用.我已经尝试将SSLProtocol和SSLCipherSuite直接添加到httpd.conf中的VirtualHost并且没有帮助.
它实际上感觉像某个地方覆盖了这些设置,但除了ssl.conf之外我找不到任何设置这些值的地方.
如果有人能够提供已经通过最近PCI扫描的已知良好的SSLCipherSuite,那么它将有助于追踪我的问题.
谢谢.
我正在尝试读取每行有多个分隔符的文件。下面是数据
2,22:11
3,33:11
4,44:11
5,55:11
6,66:11
7,77:11
8,88:11
9,99:11
10,00:11
11,011:11
12,022:11
13,033:11
14,044:11
15,055:11
16,066:11
17,077:11
18,088:11
19,099:11
代码如下
在这里,我尝试首先使用逗号作为分隔符来读取该行,然后读取冒号。
#include <fstream>
#include <iostream>
#include <string>
int main() {
  std::string line;
  std::string token;
  std::ifstream infile;
  infile.open("./data.txt");
  while (std::getline(infile, line,',')) {
    std::cout << line << std::endl;
    while(getline(infile, token, ':'))
    {
      std::cout << " : " << token;
    }
  }
}
但是代码有一个问题,因为它跳过了第一行。另外,如果我评论第二个 while 循环,则只有第一行被打印,下面是输出
Ian 无法弄清楚代码到底哪里出了问题
输出
2
 : 22 : 11
3,33 : 11
4,44 : 11
5,55 : 11 …