AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-145179

John's questions

Martin Hope
John
Asked: 2020-07-09 06:48:33 +0800 CST

如何从 bash 脚本中设置 tmp 环境变量

  • 0

我有一个简单的 bash 脚本:

#!/bin/bash

export MONGOMS_DOWNLOAD_URL="https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.2.8.tgz"
export MONGOMS_VERSION="4.2.8"

但是当我运行这个'./preinstall.sh'然后echo $MONGOMS_VERSIONvar没有设置。

如果我直接在终端中导出这些变量,则没有问题。

https://stackoverflow.com/questions/496702/can-a-shell-script-set-environment-variables-of-the-calling-shell#answer-496777 根据这篇文章,shell脚本具有只读访问权限父级和任何 vars 集都将丢失。

有没有解决的办法?

bash environment-variables
  • 2 个回答
  • 262 Views
Martin Hope
John
Asked: 2018-03-19 03:29:41 +0800 CST

许多服务器的 SSH 访问网关

  • 12

通过 Ansible 管理多台服务器,目前超过 90 台,有 3 个 devops。一切都很好,但是现在存在一个巨大的安全问题。每个 devop 都使用自己的本地 ssh 密钥来直接访问服务器。每个 devop 都使用一台笔记本电脑,每台笔记本电脑都可能受到攻击,从而使整个 prod 服务器网络面临攻击。

我正在寻找一种解决方案来集中管理访问,从而阻止对任何给定密钥的访问。与将密钥添加到 bitbucket 或 github 的方式没有什么不同。

在我的脑海中,我会假设解决方案是从一台机器(网关)到所需的产品服务器的隧道......在传递网关时,请求将获取一个新密钥并用于访问产品服务器。结果是我们可以通过拒绝对网关的访问在几秒钟内快速有效地终止对任何 devop 的访问。

在此处输入图像描述

这是很好的逻辑吗?有没有人已经看到了解决这个问题的解决方案?

ssh
  • 6 个回答
  • 4079 Views
Martin Hope
John
Asked: 2016-06-20 03:30:20 +0800 CST

Nagios3 说 localhost 在 ping 上关闭,但没有写入 ping 检查

  • 0

Nagios3 和 Ubuntu 14 禁用了 ping 请求。

localhosts 在 GUI nagios 界面中不断报告它已关闭。

这是安装后在 conf.d 目录中找到的默认“localhost_nagios2.cfg”:

# A simple configuration file for monitoring the local host
# This can serve as an example for configuring other servers;
# Custom services specific to this host are added here, but services
# defined in nagios2-common_services.cfg may also apply.
#

define host{
        use                     generic-host            ; Name of host template to use
        host_name               localhost
        alias                   localhost
        address                 127.0.0.1
        }

# Define a service to check the disk space of the root partition
# on the local machine.  Warning if < 20% free, critical if
# < 10% free space on partition.

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       localhost
        service_description             Disk Space
        check_command                   check_all_disks!20%!10%
        }



# Define a service to check the number of currently logged in
# users on the local machine.  Warning if > 20 users, critical
# if > 50 users.

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       localhost
        service_description             Current Users
        check_command                   check_users!20!50
        }


# Define a service to check the number of currently running procs
# on the local machine.  Warning if > 250 processes, critical if
# > 400 processes.

define service{
        use                             generic-service         ; Name of service template to use
        host_name                       localhost
        service_description             Total Processes
                check_command                   check_procs!250!400
        }



# Define a service to check the load on the local machine.

define service{
    use                             generic-service         ; Name of service template to use
    host_name                       localhost
    service_description             Current Load
            check_command                   check_load!5.0!4.0!3.0!10.0!6.0!4.0
    }

这几乎是开箱即用的配置。我更改了 generic-host 以免 ping 任何东西:

# Generic host definition template - This is NOT a real host, just a template!

