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-373107

Matrix's questions

Martin Hope
Matrix
Asked: 2022-01-15 06:30:09 +0800 CST

使用日志在 ​​SFTP 服务器中查找已删除/导入的文件

  • 1

我们有一个 SFTP 服务器,我试图找出某些特定文件是否已从服务器中删除,或者它们是否已导入服务器。我正在浏览 /var/log 下的日志文件,但到目前为止还没有找到相关的日志。

我想知道在哪个日志文件中可以找到这样的信息?

任何帮助,将不胜感激。

更新:

根据答案和链接:在此处输入链接描述 我已经修改了配置文件,其中部分如下所示:

Subsystem sftp internal-sftp -f AUTH -l INFO

# Force sftp and chroot jail for members of sftp group
Match group sftp
ForceCommand internal-sftp
ChrootDirectory /sftp/%u

# Members of sftp-glob have access to all user folders
Match group sftp-glob
ForceCommand internal-sftp
ChrootDirectory /sftp


# Enable this for more logs
LogLevel VERBOSE

然后重启sshd:

sudo systemctl restart sshd

在这种情况下,我只能在 /var/log/auth.log 下看到管理员用户(我)创建的日志

Jan 17 12:57:50 ios-sftp internal-sftp[5262]: remove name "/tmp/test.txt"

为了记录 chrooted 用户的操作,我已经这样做了:

cd /sftp 
sudo mkdir dev
sudo chmod 755 dev
sudo touch dev/log
sudo mount --bind /dev/log dev/log

但是,如果他们上传或删除文件,我仍然看不到其他用户登录 /var/log/auth.log。

通过将 ForceCommand internal-sftp 更改为 ForceCommand internal-sftp -f AUTH -l INFO 修复配置文件后,它开始工作

Subsystem sftp internal-sftp -f AUTH -l INFO

# Force sftp and chroot jail for members of sftp group
Match group sftp
ForceCommand internal-sftp -f AUTH -l INFO
ChrootDirectory /sftp/%u

# Members of sftp-glob have access to all user folders
Match group sftp-glob
ForceCommand internal-sftp -f AUTH -l INFO
ChrootDirectory /sftp


# Enable this for more logs
LogLevel VERBOSE

现在我可以看到 /var/log/auth.log 下的日志:

Jan 18 10:13:02 user-sftp internal-sftp[7466]: set "/folder1/folder2/myfile.xml" modtime 20210106-10:32:58
logging sftp
  • 1 个回答
  • 324 Views
Martin Hope
Matrix
Asked: 2017-08-08 03:56:11 +0800 CST

Nginx 非现有域无法路由到 404 页面

  • 0

我的 Nginx 配置文件包含几个服务器块,如下所示。使用以下配置,它将不存在的域重定向到配置文件中的第一个服务器块。但是我想将不存在的域重定向到 404 页面。

 server 
{    
listen      443 ssl http2;
server_name     test-domain.no;
access_log  /var/log/nginx/nginx.access.log;
error_log   /var/log/nginx/nginx.error.log;
ssl    on;
ssl_certificate    /etc/nginx/ssl/certificates.pem;
ssl_certificate_key    /etc/nginx/ssl/server.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_session_timeout 1d;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_session_tickets off;

location /
{
    proxy_pass         http://test-domain-sps.3fcf2715.cont.dockerapp.io:80/;
    proxy_redirect     off;

    ##proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

    client_max_body_size       10m;
    client_body_buffer_size    128k;

    proxy_connect_timeout      90;
    proxy_send_timeout         90;
    proxy_read_timeout         90;

    proxy_buffer_size          4k;
    proxy_buffers              4 32k;
    proxy_busy_buffers_size    64k;
    proxy_temp_file_write_size 64k;
}
}

# Redirect from HTTP to HTTPS
server { 
 listen 80;
 server_name test-domain.no; 
 return 301 https://test-domain.no$request_uri;
 #rewrite ^/(.*) https://test-domain.no/$1 permanent; 
}

#others server blocks...

如果您让我知道如何将配置文件中不存在的域路由到 404 页面,我将不胜感激。

编辑:

默认 nginx.conf:

 # cat /etc/nginx/nginx.conf                                                                                                                                              


user  nginx;                                                                                                                                                             

worker_processes  1;                                                                                                                                                     

error_log  /var/log/nginx/error.log warn;                                                                                                                                

pid        /var/run/nginx.pid;                                                                                                                                           


events {                                                                                                                                                                 
  worker_connections  1024;                                                                                                                                            

}                                                                                                                                                                        


