标签: security

scp 不安全吗?应该换成sftp吗?

我在 Un*x 中有 20 多年的经验,而且我一直在使用它scpscp通过 SSH,因此我认为它与后者一样安全。现在,在我最近开始工作的公司中,安全官说scp不应使用它,因为它不安全且已过时。sftp应该比它更受青睐(但也比 SSH 更......)

基于 scp 下的基础设施,以及scp在专业社区以及我前公司的其他同事中的受欢迎程度和信任度,我并不立即同意这一点。我不想仅仅因为某些 CSO 这么说就改变主意。

  • 这就是说,这里有主题吗?
  • scp突然的害群之马?
  • 仅仅是在更高领域的安全专家辩论吗?
  • 还是scp只是好用?

security scp sftp

59
推荐指数
5
解决办法
8109
查看次数

如何递归地粉碎整个目录树?

我有一个目录树,我想用 Linux 'shred' 实用程序对其进行粉碎。不幸的是,shred 没有-R递归粉碎的选项。

如何递归地粉碎整个目录树?

security rm data-destruction

56
推荐指数
6
解决办法
10万
查看次数

为什么 debian apt 工具没有 https 传输?

随着 NSA 披露的所有偏执狂,我想知道为什么 Debian 软件包安装机制不支持 HTTPS 进行传输,更不用说默认使用 HTTPS 了。

我知道 Debian 软件包使用 GPG 进行某种签名验证,但是,考虑到这在安全方面的重要性,我仍然认为使用 HTTPS 传输而不是 HTTP 会太难。

编辑:我主要想保护自己免受中间人攻击(包括只是流量嗅探),而不是 Debian 镜像管理员。HTTP 存储库将整个系统放在桌面上,供任何窥探 Debian 镜像流量的人使用。

security debian apt https

52
推荐指数
4
解决办法
5万
查看次数

将 Amazon .pem 密钥转换为 Putty .ppk 密钥 Linux

我已经.pem从 AWS生成并下载了一个私钥。但是,要使用 Putty 连接到虚拟机,我必须拥有该密钥的.ppk格式。转换过程在这里大约有 20 行详细说明:

我正在使用 Linux Mint(一个 Ubuntu 发行版),我知道我可以在终端中使用 puttygen。但是,我不知道如何使用此工具,也不知道如何配置所需的参数。当我输入 puttygen --help 我得到

PuTTYgen unidentified build, Aug  7 2013 12:24:58
Usage: puttygen ( keyfile | -t type [ -b bits ] )
                [ -C comment ] [ -P ] [ -q ]
                [ -o output-keyfile ] [ -O type | -l | -L | -p ]
  -t    specify key type when generating (rsa, dsa, rsa1)
  -b    specify number of bits when generating key …
Run Code Online (Sandbox Code Playgroud)

security ssh putty linux-mint amazon-ec2

50
推荐指数
2
解决办法
20万
查看次数

对于任何命令,有没有办法使用提示在 bash 中传递敏感数据?

假设我使用sha1pass在命令行上生成一些敏感密码的哈希值。我可以sha1pass mysecret用来生成一个散列,mysecret但这有一个mysecret现在在 bash 历史中的缺点。有没有办法在避免mysecret以纯文本显示的同时实现此命令的最终目标,也许是通过使用passwd-style 提示?

我也对将敏感数据传递给任何命令的通用方法感兴趣。当敏感数据作为参数(例如 in sha1pass)或在 STDIN 上传递给某个命令时,该方法会发生变化。

有没有办法做到这一点?


编辑:这个问题引起了很多关注,下面提供了几个很好的答案。总结如下:

  • 根据@Kusalananda 的回答,理想情况下永远不必将密码或机密作为实用程序的命令行参数提供。正如他所描述的,这在几个方面都很脆弱,应该使用设计更好的实用程序,该实用程序能够在 STDIN 上获取秘密输入
  • @vfbsilva 的回答描述了如何防止东西被存储在 bash 历史记录中
  • @Jonathan 的回答描述了一个非常好的方法来完成这个,只要程序可以在 STDIN 上获取它的秘密数据。因此,我决定接受这个答案。sha1pass在我的 OP 中只是一个例子,但讨论已经确定存在更好的工具来获取 STDIN 上的数据。
  • @R ..在笔记他的回答,对一个变量使用命令扩展是不是安全的。

