-
2016-02-05 23:32:40
自己的项目开发是多个人一起开发,前端那边有一些小问题在线上改比较方便,就像给他们搭FTP让他们自己上传修改,但比较棘手的就是权限问题,团队有好几个成员,每个人负责不同的站点模块,如何让各自都不干扰别人,不能进入别人的目录,下面解决这个问题(亲测有用):
我们使用下面的命令创建一个新的用户组sftpgroup:
# groupadd mygroup
创建一个新的用户比如 liu ,然后分配给tosftpusers用户组:
# adduser liu -g mygroup -s /sbin/nologin # passwd liu
接下来修改该用户的登录时的根目录:
# vi /etc/passwd
找到要修改的用户那几行,修改掉中间的目录即可
比如:要把根目录从/home/liu改到/alidata/www
则把 liu:x:502:502::/home/liu:/sbin/nologin 中的/home/liu改成/alidata/www
接下来修改/etc/vsftpd下的vsftpd.conf配置文件
将chroot_local_user=YES的注释#号去掉,阻止用户访问上级目录。
启动或是重启ftp服务。
#service vsftpd restart(start)
这样当使用所建立的用户和密码通过FTP软件访问服务器时就只能够访问该用户根目录下的文件,而无法访问上层文件夹以及任何不在该用户根目录下的文件了。
折腾了一晚上,终于解决掉了这个问题,希望对大家也有用。
更多相关内容 -
内网用户通过域名或公网IP访问内部服务器的解决办法
2019-06-03 09:32:15当用路由器防火墙等设备将内网服务器发布到公网上,供外网用户访问的过程中出现的一种现象,就是你发现web服务器已经成功发布了,外网用户能够成功访问,但内网用户确无法访问到web服务器,这就是路...原因-路由回流
当用路由器防火墙等设备将内网服务器发布到公网上,供外网用户访问的过程中出现的一种现象,就是你发现web服务器已经成功发布了,外网用户能够成功访问,但内网用户确无法访问到web服务器,这就是路由回流。造成路由回流的原因主要是出口设备路由器或者是防火墙做了NAT/PAT(也被称作源地址转换)和端口映射(也被称为目标地址转换)造成的。
组网图
- 内网用户与服务器不同网段
- 内网用户与服务器相同网段
解决方案
内部NAT方案
内网用户与服务器不同网段
E0/0和E0/2都需要做nat server
int e0/0 nat server protocol tcp global 202.103.1.1 www inside 192.168.2.2 www int e0/2 nat server protocol tcp global 202.103.1.1 www inside 192.168.2.2 www nat dns-map www.abc.com 202.103.1.1 tcp #若通过域名访问添加此配置
内网用户与服务器相同网段
acl number 3001 rule 0 permit ip source 192.168.1.0 0.0.0.255 int e0/2 ip add 202.103.1.1 255.255.255.0 nat server protocol tcp global 202.103.1.1 www inside 192.168.1.254 www nat outbound 3001 int e0/0 ip add 192.168.1.1 255.255.255.0 nat server protocol tcp global 202.103.1.1 www inside 192.168.1.254 www nat outbound 3001 #必须添加这条 nat dns-map www.abc.com 202.103.1.1 tcp #若通过域名访问添加此配置
内网DNS方案
在内网配置一台DNS服务器,内网的所有客户端的DNS的IP都填写这台内网的DNS服务器的IP地址,还需要在内网DNS服务器上配置转发器,转发器中填写公网上的运营商DNS服务器的IP地址就可以解决访问其他网站的问题了。
防火墙DNS Mapping方案
注意不是所有的防火墙都支持路由回流,配置域名+外网IP+内网IP即可。
路由器DNS Mapping方案
[R1] nat dns-map www.abc.com 192.168.1.100 80 tcp
其他方案
如果内网需要使用域名访问的用户不多,则可以在内网机器上的
C:\Windows\System32\drivers\etc\hosts
添加以一行记录,192.168.1.100 www.abc.com
,这样就可以了。小结
上述几种解决方案中,内网DNS解决方案最符合一般人的习惯,安装配置也是最简单的,但是需要一台DNS服务器。
内部NAT解决方案在企业级的路由器或者防火墙上很容实现,但是难度比内网DNS方案略大。
防火墙DNS Mapping和路由器DNS Mapping需要防火墙和路由器支持,目前大多数防火墙和路由器支持,但是购买前请咨询厂商。
资源
- 内网用户与服务器不同网段
-
Ubantu服务器创建多个用户,多个用户互不干扰
2020-09-04 11:49:12要达成此目的,需要使用拥有超级管理员权限的root建立几个用户。 1.使用ssh远程访问服务器(如果服务器就在你面向,也可以直接操作服务器,省略此步骤) # 默认端口22登录 ssh 用户名@IP地址 # 自定义端口登录 ssh ...实验室采购了一台Linux服务器,需要几个人使用。我们希望几个人在使用的过程中,互不干扰。自己所安装的各种环境不会对其他人或root账号下的主系统环境有影响。要达成此目的,需要使用拥有超级管理员权限的root建立几个用户。
1.使用ssh远程访问服务器(如果服务器就在你面向,也可以直接操作服务器,省略此步骤)
# 默认端口22登录 ssh 用户名@IP地址 # 自定义端口登录 ssh -p 端口 用户名@IP地址
2.添加用户
sudo adduser 用户名
注:这里使用了adduser命令添加用户,与之相似的还有一个useradd命令。
在Ubuntu中创建新用户,通常会用到两个命令:useradd和adduser,虽然作用一样,但用法却不尽相同。
可参考Ubuntu中useradd和adduser的区别3.为用户赋权,这里赋予超级管理员(sudo)权限
sudo vi /etc/sudoers
注:所用拥有超级管理员sudo权限的用户都在 /etc/sudoers文件中。这里我们通过vi编辑器打开sudoers文件,然后对该文件进行编辑,在该文件中添加一行命令 用户名 ALL=(ALL) ALL ,就可为该用户赋予sudo权限
4.在
root ALL=(ALL) ALL
后面添加新的一行用户名 ALL=(ALL) ALL
,保存并退出,添加超级用户权限完成。注:vi编辑器的用法
按ESC键 跳到命令模式,然后:
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑5.创建完用户后,发现
/home
目录下生成了以用户名命名的文件
使用cd /home
命令进入该目录下
在使用ls
命令查看该目录下的用户目录有哪些amax@amax:/$ cd /home amax@amax:/home$ ls amax tyb gjb
这里amax用户拥有超级管理员权限。在使用Linux过程中,Root账号拥有最大的操作权限。为保证Root账号安全,一般不直接使用Root账号,而是直接创建一个拥有Root权限的其它账号来使用。这里的amax就是如此。
使用拥有超级管理员权限的amax创建了tyb用户。可以在home目录下找到以该用户名命令的文件6.进一步查看tyb用户目录下有什么
amax@amax:/home$ cd tyb amax@amax:/home/tyb$ ls examples.desktop
examples.desktop是什么呢?有什么用?
查看https://segmentfault.com/q/1010000016976365
得知:
问题:ubuntu18.04用户目录中的examples.desktop是什么文件? 有什么作用?
在终端中打开用户主目录可以看到examples.desktop文件,但是在文件管理器中却看不到这个文件。 在文件管理器中却有Examples文件夹。这两个文件有什么关联吗? 为什么要有这两个文件?
回答:.desktop文件是Linux图形桌面的快捷方式文件。也就是说你的图形化程序期望能在开始-菜单中打开,那么你必须有一个.desktop文件放在对应的目录下。
Ubuntu的那个Example只是一个演示,让你看看自己写一个desktop该怎么写而已,删掉也不影响。只有图形桌面才会带那个文件,Server无图形桌面就没这个文件。7.因为tyb是新建的用户,所以该目录下并无其它东西。同时我们需要验证当使用tyb登录服务器,并安装一些环境时,对其它用户并无影响。
使用pip list命令查看amax下的环境
pip list 命令列出所有安装包和版本信息amax@amax:/$ pip list Package Version ---------------------------------- --------- alabaster 0.7.10 anaconda-client 1.6.14 anaconda-navigator 1.8.7 anaconda-project 0.8.2 asn1crypto 0.24.0 astroid 1.6.3 astropy 3.0.2 attrs 18.1.0 Babel 2.5.3 backcall 0.1.0 backports.shutil-get-terminal-size 1.0.0 beautifulsoup4 4.6.0 bitarray 0.8.1 bkcharts 0.2 blaze 0.11.3 bleach 2.1.3 bokeh 0.12.16 boto 2.48.0 Bottleneck 1.2.1 certifi 2018.4.16 cffi 1.11.5 chardet 3.0.4 ......
8.切换到tyb用户
使用命令:su tyb
amax@amax:/$ su tyb Password: tyb@amax:/$ ls bin core etc initrd.img.old lib64 mnt root sbin sys usr vmlinuz.old boot data home lib lost+found opt run snap test.log var cdrom dev initrd.img lib32 media proc save_pid.txt srv tmp vmlinuz tyb@amax:/$ pip list Package Version ---------- ------- pip 18.1 setuptools 40.6.2 You are using pip version 18.1, however version 20.2.2 is available. You should consider upgrading via the 'pip install --upgrade pip' command. tyb@amax:/$
注:切换到tyb后,使用ls查看当前所在位置有哪些文件。与之前使用amax用户切换tyb时所在的位置有关。如果使用远程访问,使用tyb登录,会发现此时所在位置就是该用户的用户目录/home/tyb,稍后验证。
使用pip list 可以发现该用户环境下没有安装什么,只有一些工具类。与amax用户使用pip list作对比,发现不同。这就说明了,当我们切换到另外一个用户时,就切换到了该用户的环境,与其它用户环境并不干扰。我们就可以放心在自己用户环境中安装配置了。9.tyb用户使用ssh远程访问服务器
ctrl+D 退出远程访问,然后使用tyb用户ssh远程访问服务器:
ssh tyb@IP地址
C:\Users\Administrator>ssh tyb@58.206.101.115 tyb@58.206.101.115's password:
使用
pwd
命令查看当前位置:tyb@amax:~$ pwd /home/tyb tyb@amax:~$
发现所在位置就是tyb的用户目录。我们就可以放心在该用户目录下进行操作了,这样就不会印象到其他用户。除非你进入了他们的用户目录,对他们的文件做了增删改。
-
如何让普通电脑变服务器 让外网访问内网的tomcat
2017-06-22 14:52:36我们为了更能逼近现实,就想着自己的javaweb程序发布后,外网的同学能够访问我们的网站,难道我们去买空间,去买域名嘛,其实也没必要,我们只是学习,测试之用,在自己的电脑上搭建一个服务器完全可以满足要求。...我们平常学习时经常会写一下javaweb程序,我们为了更能逼近现实,就想着自己的javaweb程序发布后,外网的同学能够访问我们的网站,难道我们去买空间,去买域名嘛,其实也没必要,我们只是学习,测试之用,在自己的电脑上搭建一个服务器完全可以满足要求。上次写的一篇博客,PC服务端与Android客户端实现网络通信,就是利用这个原理。
我们分为三步走来实现:(我这里用的示例javaweb程序是我自己简单写的一个小程序shop1)
1,
我们用Tomcat服务器,如果我们的javaweb程序已经部署到了Tomcat服务器,一般我们在本地访问的地址为:localhost:8080/shop1,localhost指本机,即127.0.0.1,8080端口号,shop1你部署的项目名称,但太过繁琐,我们只想通过IP地址来访问我们的项目,即127.0.0.1或者localhost,我们只需修改一下Tomcat的配置即可,打开Tomcat所在的目录,打开conf文件夹,打开server.xml文件,所要修改的部分如下:
- <Connector port="80" protocol="HTTP/1.1"
- connectionTimeout="20000"
- redirectPort="8443" />
- <Context path="" docBase="shop1" reloadable="true" />
即将port从原先的8080修改成80,因为http协议的默认端口是80,这样你就可以不用再输端口号了,把docBase="shop1"的值修改成你所部属的项目的名称,默认指向你的项目,这样你就可以不输项目的名称了。
还得注意一点Tomcat 7.0的版本的server.xml文件中居然没有
- <Context path="" docBase="shop1" reloadable="true" />
这一条,又下载了一个5.0版本的居然有,如果你的没有,复制加进去就可以了。OK,这样的话,你在浏览器里输入localhost就可以访问你的项目了!
PS:为了下来的工作中不出现什么问题,我并没有将8080端口改成80,据说80端口被电信封掉了,我让用电信上网的同学访问我的网站,果然不行,这里我们明白道理就可以了,只是学习测试之用,所以我们就用8080端口。
2,
上一步我们只实现了自己访问,但如何让外网的同学访问,这里可能涉及了简单的网络知识,我网络学的也不是很好。就说的比较通俗一点。有两种情况(1)你上网没有用路由,运营商单独分给你一个IP地址,那你直接可以用你的IP让外网的同学来访问你的网站,我们这里用的是8080端口,所以形式为:XX.XX.XX.XX:8080。为了让多的同学了解,我在啰嗦一下,怎么知道自己的IP地址,你不必用在cmd命令行输入ipconfig这种略显专业的方法去获取,其实只要在百度搜索“IP查询”,第一个就是。
(2)用了路由器,一个路由器带了好几台电脑,比如说跟室友,这就需要你去路由管理页面去设置一下,端口映射,让别人访问你们的IP地址时,映射到你的电脑,在浏览器中输入192.168.1.1(以你的路由为准),进入路由管理页面,操作如下图:
转发规则-----虚拟服务器-------添加新条目
端口我们没改,所以填8080,IP地址为你的电脑在局域网中的地址,怎么样知道自己的局域网中的地址,很简单自己百度一下,只要局域网里的电脑不是太多,一般为192.168.1.XXX,我这里为192.168.1.101,然后点击保存,OK,然后外网就可以用你们IP去访问你的网站了!
我的效果图如下:
这时可以把这个网址发给你的同学,试一下,他能不能访问你的网站,答案是肯定的!
3,
但是又有新问题了,你第二天打开路由,或者再次上网时,运营商会重新分配给你一个新的IP地址,难道你让你同学访问时,再次把这个IP地址发给他吗?显然这是不合理了。
此时,我们就想有一个动态域名多好。这里给大家介绍一款软件“花生壳”,下载安装,然后注册后,你就会获得一个免费的二级域名,每次开机自启后,就会将花生壳服务端中的IP数据更新成你新的IP地址,然后你每次用你固定的域名来访问时,就会解析到你新的IP地址。
如下图:
双击你的域名,看有没有显示出“经检测,您的域名已激活并指向正确”!
OK,到这里,没有路由的同学,就可以直接用你的域名访问了!
有路由的同学,还得多操作一步:
再次进入路由管理页面,操作如下图:
点击“动态DNS”,这时如果你的上述操作都没问题的话,服务提供者那一栏已经自动填充成花生壳的网址了,然后输入用户名,密码,点击登录,如果显示为“连接成功”,那点击“保存”。
到这里,终于大功告成,看一下最终效果图:
可以看到,我用我的域名成功的访问到了我的网站。
PS:有时显示“验证成功”时也是个假象,一点击“保存”时,又显示为“验证失败”,再点击“登录”,多点击几次“保存”,直到它一直显示为“验证成功”即可,反正就是多试几次。
祝君好运
-
关于服务器只允许特定IP访问的设置-Linux、Windows server 2003、2008、2012
2017-11-28 14:02:57于是有了:对于某一个服务器,要限定特定IP对其进行访问的需求。 因为存在:Windows server 2003、2008、2012及Linux这几种主流服务器。 我们分不同服务器来描述。Windows server 2003 1.Win键+R键,输入 ... -
如何让外网访问自己的本地Web服务器
2017-08-24 16:11:37本地服务器在内网测试是绰绰有余的,但是有些项目需要演示给异地的客户验收,而又赶不及把自己的网站放到服务器上面,这时我们就可以采用端口映射,让客户可以在外网访问我们的本地服务器(适合大部分的网站设计Soho... -
nginx使用ip_hash后为什么请求访问的都在同一个服务器,而另外几个服务几乎是闲的
2020-07-07 15:47:29nginx使用ip_hash后为什么请求访问的都在同一个服务器,而另外几个服务几乎是闲的nginx使用ip_hash后为什么请求访问的都在同一个服务器,而另外几个服务几乎是闲的ip_hash作用问题描述解决方案 nginx使用ip_hash后为... -
干货系列三:一台服务器能承载多少人同时访问?
2020-05-27 17:15:27有很多人都会问这个问题:服务器能承载多少人同时访问? 这个问题其实是很难有一个非常准确的答案的,因为服务器能同时承载的在线人数是受到多方面因素共同影响的结果,比如带宽、服务器处理速度以及访问页面的大小... -
分享几个免费的开源邮件服务器软件
2021-03-02 00:24:52由于企业的需要,我们很可能需要架设一个邮件服务器,微软的Exchange太复杂?GOOGLE出来的又收费!头大了吧,下面则有一些开源免费的邮箱服务器软件。 hMailServer hmailserver是一个免费的win下的邮件服务器,类似于... -
1核2g1m服务器能支持多少人在线访问?
2020-10-24 14:46:48一、可以支持多少人访问? 一般可以支持14人在线同时访问 二、1核2g1m是什么样的配置 1核2G内存的服务器相当于一台手机1/4的功效 三、为什么是14人? 这一点也找腾讯工程师验证了,确实是受到带宽限制的影响。 ... -
Linux Samba 指定用户访问特定的共享文件夹
2019-05-30 13:09:04Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Samba 即可以用于Windows和Linux之间的共享文件,也一样用于Linux和...1、先创建一个用户命令useradd 123 root@ubuntu:/home# useradd ... -
windows服务器指定IP地址才能进行远程访问
2019-07-25 11:08:36(个人觉得这个第二种方法好用) 一般情况下分两种方法: ...于是有了:对于某一个服务器,要限定特定IP对其进行访问的需求。 因为存在:Windows server 2003、2008、2012及Linux这几种主流服务器。 我们分... -
FTP服务器访问方法
2015-07-30 21:34:11ftp://127.0.0.1”或“ftp://192.168.0.2” 1、DOS下的登录格式。如“ftp ftp.bbc.com”... 2、浏览器中的登录格式。...如果使用IE直接登陆FTP,则直接用IE浏览器访问“ftp://主机名@IP地址”,然后在弹出的窗口输入 -
Vue + Spring Boot 项目实战(十四):用户认证方案与完善的访问拦截
2019-10-28 21:04:57本篇文章主要讲解 token、session 等用户认证方案的区别并分析常见误区,以及如何通过前后端的配合实现完善的访问拦截,为下一步权限控制的实现打下基础。 -
部分网段用户不能访问到不同网段某台服务器的解决办法
2018-01-20 16:10:54先来说一下背景,大约10天前我在配置rsync同步时,重启了服务器,重启后发现服务器突然连不上了,检查各种东西,试了各种办法调试测试,最后判断确实是服务器有问题,详细查看后发现服务器莫名多了两个网卡配置文件... -
解决”不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接“问题
2018-09-05 13:38:21局域网中共享文件夹时,如果我们使用过某个用户名和...当我们需要更改其他账号进入或映射一个未授权的共享文件夹,就会提示下面两个图的信息。 在cmd下运行 net use * /del /y 来清除系统记录列表。实测有效!... -
某俄罗斯小哥,竟靠一个服务器软件直接封神?
2021-12-27 09:20:18最近在搭建一个网站,就不可避免地要用到 Nginx,索性就出一期 Nginx 的入门教程,希望也可以帮助到大家~???? 作为开发者,相信大家都知道 Nginx 的重要...服务特别稳(几个月也不需要重启) 基于这些特点,越来越多的 -
内网穿透_外网怎么访问内网的tomcat服务器应用,已解决!
2019-04-24 12:25:14也就是javaweb,每次写好后都希望能让老师或者同学可以直接访问自己的项目,我们刚开始只是测试,不可能去花很多钱买云服务器去部署,所以能在自己的电脑上搭建一个tomcat让外网的人可以访问到成了困扰我们的公开... -
java web项目。每个用户登录都会开启几个线程,这样登录用户多了会不会导致线程太多
2016-04-08 02:38:28使用的socket通讯,一个用户登录都开启一个socket并无限接收或发送报文信息,如果登录用户超过一定数量线程是否会达到服务器可开启的线程数?,如果会,该怎么优化?实在没有分了,求各位帮忙 -
Samba服务器(多用户组、多用户有不同的访问权限)
2014-03-02 22:03:38首先服务器采用用户验证的方式,每个用户可以访问自己的宿主目录,并且只有该用户能访问宿主目录,并具有完全的权限,而其他人不能看到你的宿主目录。 2。建立一个caiwu的文件夹,希望caiwu组和lingdao组的人能看到... -
iptables只允许指定ip访问本机的指定端口
2017-06-15 09:10:05只允许指定的ip访问本机的指定端口50070: 例如允许的的ip:192.168.1.123,192.168.1.124, 192.168.1.100,其他ip都禁止访问。 切换到root用户 iptables -F#清除预设表filter中的所有规则链的规则 1、在tcp... -
服务器带宽10M能带多少人同时访问之并发数计算
2020-05-26 21:29:5710M带宽云服务器够多少人同时在线访问?10M公网带宽并发量计算方法,哪个快分享10M带宽云服务器并发数计算方法: 10M带宽服务器并发数计算方法 云服务器10m带宽够多少人同时在线访问?哪个快网先来计算一下10M公网... -
解决远程连接服务器mysql数据库3306端口(其他端口类似)无法访问的问题
2019-04-25 11:48:53郁闷了几天的问题,远程无法连接服务器上的mysql服务,总结了下所有问题具体如下 第一步:你要确保在服务器上安装好Mysql,并能本地启动,本地连接数据库是没问题的,通过数据库管理工具诸如Navicat的可视化界面连接... -
用户访问网站原理及流程
2018-03-13 13:27:23原文地址:...打开浏览器输入网址回车,到看到页面的过程大纲:1、用户访问网站流程框架2、DNS解析原理 *****3、tcp/ip三次握手原理 *****4、http协议原理(www服务的请求过程)请求报文细节!5、大规... -
日均访问量过万的网站一般需要多大的云服务器
2019-05-31 15:07:51如果一个网站日均访问量过万的话,需要从配置和带宽方面来分析,那需要选择多大的配置和带宽呢?群英简单说说。 在网站建站初期,中小型企业建造的展现型网站,一般信息与访问量都较少,建议挑选低配置(群英云入门... -
关于代理服务器的原理及用法
2021-11-12 16:44:54除此之外我们还可以借助代理服务器来达成节省带宽的目的,以及加快内部网络对因特网的万维网的访问速度。 当客户端有因特网的数据要求时,Proxy会帮用户去向目的地取得用户所需要的数据。所以当客户端指定www的代理... -
Linux服务器直接访问太慢的一些原因处理
2017-10-16 11:39:54后来问du -h *看了下,还有几个G的硬盘。 这个就奇怪了,于是top看了下cpu使用情况,mysql一直占用99%的! 早上我也没做什么,然后看阿里云的后台的cpu使用情况,从早上10点左右一直到我写文章11:30都是99... -
服务器卡顿怎么办?如何处理
2022-03-16 16:18:31造成服务器卡顿会的原因有很多,一般来说主要的是以下几个: 1.服务器中毒,服务器中毒服务器如果中毒的话,会导致服务器对外发包,耗尽带宽,造成卡顿。建议可以对服务器进行杀毒,清楚可疑文件 2.服务器访问量大... -
阿里云服务器选购指南(图文教程详解)
2022-03-09 19:53:05第一次使用云服务器,不知道怎么选?下面这篇文章分别从服务器的国内外几大厂家服务对比、阿里云服务器的种类、用处、特点、四个明确详细的指南快速定位属于自己的一款云服务器。