小编Gil*_*not的帖子

无法从 Ldapmain 对您进行身份验证,因为“user.name 的凭据无效”

我用

\n\n
    \n
  • Debian 9
  • \n
  • gitlab-ce 11.10.4-ce.0
  • \n
  • 通过 apt 进行综合安装
  • \n
  • openldap 2.4.44
  • \n
\n\n

ldap配置

\n\n

已配置/etc/ldap/ldap.conf

\n\n
BASE    dc=serverX,dc=lan\nURI     ldap://serverX.lan\nTLS_CACERT  /etc/ssl/certs/ca-certificates.crt\n
Run Code Online (Sandbox Code Playgroud)\n\n

已配置/etc/gitlab/gitlab.rb

\n\n
gitlab_rails[\'ldap_enabled\'] = true\ngitlab_rails[\'ldap_servers\'] = YAML.load <<-EOS\n  label: \'Gitlab LDAP\'\n  host: \'10.0.0.1\'\n  port: 389\n  uid: \'sAMAccountName\'\n  method: \'plain\' #\xc2\xa0"tls" or "ssl" or "plain"\n  bind_dn: \'cn=admin,ou=users,dc=serverX,dc=lan\'\n  password: \'xxxx\'\n  encryption: \'plain\'\n  active_directory: false\n  allow_username_or_email_login: true\n  block_auto_created_users: false\n  base: \'ou=users,dc=serverX,dc=lan\'\nEOS\n
Run Code Online (Sandbox Code Playgroud)\n\n

输出gitlab-rake gitlab:ldap:check正常:

\n\n
# gitlab-rake gitlab:ldap:check\nChecking LDAP ...\n\nLDAP: …
Run Code Online (Sandbox Code Playgroud)

authentication ldap gitlab

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

selenium.common.exceptions.WebDriverException:消息:未知错误:Chromium 浏览器和 Selenium Python 中不存在 DevToolsActivePort 文件

我想通过铬运行硒。我写了这段代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("start-maximized")
options.add_argument("disable-infobars")
options.add_argument("--disable-extensions")
options.add_argument("--disable-gpu")
options.add_argument("--disable-dev-shm-usage")
options.add_argument("--no-sandbox")
options.binary_location = "/snap/bin/chromium"
driver = webdriver.Chrome(chrome_options=options)
Run Code Online (Sandbox Code Playgroud)

但这段代码会抛出一个错误:

selenium.common.exceptions.WebDriverException: Message: unknown error: DevToolsActivePort file doesn't exist
Stacktrace:
#0 0x55efd7355a23 <unknown>
#1 0x55efd6e20e18 <unknown>
#2 0x55efd6e46e12 <unknown>
Run Code Online (Sandbox Code Playgroud)

正确版本的 chromedriver 位于 usr/bin 中。我究竟做错了什么?

python chromium selenium-chromedriver selenium-webdriver selenium-webdriver-python

7
推荐指数
2
解决办法
4万
查看次数

如何使用GUI在python中以编程方式运行POST请求?(spynner,webkit ...)

我有一个网站,上面有我需要抓取的表单.我想要一些不支持请求的URL的键/值,而不是填写表单.flashPOSTGET

我使用spynner与网站进行交互,并且spynner可以拥有GUI,但我在google,stackoverflow,spynner github和spynner模块中搜索都不成功.

如果spynner不能做一个POST请求,也许gtkqt+ webkit能做到这一点?任何真实的代码示例都将非常感激.

python user-interface screen-scraping webkit spynner

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

将Bash脚本SSH连接到计算机而不提示密码且不使用密钥

我发现这个问题已被问过几次,但在我搜索的任何地方都找不到相关的答案.

我正在开发环境中工作,安全性不是问题,任何人都可以猜测密码,如果想到几秒钟.

我想做的很简单.我已在我的本地.bashrc文件中创建了一个别名函数,我希望此函数能够自动登录到具有默认密码的计算机.

我目前的实现看起来像这样:

function s () { 
 ssh root@192.168.1.$1
}
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我得到这样的东西:

~]s 122

ssh root@192.168.1.122

root@192.168.1.122's password: 
Run Code Online (Sandbox Code Playgroud)

使用Bash,而不使用RSA密钥我想使用默认密码'password'.

我已经尝试了以下IP和用户已经设置的地方.

Do=$(expect -c "
spawn ssh $User@${IP[0]}.${IP[1]}.${IP[2]}.${IP[3]} 
expect \"yes/no\" 
send \"yes\r\" 
expect \"assword\" send \"password\"")
echo $Do
$Do
Run Code Online (Sandbox Code Playgroud)