所以,总而言之,我接受了@Jonathan 的回答,因为这是最好的解决方案,因为您有一个设计良好且行为良好的程序可供使用。尽管将密码或机密作为命令行参数传递从根本上说是不安全的,但其他答案提供了减轻简单安全问题的方法。

shell security password

50
推荐指数
5
解决办法
3万
查看次数

如何测试 Linux 二进制文件是否被编译为位置无关代码?

我最近了解到(至少在 Fedora 和 Red Hat Enterprise Linux 上),编译为位置独立可执行文件 (PIE) 的可执行程序会获得更强的地址空间随机化 (ASLR) 保护。

那么:如何在 Linux 上测试特定的可执行文件是否被编译为位置无关的可执行文件?

linux security fedora executable

49
推荐指数
5
解决办法
5万
查看次数

输入特定密码如何触发系统自毁

如何配置我的系统以在输入特定密码时销毁所有个人数据?这背后的动机是 NSA 的东西。

我想有三个主要用例。

  1. 在登录时,输入预先确定的密码会触发用户数据的破坏。
  2. 在系统唤醒。输入预先确定的密码会触发个人数据的破坏。
  3. 使用预先确定的密码输入任何特权命令会触发个人数据的破坏。

我知道像

dd if=/dev/urandom of=/dev/$HOME
Run Code Online (Sandbox Code Playgroud)

应该足以进行数据销毁。但是,我不知道如何通过某个密码触发它。

如果在删除数据时允许登录,则奖励积分。

security password

47
推荐指数
5
解决办法
3万
查看次数

如何确保SSH端口只对特定IP地址开放?

这是我的/etc/sysconfig/iptables

它有两个端口,80 apache 和 22 ssh。

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j …
Run Code Online (Sandbox Code Playgroud)

security ssh iptables

46
推荐指数
3
解决办法
22万
查看次数

如何确定某人的 SSH 密钥是否包含空密码?

我的一些 Linux 和 FreeBSD 系统有几十个用户。工作人员将使用这些“ssh 网关”节点通过 SSH 连接到其他内部服务器。

我们担心其中一些人使用未加密的私人 SSH 密钥(没有密码的密钥这很糟糕,因为如果破解者在这台机器上获得了对他们帐户的访问权限,他们可以窃取私钥,现在可以访问到任何使用相同密钥的机器。出于安全原因,我们要求所有用户使用密码来加密他们的私有 SSH 密钥。

如何判断私钥是否未加密(例如,不包含密码)?是否有不同的方法可以在 ASCII 装甲钥匙和非 ASCII 装甲钥匙上执行此操作?

更新:

澄清一下,假设我在机器上拥有超级用户访问权限,并且我可以读取每个人的私钥。

security users ssh

44
推荐指数
3
解决办法
3万
查看次数

apache 和 PHP 应该以什么用户身份运行?/var/www 文件应该有什么权限?

我刚刚启动了一个 Ubuntu 11.10 盒子,然后跑去apt-get install apache2 php5在盒子上安装 apache2 和 PHP 5。现在它作为一个“网络服务器”运行并加载“It Works!” 页。现在我正在努力加强安全性,我对 linux web 服务器有以下问题:

  1. apache 应该以谁的身份运行?
  2. 该用户应该属于哪个组?
  3. 哪些包可以使 PHP(和 Apache?)作为文件的所有者运行?(比如在共享网络主机上)我应该使用这些包吗?在小型系统上维护它们是否容易/可行?
  4. 对于以 apache 运行的方式提供给网络的文件和文件夹的默认权限应该是什么www-data?对于以用户身份运行的 apache/php?

我在检查默认设置时做了以下事情:

文件结构

当我cd /和做ls -al的内容列表,我看到/var

drwxr-xr-x 13 root root  4096 2012-02-04 20:47 var/
Run Code Online (Sandbox Code Playgroud)

如果我cd进入var并且确实ls -al看到:

drwxr-xr-x  2 root root  4096 2012-02-04 20:47 www/
Run Code Online (Sandbox Code Playgroud)

最后,在里面/var/www我看到:

drwxr-xr-x  2 root root 4096 2012-02-04 20:47 ./
drwxr-xr-x 13 root root …
Run Code Online (Sandbox Code Playgroud)

linux security users php apache-httpd

43
推荐指数
2
解决办法
14万
查看次数