问题出在这里:我们用一个不提供IP地址的外部提供商托pipe我们的网站,而是给我们一个指向我们的www CNAMElogging的域名。 我假设他们正在使用某种types的虚拟主机,为请求的域读取标题并显示该网站。 无论如何,我们的许多用户抱怨说,网站实际上并不是因为他们在浏览器中inputexample.com而不是www.example.com。 有没有办法使我们的DNS在这个工作?
哪种方法更好? 对于桌面使用,似乎sudo更好,因为: 作为普通用户,我可以拥有更一致的历史 不需要记住两个密码,当我不经常执行pipe理工作时更是如此。 无需在安装时创build额外的root帐户。 但关于服务器pipe理? 在服务器中,通常您已经创build了一个root帐户,并且您可能经常执行pipe理任务。 所以sudo的优势似乎已经不复存在了。 更重要的是,在大多数发行版中,在命令行上configurationsu很容易,只需将用户添加到轮组即可。 (在使用时你甚至可以传递-G wheel )。因此,configurationsu可以很容易地自动化到shell脚本中。 但是对于sudo? 您需要先添加用户,而不是交互式运行visudo 。 这是不好的,因为你不能将它自动化到shell脚本中。 (好吧,你可以。例如, echo '%wheel ALL=(ALL) ALL' >> /tmp/sudoers.tmp cp /etc/sudoers /etc/sudoers.old visudo -c -f /tmp/sudoers.tmp && mv /tmp/sudoers.tmp /etc/sudoers 但至less不是那么容易的。) 那么你有什么意见? 对于你喜欢的服务器环境,sudo或su root?
我有一个较旧的Ubuntu的服务器,一个新的debian服务器,我正在从旧的数据迁移到新的。 我想使用rsync传输数据,使最终迁移比等效的tar / scp / untar过程更容易和更快。 作为一个例子,我想同步一个主文件夹到新的服务器。 这需要在两端进行根访问,因为源端的所有文件都不是世界可读的,并且目的地必须以正确的权限写入/ home。 我无法弄清楚如何给双方的rsync根访问。 我已经看到了一些相关的问题,但是没有一个与我正在做的事情完全一致。 我有sudo设置和在两个服务器上工作。
我们使用git来跟踪/etc/在我们的服务器上的变化。 在更改/ etc /中的文件时,pipe理员以root身份工作,因此他们的提交具有作者 root <root@machinename> 这不是很令人满意,因为你无法看到哪个pipe理员真的做了这个改变。 我们可以做什么来获得真正的pipe理员名称在git日志? 我不认为保存本地的版本库是可行的,因为我们经常会直接更改,直到某些工作成功,而改变 – 提交 – 推送 – 查看 – 错误 – 重复循环在这里没有帮助。
我是系统pipe理员。 在生产环境中,我需要pipe理数以千计的服务器。 我和我的同事使用中央pipe理服务器,并通过其他服务器分配其公钥。 所以我们可以使用这个pipe理服务器ssh到其他服务器。 有时我们需要使用root密码,例如服务器closures时,我们需要使用iLO来确定原因。 目前,我们使用共享的root密码。 这是不安全的。 我也看了一些单一的服务器解决scheme,如OPIE (一次性密码在一切),但由于我们有这么多的服务器,这不是一个好主意。 编辑: 我想从密码pipe理解决scheme中得到的是: 它应该是安全的,所以一次性密码是一个很好的解决scheme。 密码可以很容易地input,有时我们需要将监视器连接到服务器,或者像上面提到的那样使用iLO。 即使服务器处于脱机状态(没有任何networking连接) 因此,将root密码设置为长随机string并不是一个好主意,尽pipe它是由一些已知命令(如openssl passwd )生成的。 这很难记住,有时很难产生(没有我的笔记本电脑)
最近有一个关于多个系统pipe理员以root身份工作的问题 ,并引用了sudo bash -l 。 我在google和SE上search了这个,但是我不明白sudo bash -l和sudo -i的区别。 从bash和sudo的手册页看来,区别可能在于sudo bash -l运行root用户的〜/ .bash_profile,〜/ .bash_login和〜/ .profile以及〜/ .bash_logout,而是从testing我自己看起来像运行正常用户的.bashrc而不是根。 我可能误解了〜expression式在手册页中引用的用户。 澄清差异和使用情况,将不胜感激。
我们的服务器最近耗尽了文件描述符,并且对此我有一些问题。 ulimit -n应该给我打开的文件描述符的最大数量。 这个数字是1024.我通过运行lsof -u root |wc -l检查打开的文件描述符的数量,得到了2500 fds。 这大大超过了1024,所以我猜想这意味着数字1024是每个进程,而不是每个用户,就像我一样。 那么,我运行lsof -p$PidOfGlassfish|wc -l并得到1300.这是我没有得到的部分。 如果ulimit -n不是每个用户或每个进程的最大进程数,那么它有什么好处呢? 它不适用于root用户吗? 如果是这样,我怎么才能得到有关用完文件描述符的错误信息? 编辑:我可以从ulimit -n理解的唯一方法是,如果它应用打开文件的数量(如bash手册中所述),而不是文件句柄的数量(不同的进程可以打开相同的文件)。 如果是这种情况,那么只需列出打开文件的数量(在/上擦除,从而排除内存映射文件)是不够的 : lsof -u root |grep /|sort -k9 |wc -l #prints '1738' 要真正看到打开文件的数量,我需要过滤名称列上只打印唯一的条目。 因此,以下可能是更正确的: lsof -u root |grep /|sort -k9 -u |wc -l #prints '604' 上面的命令需要从lsof输出以下格式: java 32008 root mem REG 8,2 11942368 72721 /usr/lib64/locale/locale-archive vmtoolsd […]
我有centos5。 有没有什么办法,我可以login到我的vps服务器与root用户从特定的IP地址只。 我读过,我可以使用私钥login到sshd。 但问题是我正在使用SFTP为我的所有Webistes,我不希望非IT用户使用密钥login与SFTP。 或者有没有什么办法,只有root可以使用密钥login到shell,但对于其他人而言,它的正常密码
我使用~/.ssh/config文件,以便我可以轻松地inputssh myserver ,并提供正确的用户名,端口,主机名,身份文件等。 但是对于许多服务器,我所做的第一件事是inputsu -以root身份login。 我可以在命令行中的一个命令完成这一切,如下所示: ssh myserver -t su – 。 有什么我可以添加到我的~/.ssh/config文件,将为我做? 我希望能够做到ssh myserver-root ,它会做和ssh myserver -t su -一样的事情。 我知道PermitRootLogin ,这个服务器closures了,我不愿意把它打开。 我宁愿看看是否有办法在客户端使用ssh来做到这一点。
长话短说:大公司,大量的UNIX / Linux服务器。 我inheritance了几年前留下的一些脚本的责任。 其中之一就是一个脚本,每运行几十个月就可以全局更新所有服务器的root密码。 这个脚本是一团糟的Shell脚本和Expect,它在所有服务器和一个中央命令和控制服务器之间build立的SSH信任上起作用。 问题是,剧本是一个巨大的混乱。 Expect命令试图说明存在于任何UNIX / Linux盒子上的每个可能的“passwd”版本 – 它们有很大不同。 由于我们正在扩大和升级很多基础设施,因此脚本变得非常难以pipe理。 我的问题是:有没有更好的方法来做到这一点? 假设已经build立了SSH信任关系,那么在3000多台服务器上同时更改root密码的最好方法是什么?