什么是更好的选择:使用 su 切换到 root 或启用 sudo?如果不使用 sudo,入侵者将需要知道允许 ssh 的用户的密码(或密钥)以及 root 密码。使用 sudo 非特权用户的密码就足够了。
我设置了一个新的网络服务器 (Debian 8.2),想知道通过 SSH 安全连接到它的最佳实践是什么,并且我仍然可以轻松使用它。
到目前为止,我已经在 SSH 上禁用了 PermitRootLogin 并切换了端口。iptables 也可以阻止我不需要的一切。现在我必须使用非特权用户登录,然后切换
su root
Run Code Online (Sandbox Code Playgroud)
但是作为 root 工作并不是我听说过的最好的事情......所以我想只授予我的非特权用户 sudo 权限。
然后再次入侵者只需要知道一个密码,因为 sudo 要求提供当前用户密码而不是 root 密码。因此,我通过禁用 SSH 中的 PermitRootLogin 使攻击者更难的计划不再起作用。
所以:su root 还是 sudo?
我正在运行 Debian 8.2 并且安装非常新鲜。我尝试使用 Sequel Pro 通过 SSH 连接到我的 MySQL 服务器。我总是收到这个错误:
Lost connection to MySQL server at 'reading initial communication packet', system error: 0
Run Code Online (Sandbox Code Playgroud)
当我跑
mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
在服务器上,一切正常。但不是来自远程。
一开始我还以为是iptables,所以我(暂时)禁用了所有规则。iptables -L 现在返回:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Run Code Online (Sandbox Code Playgroud)
然后我检查了my.cnf,但我能想到的所有参数看起来都是正确的:
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
user = mysql
pid-file …
Run Code Online (Sandbox Code Playgroud) 我想使用 Varnish Cache 运行 Magento。到目前为止,我的 PHP 运行为 FastCGI。我现在正在尝试设置 Varnish。还有一个可能非常愚蠢的问题。
因此,据我了解,Varnish 将侦听端口 80 并获取我的网络服务器中缺少的任何内容,该服务器应该在端口 8080 上运行(或我想要的任何端口)。就我而言,这是 FastCGI。
那么如何更改 FastCGI 运行的端口呢?或者我错过了什么/误解了一切?
谢谢!