它给出了以下错误:

Connecting and logging into server using expect
usage: send [args] string
    while executing
"send"
    invoked from within
"expect "assword" send "password""
 Administrator@192.168.1.176's password:
bash: spawn: command not found...
Run Code Online (Sandbox Code Playgroud)

使用以下命令,我可以连接一台机器.如果我删除了交互,它只运行uptime命令并关闭连接.使用interaction命令,我无法看到我正在键入的内容或实际与机器进行交互.有任何想法吗?

Do=$(expect -c "spawn ssh $User@${IP[0]}.${IP[1]}.${IP[2]}.${IP[3]}; set timeout 4; expect \"assword\"; send \"password\n\"; expect …
Run Code Online (Sandbox Code Playgroud)

ssh bash

6
推荐指数
2
解决办法
4万
查看次数

如何在perl中删除单引号但不删除撇号

我想知道如何在perl中删除单引号但不删除撇号.

例如:

'又下雨了!'

打印

又下雨了!

非常感谢

perl

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

bash和telnet测试电子邮件

我想知道电子​​邮件地址是否有效.

我通过telnet telnet完成了这个,见下文

$ telnet mail.example.com 25
Trying 0.0.0.0...
Connected to mail.example.com.
Escape character is '^]'.
220 mail.example.com Mon, 14 Jan 2013 19:01:44 +0000
helo email.com
250 mail.example.com Hello email.com [0.0.0.0]
mail from:blake@email.com
250 OK
rcpt to:gfdgsdfhgsfd@example.com
550 Unknown user
Run Code Online (Sandbox Code Playgroud)

有了这550个请求,我知道该地址在邮件服务器上无效......如果它有效,我会得到如下的响应:

250 2.1.5 OK 
Run Code Online (Sandbox Code Playgroud)

我如何在shell脚本中自动执行此操作?到目前为止,我有以下内容

#!/bin/bash
host=`dig mx +short $1 | cut -d ' ' -f2 | head -1`
telnet $host 25 
Run Code Online (Sandbox Code Playgroud)

谢谢!

unix bash shell command telnet

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

输出sar命令结果为csv文件

我对shell编程比较陌生,想知道是否有一种简单的方法可以将sar命令的结果输出到csv文件中.使用sar > file1.csv完成工作,但格式不正确.所有数据都存在于一列中.我试过这个,但情况更糟

sar -d -u -w 1 1 | grep -v Average | grep -v Linux | tr -s ' ' ',' | tr -d '\n' > file1.csv
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我正确的脚本来将sar命令的输出存储在一个csv文件中.帮助将不胜感激.

unix shell sar

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

使用正则表达式重命名文件 - Linux

我有三个文件名为

file1.txt
file2.txt
file3.txt
Run Code Online (Sandbox Code Playgroud)

我正在尝试将它们重命名为

mynewfile-1.txt
mynewfile-2.txt
mynewfile-3.txt
Run Code Online (Sandbox Code Playgroud)

我将如何使用正则表达式来解决这个问题?

regex linux rename

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

什么是用于在字段之间交换的 Unix oneliner?

我有一个包含列表的文件

id1 str1 str2 .. strn
id2 str1 str2 .. strm
Run Code Online (Sandbox Code Playgroud)

(str的数量可以变化)并且我想要一个将其转换为的oneliner

str1 str2 .. strn [id]
str1 str2 .. strm [id]
Run Code Online (Sandbox Code Playgroud)

awk 应该有一种方法可以做到这一点,但我不知道当它们的长度可变时如何获取 $1 之后的“所有字段”。

我的想法是这样的

cat file | awk '{ print $2 and the rest " [" $1 "]" }'
Run Code Online (Sandbox Code Playgroud)

但只是缺少“2 美元和其余的”......

awk one-liner

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

Sed 错误:sed:-e 表达式 #1,字符 25:“s”的未知选项

我有文件 .config 行:
projdir name_of_the_projdir
我需要用我自己的变量替换 name_of_the_projdir 。我尝试这样做

sed -i 's/^projdir .*$/projdir '$projdir'/' .le/.config
Run Code Online (Sandbox Code Playgroud)

但我收到错误

sed: -e expression #1, char 25: unknown option to `s'
Run Code Online (Sandbox Code Playgroud)

有人知道该怎么办吗?...我尝试用 " 替换第一个 ' 和最后一个,用 @ 替换第一个 ' 和最后一个 / 。但仍然不起作用

sed

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