http {                                                                                                                                                                   
 include       /etc/nginx/mime.types;                                                                                                                                 
 default_type  application/octet-stream;                                                                                                                              

 log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '                                                                                            
                  '$status $body_bytes_sent "$http_referer" '                                                                                                        
                  '"$http_user_agent" "$http_x_forwarded_for"';                                                                                                      

 access_log  /var/log/nginx/access.log  main;                                                                                                                         

 sendfile        on;                                                                                                                                                  
 #tcp_nopush     on;                                                                                                                                                  

 keepalive_timeout  65;                                                                                                                                               

 #gzip  on;                                                                                                                                                           

 include /etc/nginx/conf.d/*.conf;                                                                                                                                    

}
nginx
  • 2 个回答
  • 2496 Views
Martin Hope
Matrix
Asked: 2017-07-12 00:35:04 +0800 CST

从 VPC 到本地网络的单向 VPN 连接

  • 2

我想通过一个 VPN 连接将 VPC 连接到本地服务器。这只能是单向(从 AWS 到本地、传出)连接,而不是站点到站点。

我已经设置了 AWS VPN 连接、虚拟专用网关和客户网关 (Cisco-ASA)。但我发现这是双向连接,它要求客户打开与我们的连接并保持打开状态,以便我们可以与他们建立 VPN 连接。

这是我在 AWS 端实现的:

https://aws.amazon.com/answers/networking/aws-multiple-vpc-vpn-connection-sharing/

正如我们发现的传出连接,唯一的方法是 Cisco AnyConnect,这意味着在 VPC 中,我们需要一台安装了 Cisco AnyConnect 的服务器,然后我们才能建立此连接。

我想知道在这种情况下是否有更好的方法来建立单向(传出)VPN 连接?(仅从 VPC 到本地)

任何帮助,将不胜感激。

第二个问题:

如果我使用 AWS 的 VPN 连接连接到我们的数据中心,如何将多个 VPC 连接到一个 VPN 连接?我有一个已在其上建立 VPN 的主 VPC,我创建了另一个 VPC,其中有一个服务器,并对这两个 VPC 进行对等。我的第二个 VPC 与数据中心之间没有任何连接。路由表如下所示:

VPN-VPC1 路由表:

Destination          Target
privateIP(VPC1)       local
0.0.0.0/0             igw
datacenter-network1   vgw
datacenter-network2   vgw
privateIP(VPC2)       pcx

VPC2路由表:(子网关联:10.0.1.0/24)

Destination          Target   
privateIP(VPC2)       local
0.0.0.0/0             igw
privateIP(VPC1)       pcx

数据中心与 10.0.1.10/24 之间没有连接

我在这里错过了什么吗?

amazon-web-services
  • 1 个回答
  • 1315 Views
Martin Hope
Matrix
Asked: 2017-06-06 12:56:51 +0800 CST

HTTPS 在 Docker-Nginx 上不起作用

  • 2

我通过生成 CSR 获得了 *.domain.no 的通配符 ssl 证书,并且我从 ssl-provider 收到了一个 .pem 文件。现在我有关键文件,包括:

服务器密钥

certificate.pem(包括中间证书和 SSL 证书)

我想在包含一些子域的 docker-nginx 上使用此证书,我的配置文件如下所示:

/etc/nginx/conf.d/default.conf

server 
{
   listen      443 ssl;
   server_name     test.domain.no;
   access_log  /var/log/nginx/nginx.access.log;
   error_log   /var/log/nginx/nginx.error.log;
   ssl    on;
   ssl_certificate    /etc/ssl/certificates.pem;
   ssl_certificate_key    /etc/ssl/server.key;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   location /
   {
      proxy_pass         {dockerEndpoint};
      proxy_redirect     off;

    ##proxy_set_header   Host             $host;
      proxy_set_header   X-Real-IP        $remote_addr;
      proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

      client_max_body_size       10m;
      client_body_buffer_size    128k;

      proxy_connect_timeout      90;
      proxy_send_timeout         90;
      proxy_read_timeout         90;

      proxy_buffer_size          4k;
      proxy_buffers              4 32k;
      proxy_busy_buffers_size    64k;
      proxy_temp_file_write_size 64k;

     }
}

Nginx-Docker 文件:

FROM nginx
VOLUME /etc/nginx/conf.d
COPY default.conf /etc/nginx/conf.d/
COPY certificates.pem /etc/ssl
COPY server.csr /etc/ssl
COPY server.key /etc/ssl

https 不起作用,它在浏览器中给出以下错误:

This site can’t be reached
Try:
Checking the connection
Checking the proxy and the firewall

由于我在 docker-logs 中出现以下错误,我已将 Dockerfile 更改为:

错误:

BIO_new_file("/etc/ssl/certificates.pem") failed (SSL: error:02001014:system library:fopen:Not a   directory:fopen('/etc/ssl/certificates.pem','r') error:2006D002:BIO   routines:BIO_new_file:system lib)
nginx: [emerg] BIO_new_file("/etc/ssl/certificates.pem") failed (SSL:  error:02001014:system library:fopen:Not a   directory:fopen('/etc/ssl/certificates.pem','r') error:2006D002:BIO   routines:BIO_new_file:system lib)

修改后的 Dockerfile:

FROM nginx

COPY default.conf /etc/nginx/conf.d/
#CMD ["nginx", "-g", "daemon off;"]
RUN mkdir /etc/nginx/ssl
RUN chown -R root:root /etc/nginx/ssl
RUN chmod -R 600 /etc/nginx/ssl
COPY certificates.pem /etc/nginx/ssl
COPY server.key /etc/nginx/ssl

现在它不会在 docker-logs 中给出错误,但它仍然不适用于 HTTPS。:(

我试图通过连接到 nginx-container 并 cat 文件来检查 /var/log/nginx 中的 error.log,但文件中没有任何内容。

任何帮助,将不胜感激。

更新:

我已将 Nginx docker 容器端口修改为 443 (-p 443:443) 并将 /etc/nginx/ssl 的权限更改为 644,现在如果我使用 https 打开 url,则会出现以下错误:

There are issues with the site's certificate chain (net::ERR CERT COMMON_NAME_INVALID)

虽然它说它是由我的 ssl-provider 发布的。

nginx
  • 2 个回答
  • 16662 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