define host{
        name                            generic-host    ; The name of this host template
        notifications_enabled           1       ; Host notifications are enabled
        event_handler_enabled           1       ; Host event handler is enabled
        flap_detection_enabled          1       ; Flap detection is enabled
        failure_prediction_enabled      1       ; Failure prediction is enabled
        process_perf_data               1       ; Process performance data
        retain_status_information       1       ; Retain status information across program restarts
        retain_nonstatus_information    1       ; Retain non-status information across program restarts
                max_check_attempts              10
                notification_interval           0
                notification_period             24x7
                notification_options            d,u,r
                contact_groups                  admins
        register                        0       ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
        }

我正在监视的其他服务器都很好,nagios 不会对它们运行任何 ping 检查。但是,nagios 不会停止抱怨本地主机处于严重状态...在 PING 上: 在此处输入图像描述

我已经仔细检查了 Google 的产品一个多小时,但无法弄清楚如何关闭此检查。

我的问题:这实际上是关闭并处于锁定的“关闭”状态,还是我错过了另一个设置来阻止本地主机运行 ping 检查?

谢谢。约翰

nagios
  • 1 个回答
  • 1229 Views
Martin Hope
John
Asked: 2016-06-18 11:30:23 +0800 CST

在 *nix 系统上的 /tmp 中,模式为 `drwxrwxrwt` 的目录是否安全?

  • 5
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .font-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .ICE-unix
-rw-------  1 root     root        0 Aug 20  2015 ipt.err
-rw-------  1 root     root       90 Aug 20  2015 ipt.out
drwxr-xr-x  3 root     root     4096 Mar 28 16:23 npm-23008-fc1739e3
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .Test-unix
drwx------  2 root     root     4096 May 11 03:00 tmp.ayv48eJWjN
drwx------  2 root     root     4096 Apr  5 14:55 tmp.DhPr9EXfH5
drwx------  2 root     root     4096 Apr  5 15:11 tmp.DVHx8GHsP4
drwx------  2 root     root     4096 Apr  5 14:45 tmp.FDa39cA3ft
drwx------  2 root     root     4096 May  4 03:00 tmp.fvjOmYe2WQ
drwx------  2 root     root     4096 May 25 03:00 tmp.GEHVHEq0Vf
drwx------  2 john     john     4096 May 12 07:06 tmp.hpMfMe2Dlw
drwx------  2 root     root     4096 Apr  5 12:57 tmp.M543QjpOej
drwx------  2 root     root     4096 Apr 20 03:00 tmp.oruELImlbd
drwx------  2 root     root     4096 Feb 12 22:28 tmp.OV7qrrSCbt
drwx------  2 root     root     4096 Apr 13 03:00 tmp.oyJKXfMa52
drwx------  2 john     john     4096 May 12 07:10 tmp.qqHnbm5bEN
drwx------  2 root     root     4096 Feb 12 22:46 tmp.RRRN63RvPS
drwx------  2 root     root     4096 Feb 12 22:28 tmp.tDLx4KXKjY
drwx------  2 root     root     4096 Apr 27 03:00 tmp.Yp1DDIZUXI
drwxr-xr-x  3 www-data www-data 4096 Mar 28 16:25 www-data
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .X11-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .XIM-unix

在服务器上运行 Lynis 测试后,我注意到它建议删除临时文件夹中的旧文件。

当我去查看内容时,我注意到tmp文件夹中的一些目录对它们有777的权限!

drwxrwxrwt  2 root     root     4096 Aug 20  2015 .font-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .ICE-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .Test-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .X11-unix
drwxrwxrwt  2 root     root     4096 Aug 20  2015 .XIM-unix

我对这些了解不多。他们安全吗?

x11 file-permissions tmp
  • 1 个回答
  • 15084 Views
Martin Hope
John
Asked: 2015-12-28 05:54:19 +0800 CST

apt-get update 在虚拟框中重新安装 ubuntu 14.04.3 时挂起

  • 3

好的,我已经有一段时间没有从头开始配置虚拟盒子了。

  1. 全新安装 ubuntu 14.0.4.3 lts

  2. 没有代理或任何花哨的东西

  3. 网络适​​配器设置为桥接

  4. 操作系统安装并启动后,我可以

    一个。成功从 Windows ping 框

    湾。从框中我可以成功 ping 8.8.8.8(和其他域)

