yeshang
V2EX  ›  PHP

请问 PHP 程序的网站, 怎样才能限制只能某一台电脑访问? ip 不可取, 经常变

  •  
  •   yeshang · Nov 15, 2017 · 6656 views
    This topic created in 3275 days ago, the information mentioned may be changed or developed.
    php 可以获得某台电脑的唯一机器码, 或者唯一的其他码(比如硬盘序列号啥的)?
    38 replies  •  2019-04-04 11:26:35 +08:00
    care
    care
    Nov 15, 2017 via iPhone
    1
    访问网站需要密码验证不就行了
    yeshang
    yeshang
    OP
    Nov 15, 2017
    2
    @care 密码不能只限制在一台电脑上访问.
    zhaohehedola
    zhaohehedola
    Nov 15, 2017
    3
    代码就部署在你的电脑上 😉
    boboliu
    boboliu
    Nov 15, 2017 via Android
    4
    ssl_verify_client 稳的一批
    yeshang
    yeshang
    OP
    Nov 15, 2017
    5
    @zhaohehedola 目前是的. 写完就要挂到云了. 就是为了保证安全性. 所以想限制某几台电脑才能访问得到
    yeshang
    yeshang
    OP
    Nov 15, 2017
    6
    @boboliu 太高深, 小白不懂. 可否请教一下?
    gouchaoer
    gouchaoer
    Nov 15, 2017
    7
    浏览器不会暴露你 pc 的 mac 啦,结论就是只能部署 https,然后签发一个你私有的证书,哪台电脑要访问这个证书就必须安装证书
    yeshang
    yeshang
    OP
    Nov 15, 2017
    9
    @gouchaoer 估计应该是这样操作了. 浏览器可以操作让它暴露 mac
    xia0pia0
    xia0pia0
    Nov 15, 2017
    10
    SSL 双向认证。
    tabris17
    tabris17
    Nov 15, 2017❤️1
    11
    浏览器指纹

    随便找了一篇文章 https://nanshihui.github.io/2017/03/21/browser-fingerprint/
    realpg
    realpg
    Nov 15, 2017
    13
    nginx 效验客户端证书
    手动去给客户机装证书 标记私钥不可导出
    owenliang
    owenliang
    Nov 15, 2017
    14
    IP 白名单有啥复杂的。
    cxbig
    cxbig
    Nov 15, 2017 via iPad
    15
    1. 加 Basic Auth,配合 fail2ban 使用
    2. 自签 SSL 文件
    gouchaoer
    gouchaoer
    Nov 15, 2017
    16
    @zencoding 这个不是用在这里的
    cabing
    cabing
    Nov 15, 2017
    17
    https。或者额外的 cookie

    也可以从业务角度解决问题

    如果你第一次登陆成功,在本地写一个复杂的额外的 cookie。设置永久的 cookie。你再把 cookie 写到服务端

    以后登陆的时候 : 登陆验证+额外 cookie (和你本机的一致)。

    这样可以在你不清楚浏览器 cookie 的情况下,从业务的角度实现只在一个电脑上登陆。
    tuzhis
    tuzhis
    Nov 15, 2017 via iPhone
    18
    加密狗……
    boboliu
    boboliu
    Nov 15, 2017 via Android
    19
    就算用 bing 应该都搜到 Nginx 的文档了吧: https://nginx.org/en/docs/http/ngx_http_ssl_module.html

    以及如果真的要确保安全性较高,不如开发个代理隧道访问。。。ls 的加密狗 /智能卡也是个可行的方案
    checgg
    checgg
    Nov 15, 2017❤️1
    20
    代理 ip 不行吗。。。。
    MoliOOO
    MoliOOO
    Nov 15, 2017 via Android
    21
    直接限制 IP 网段,需要访问的电脑先 VPN 到这个网段,这样可以吗?
    16500682
    16500682
    Nov 15, 2017 via Android
    22
    ssl 双向认证+1
    polymerdg
    polymerdg
    Nov 15, 2017
    23
    限制内网访问 SS 挂代理
    kenX
    kenX
    Nov 15, 2017
    24
    密码不能只限制在一台电脑上访问,ssl 就可以?证书不是也可以导出吗?
    用硬件证书?
    LINAICAI
    LINAICAI
    Nov 15, 2017 via iPhone
    25
    ssh 禁止密码登录,使用公钥登录
    asukaceres
    asukaceres
    Nov 15, 2017
    26
    client cert auth
    GreatHumorist
    GreatHumorist
    Nov 15, 2017 via iPhone
    27
    组网用 windows 域认证?
    sunsh2017
    sunsh2017
    Nov 16, 2017 via Android
    28
    浏览器指纹
    lsido
    lsido
    Nov 16, 2017 via iPhone
    29
    没想到特别好的方案,但有俩下等方法

    1.通过 MAC 地址

    2.加密狗 (淘宝几十块钱)
    msg7086
    msg7086
    Nov 16, 2017
    30
    @kenX 可以标记为不可导出。当然硬件证书也是可以的。
    anuan
    anuan
    Nov 16, 2017❤️1
    31
    最简单的办法
    域名不绑 ip 也就是不设置 dns
    在本地 hosts 写上 ip 就行了
    lotmany
    lotmany
    Nov 16, 2017
    32
    @anuan #31 #31 思路清奇.
    kenX
    kenX
    Nov 16, 2017
    33
    @msg7086 学习了
    czk1997
    czk1997
    Nov 17, 2017
    34
    机器码什么的肯定获取不到……
    加密狗(硬件证书) 或者域可控一点
    @anuan #31 思路清奇
    aksoft
    aksoft
    Nov 24, 2017
    35
    vb 内嵌浏览器:加几个 header,cookie 啥的,vb 可以获取机器码
    byteX
    byteX
    Apr 4, 2019
    36
    楼主 这个问题你是怎么解决的 能传授以下经验么 现在我也卡在这里了
    yeshang
    yeshang
    OP
    Apr 4, 2019 via Android
    37
    @xytest 没解决。没管了
    byteX
    byteX
    Apr 4, 2019
    38
    @yeshang 嗯嗯,我在去找找有没有别的思路
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1410 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 22:26 · PVG 06:26 · LAX 14:26 · JFK 17:26
    ♥ Do have faith in what you're doing.