小编tec*_*raf的帖子

对包含文件的整个生态系统进行 Visudo 完整性检查?

是否可以visudo在包含的其他文件的上下文中对文件执行健全性检查/etc/sudoers.d

设想:

我想向文件中添加一个新文件/etc/sudoers.d本身是正确的并且它通过了visudo -c解析器。

但是,它确实包含Cmnd_Aliasetc/sudoers.d.

如果移动到 a/etc/sudoers.d它会破坏sudo命令并Alias '<name>' already defined near line出错。

题:

有什么方法可以用来检查新文件sudo在放入后是否不会破坏sudoers.d

或者,sudo如果遇到任何错误,是否有任何方法可以忽略/停止处理包含的文件?

sudo

3
推荐指数
1
解决办法
738
查看次数

如何仅允许具有指定 ip 的机器通过 ssh 登录?

我想只允许具有允许 ip(s) 的机器通过 ssh 登录到我的系统。

例如,userA只能使用ipxx.xx.xx.xxyy.yy.yy.yy通过ssh登录,其他ip不能登录userA。并且userB只能使用 ipzz.zz.zz.zz通过 ssh 登录,除了 zz.zz.zz.zz可以使用userB.

我应该如何设置我的 Linux 来实现这一点?

linux networking ssh sftp permissions

3
推荐指数
1
解决办法
1899
查看次数

Kali Linux 2016 中的谷歌浏览器

如何在Kali Linux 2016 中安装Google Chrome

kali-linux

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

为什么自定义 mkcd 命令不起作用?

我正在尝试编写一个非常简单的mkcd命令:

#!/bin/bash
mkdir $1
cd $1
Run Code Online (Sandbox Code Playgroud)

目录已创建,但更改目录部分似乎没有运行。

根据评论更新:

mkcd () {
  mkdir "$1"
  cd "$1"
}
Run Code Online (Sandbox Code Playgroud)

我试图首先将它作为本地文件运行:

./mkcd
Run Code Online (Sandbox Code Playgroud)

我的最终位置是/opt/bin,两个位置似乎都不起作用。

scripting bash alias

3
推荐指数
1
解决办法
1850
查看次数

安装具有依赖项的特定旧包

我需要使用旧 Debian 存储库中的依赖项来安装特定版本的 tomcat ( 6.0.16 ) 。apt-get install

旧存储库可以在以下位置找到:http://snapshot.debian.org/archive/debian/[date]/...

但是有很多存储库。怎样才能轻松找到好的呢?

debian dependencies repository snapshot

2
推荐指数
1
解决办法
1302
查看次数

2
推荐指数
1
解决办法
1092
查看次数

删除 bash 中长度为 0 的文件

我想在 Linux 终端中创建一个 bash 脚本以进入一个文件,如果它为空,则将其删除:

#!/bin/bash
echo " Enter name of a directory"
read Dir
for Directory in $( ls $HOME )
do 
  test -d $HOME/$dir
  if [ $# -eq 0 ]
  then 
    for filename in $( ls $HOME/$Dir )
    do 
      test -d $HOME/$dir/$filename
      if [ ! -s "$filename"  ]
      then
        rm $HOME/$dir/$filename
      else 
        echo " not empty"
      fi 
    done 
  else 
    echo " $Dir is not a directory" 
  fi 
done
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码,但它不起作用。它识别创建的文件,但即使为空也不会删除它。Salah 显示没有这样的文件或目录

linux bash

2
推荐指数
1
解决办法
1515
查看次数

通过命令行使用 kpasswd 更改密码?

我想使用 kpasswd 来更改我的密码。由于我必须为多个领域执行此操作,因此我想自动传递密码。我想在 bash 中设置一个变量并将其传递给 kpasswd,以某种方式。:) 变量设置没有问题,但是将其传递给 kpasswd,这是一个问题。

我该怎么做?

man kpasswd似乎没有我可以传递的标志,所以我在考虑使用 printf 或其他一些解决方案。不幸的是,这不起作用:

printf "$PWD\n$PWD\n" | kpasswd $KERBEROS_USERNAME@DOMAIN
Run Code Online (Sandbox Code Playgroud)

其他一些细节:

$ bash --version

GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin14)

$ kpasswd --version

kpasswd (Heimdal 1.5.1apple1)
Run Code Online (Sandbox Code Playgroud)

bash bsd

2
推荐指数
1
解决办法
2050
查看次数

如何设置 torify + whois 正常工作?

我正在使用 manjaro。我正在尝试使用:torify whois, torsocks whois, proxychais whois。我试图用sudo命令来做到这一点,所有这些命令都给了我相同的输出:

[Feb 23 21:15:57] PERROR torsocks[3181]: socks5 libc connect: Connection refused (in socks5_connect() at socks5.c:185)
getaddrinfo(whois.verisign-grs.com): Non-recoverable failure in name resolution
[manjaro@manjaro Desktop]$ 
Run Code Online (Sandbox Code Playgroud)

我让朋友在他的发行版上做同样的操作,对他来说效果很好:(有人可以帮我吗?

command-line tor whois manjaro

1
推荐指数
1
解决办法
5964
查看次数

无法在期望脚本中执行 bash 脚本

我有一个像

#!/usr/bin/expect
.....
spawn passwd
expect "password:"
send "password"
....
....
....
~/test.sh
Run Code Online (Sandbox Code Playgroud)

在执行此操作时,我无法运行 bash script test.sh

如何在 Expect 脚本中执行 Linux 命令/bash 脚本?

shell scripting bash expect

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

我无法在我的服务器上使用“sudo”命令

在我编辑/etc/sudoers.d/my_sudoers文件后,nano我无法使用sudo.

尝试使用时出现以下错误sudo

sudo: parse error in /etc/sudoers.d/my_sudoers near line 4
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Run Code Online (Sandbox Code Playgroud)

我确切地知道出了什么问题,但我无法编辑该文件,因为它归 root 所有。

我不能chown用来更改所有权,因为这将涉及使用sudo.

pkexec 尚未在服务器上安装或配置,所以我不确定这是否是一个选项。

我曾尝试使用复制命令进行备份,但出现相同的错误。

有人可以告诉我如何解决这个问题吗?

请不要建议重新启动服务器,因为这不是一个选项。

sudo

0
推荐指数
1
解决办法
2091
查看次数