问题是,我无法让盒子成功运行 apt-get update。它只是挂在 0% 处,这表明它访问的 url 没有响应(gb.archive.ubuntu.com).. 但它确实在浏览器中响应,或者该框无法连接到 www ..但我可以ping其他域。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

有什么我想念的吗?为什么我不能 apt-get 工作?

networking
  • 1 个回答
  • 861 Views
Martin Hope
John
Asked: 2015-08-03 01:45:42 +0800 CST

无法从共享对象映射段:无法分配内存

  • 1

今天一大早有一个日志轮换,apache错误日志的最后一行是:

 [error] (9)Bad file descriptor: apr_socket_accept: (client socket)    apache2: Syntax error on line 250 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/alias.load: Cannot load /usr/lib/apache2/modules/mod_alias.so into server: /usr/lib/apache2/modules/mod_alias.so: failed to map segment from shared object: Cannot allocate memory

在此之后 Apache 无法自动重新加载。大约一个小时后,当我开始查看这个时,我只是重新启动了 apache,一切都很好。它确实在新的日志文件中留下了警告:

[warn] pid file /var/run/apache2.pid overwritten -- Unclean shutdown of previous Apache run?

这是什么意思,我该如何纠正曾经出错的地方?

(Apache/2.2.22 (Debian))

编辑 或者如果这不是可以修复的东西,有没有办法让apache在放弃之前自动重新加载x qty(比如带有节点的pm2)?

apache-2.2
  • 1 个回答
  • 13584 Views
Martin Hope
John
Asked: 2014-07-25 17:15:02 +0800 CST

在从 Windows 到 unix 的 rsync 期间 chown

  • 0

rsync: --groupmap=*:www-data: 未知选项

我正在尝试向我的 rsync 行添加一个选项,以将传输的文件组设置为将 www-data 作为其组。

当我添加选项时,我收到上述消息。

这是我正在尝试的 rsync 行:

rsync -avz --delete  --chmod=ug=rwX,o=rX  --groupmap=*:www-data ' -e "ssh -p 48"  /cygdrive/e/test  [email protected]:/var/vhost/locals/test

如果没有 -groupmap 标志,文件将作为 john:john 而不是所需的 jonh:www-data 登陆。

这是从windows到ubuntu。

有没有人有任何想法?

当我尝试使用 --chown 时也是一样的:

rsync: --chown=john:www-data: unknown option

参考:http ://rsync.samba.org/ftp/rsync/rsync.html

rsync
  • 4 个回答
  • 3211 Views
Martin Hope
John
Asked: 2014-07-25 15:00:21 +0800 CST

windows rsync 从不同的本地驱动器,除了 c,到远程

  • 4
rsync -avz D:/test [email protected]:/test

我在 windows7 机器上使用 cwrsync rsyncing 到 linux 机器。

当我从驱动器 C 上的相对路径开始时,一切正常。但我需要从 Windows 盒子中的另一个硬盘进行 rsync,驱动器 d。

当我运行上述行时,rsync 抱怨“源和目标不能都是远程的”。

如何让 rsync 查看驱动器 d 上的目录?

驱动器 c 中文件夹中的同一行可以正常工作:

rsync -avz /test [email protected]:/test

在mac上,第二个硬盘是通过卷挂载的,rsync可以通过它访问文件,windows中有什么类似的吗?

hard-drive
  • 1 个回答
  • 10869 Views
Martin Hope
John
Asked: 2014-07-10 10:07:52 +0800 CST

云图实验。在访问日志中联系 [email protected]

  • 7
54.204.131.75 - - [09/Jul/2014:17:53:43 +0100] "HEAD / HTTP/1.1" 200 283 "-" "Cloud mapping experiment. Contact [email protected]"

前几天我的访问日志中有一个新行。据我所知,这很可能是网络钓鱼诈骗。有谁知道我是否可能是错的。

我的机器上几乎看不到任何损坏的痕迹。该日志在一个小时左右的时间内记录了 3 次。

log-files
  • 2 个回答
  • 6872 Views
Martin Hope
John
Asked: 2014-05-24 14:12:47 +0800 CST

在英国和澳大利亚服务器设置中运行数据库繁重的 webapp

  • 1

我正在从英国数据中心运行 web 应用程序。速度和预期一样好。webapp 严重依赖数据库。我想将 webapp 打开到澳大利亚和新西兰,但要保持服务器的良好响应时间。

本质上,应用程序中的每个用户都可以访问存储在数据库中两个表中的数据。每个用户使用所述数据来生成他们自己的数据组合并存储在数据库中的其他表中。该应用程序的资产更新很少。

注册的电子邮件在所有国家/地区都必须是唯一的。

根据我在这方面的有限知识,我相信有两种选择: A - 两台主机之间的完整数据库复制,一台在英国,一台在澳大利亚 B - 定期将数据从源主机英国复制到目标主机澳大利亚和新西兰。

然后离开域 1 - 理想情况下在域上是最好的,但是这需要一个路由服务器来根据位置将流量引导到不同的服务器,但这会增加响应时间 2 - 每个国家/地区的备用域直接路由到该国家/地区本地主机

我很感激我没有在这里重新发明轮子,但是像这样的场景的标准协议是什么?根据我的理解,cdn 服务更多地用于图像和视频传输,我想这里的基本问题是数据库的等价物是什么?

感谢您的帮助,约翰

cdn
  • 1 个回答
  • 405 Views
Martin Hope
John
Asked: 2013-12-12 00:53:03 +0800 CST

从 mac 到 ubuntu 12 lts 的 ssh 密钥

  • 1

我正在尝试设置一个场景,在该场景中,我不需要将密码从 mac 提交到 ubuntu 机器。这是我一直遵循的程序:

1 - 在您的 Mac 中打开一个终端并保持以您的身份登录,而不是 root。

2 - ssh-keygen (当要求输入密码时,请留空,此 s 的目的是让 rsync 能够在没有密码提示的情况下进行 ssh)

3 -cat ~/.ssh/id_rsa.pub

这将生成一个 SSH 密钥,该密钥现在将存在于您的主文件夹中。现在您需要将公钥添加到 ubuntu 虚拟机中

1 – 以 root 身份登录到 vm

2 –mkdir /home/john/.ssh/

3 -nano /home/john/.ssh/authorized_keys 将你的 mac 上生成的密钥复制到 ida_rsa.pub 并粘贴到这个文件中

4 –chown –R john /home/john/.ssh/

5 –chmod 600 /home/john

结果是,我在两个主目录中都有密钥。但是当我ssh [email protected]仍然被要求输入密码时..

有任何想法吗?

是否必须在 ubuntu 机器中的 ssh 中设置配置以允许这种行为发生?

ubuntu
  • 1 个回答
  • 85 Views
Martin Hope
John
Asked: 2013-11-01 05:54:38 +0800 CST

找不到脚本或无法统计:/usr/lib/cgi-bin/php-cgi

  • 9

我刚刚在/var/log/apache2/error.log

[Thu Oct 31 06:59:04 2013] [error] [client 203.197.197.18] 找不到脚本或无法统计:/usr/lib/cgi-bin/php

[2013 年 10 月 31 日星期四 06:59:08] [错误] [客户端 203.197.197.18] 找不到脚本或无法统计:/usr/lib/cgi-bin/php5

[Thu Oct 31 06:59:09 2013] [error] [client 203.197.197.18] 找不到脚本或无法统计:/usr/lib/cgi-bin/php-cgi

[Thu Oct 31 06:59:14 2013] [error] [client 203.197.197.18] script not found 或无法统计:/usr/lib/cgi-bin/php.cgi

[2013 年 10 月 31 日星期四 06:59:14] [错误] [客户端 203.197.197.18] 找不到脚本或无法统计:/usr/lib/cgi-bin/php4

该服务器正在运行 Ubuntu 12.04lts。

我以前从未见过这种攻击,我应该为他们担心或以任何方式保护我的系统吗?

谢谢,约翰

apache-2.2
  • 3 个回答
  • 46829 Views
Martin Hope
John
Asked: 2013-10-28 10:26:18 +0800 CST

语法错误:statoverride 文件中的未知用户“munin”

  • 5

运行 Ubuntu 12.04 lts 的服务器

前几天我在服务器上安装了 munin。后来我决定用 apt-get 删除它。

我注意到并非所有内容都从安装中删除,因此手动删除了 munin web 目录,并从服务器中删除了 munin 用户名和组。

但是我刚刚尝试运行 apt-get upgrade 现在返回错误:

dpkg:不可恢复的致命错误,中止:语法错误:statoverride 文件中的未知用户 'munin' E:子进程 /usr/bin/dpkg 返回错误代码 (2)

我现在已经超出了我的深度。这是什么意思?谷歌结果并没有真正有帮助。

任何人都可以帮忙吗?

谢谢,约翰

munin
  • 3 个回答
  • 9323 Views
Martin Hope
John
Asked: 2013-05-10 12:47:59 +0800 CST

客户端 157.56.229.87 尝试调用目录作为脚本:/usr/lib/cgi-bin/

  • 1

好吧,所以我经常检查我的日志,看到人们“确定联合范围”的一系列错误日志,但今天我注意到一个新的:

[client 157.56.229.87] attempt to invoke directory as script: /usr/lib/cgi-bin/

这个 IP 范围实际上已经导致这个错误日志几次了,但我不知道它是什么意思。

我假设这是一次黑客尝试,但有谁知道他们正在尝试做什么以及如何防范它?

谢谢,

约翰

logging
  • 1 个回答
  • 1883 Views
Martin Hope
John
Asked: 2013-02-10 07:08:04 +0800 CST

ftp 用户到具有正确权限的 ubuntu 上的 var/www

  • 1

我的 Ubuntu 12 服务器上有以下配置:

1 -vsftpd使用配置文件设置安装和配置:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dir_message_enable=YES
use_locatime=YES
xferlog_enable=YES
connect_from_port_20=YES

chroot_local_user=YES
#chroot_list_enable=YES  (commented out)
chroot_list_file=/etc/vsftpd.chroot_list

secure_choot_dir=/var/run/vsftpd/empty    
pam_service_name=vsftpd    
rsa_cert_file=/ect/ssl/private/vsftpd.pem    
user_config_dir=/etc/vsftpd/user_conf

2 - 我有一个 ftp 用户设置,其中他们的主目录是

/var/www

3 - 当我使用新的 ftp 用户名使用 filezilla 连接到服务器时,filezilla 会根据需要自动显示 webroot。

问题是文件的权限;ftpuser 上传到/var/www目录的每个文件都已设置,因此文件的所有者和组都是 ftp 用户的。

权限也是

-rw-------

这当然意味着尝试通过标准浏览器访问的每个文件都会收到禁止警告。

'/var/www所有者是'www-data',组是'webroot'。

webroot 是我单独创建的一个组,并添加了 ftp 用户和其他一些用户。

我怎样才能最好地纠正这个问题,以便标准浏览器在尝试查看 ftp 用户上传的文件时不会收到禁止警告?

permissions
  • 1 个回答
  • 3116 Views
Martin Hope
John
Asked: 2012-11-13 10:57:16 +0800 CST

ubuntu 12.04 - svn 重新定位并重新启动系统

  • 1

我想我的服务器被黑了,但我不能确定。

我已经在 ubuntu 12.04 上安装并运行了 svn。安装后我得到一台机器来检查用户名 joe 的存储库。昨晚我在我自己的机器上用用户名 john 检查了存储库。但是今天我在尝试提交时突然收到这条消息:

'错误存储库暂时移至' http://www.mydomain.com ';请搬迁'

我不知道从哪里开始看这里,一些搜索结果表明它可能是一个钩子脚本,其他人说是草率的配置文件。

我已经安装了带有 webDAV 的 svn。配置文件是:/etc/apache2/mods-available/dav_svn.conf:

<Location /backuprepos/filesystem>
DAV svn
SVNPath /home/backuprepos/filesystem
AuthType Basic
AuthName "filesystem subversion repository"
AuthUserFile /etc/subversion/passwd
Require valid-user
</Location>

我添加到以下文件的密码:

htpasswd -c /etc/subversion/passwd user_name

真的需要一些帮助..

svn
  • 1 个回答
  • 131 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve