Articles of linux

nginxredirect到www.domain

我想把网站总是redirect到www.site.com。 但是,我不知道如何让WWW总是显示在前面应该说有人input的域没有WWW。 编辑: server { listen 80; server_name site.com; rewrite ^(.*) https://www.site.com$1 permanent; } server { listen 80; server_name www.site.com; #rewrite ^(.*) https://www.site.com$1 permanent; root /home/site/public_html; listen 443 ssl; 如果我inputsite.com,则转到https://www.site.com = SUCCESS 如果我inputsite.com/index.php,它会转到http://www.site.com = NO SSL 想法?

kill -3实际上终止了一个java进程吗? 或者只是生成一个线程转储?

CentOS 5.9 如果我运行kill -3 <java process pid>实际上发生了什么? 根据这篇红帽文章 ,我明白,Java线程转储是生成的,但进程已终止? 它似乎不是基于我的testing: [root@foobox ~]# kill -3 14559 [root@foobox ~]# service foo status foo (pid 14559) is running… 换句话说:我可以通过这种方式收集线程转储而不影响服务?

从系统pipe理员的angular度来看,Linux和FreeBSD系统的主要区别是什么?

从系统pipe理员的angular度来看,Linux和FreeBSD系统的主要区别是什么? Linux与BSD(内存/资源/用户pipe理,其他pipe理方法,configuration,文件系统等)有什么明显的区别? 从Linux切换到BSD可能是乏味和/或困难和/或混淆? 这些系统的共同特点是什么?

我在-rwxr-xr-x之后看到一个点

每当我在我的服务器发出ls -al命令时,我会在-rwxr-xr-x之后看到一个点 – -rwxr-xr-x. 谁能告诉我这是什么意思? 我无法从互联网上得到任何线索。

HTTPS SSH隧道

好吧,我有一个Web服务器,可以称之为服务器A,它通过HTTPS提供服务。 而我有一个SSH网关服务器,可以称之为服务器B. 由于防火墙规则,我无法从桌面Linux计算机访问服务器A的Web服务。 因此,要查看Web服务,我必须使用X转发到服务器B进行SSH,然后通过SSH隧道运行Firefox。 服务器B可以访问服务器A的Web服务,所以它的工作原理。 我想知道是否可以在我的PC和服务器B之间创build一个SSH隧道,这将允许我使用我的桌面Web浏览器访问服务器A上的服务,而不是通过SSH隧道运行Firefox。

无法访问网站或重新启动apache2服务器

input时出现错误: sudo /etc/init.d/apache2 restart * Restarting web server apache2 [fail] * The apache2 configtest failed. Output of config test was: apache2: Syntax error on line 204 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/authz_default.load: Cannot load /usr/lib/apache2/modules/mod_authz_default.so into server: /usr/lib/apache2/modules/mod_authz_default.so: cannot open shared object file: No such file or directory Action 'configtest' failed. The […]

Nginx的PHP-fpm权限

当我在nginx.conf中将用户设置为root用户时: user root root; 那么我的网站正在工作,但是当我把它设置为nginx nginx我得到日志中的错误: connect()unix:/var/run/php-fpm/php-fpm.sock失败(13:权限被拒绝) 我正在使用PHP-FPM 5.5,并确保文件夹所有者是nginx +执行权限已启用。 我错过了什么? 谢谢 – – – – – – – – -编辑: 快速编辑时手动更改php-fpm.sock权限它的工作。 我如何开始正确的权限的PHP-hpm?

在大型安装环境中使用rpm和yum进行应用程序安装

我们非常庞大的组织已经制定了托pipe应用程序的标准,该标准规定应用程序及其依赖的所有组件必须位于与操作系统本身不同的专用应用程序卷中。 例如,如果应用程序是用Perl编写的,那么我们需要在应用程序卷内维护一个独立的Perl实例。 其原因在于操作系统和应用程序所依赖的那些组件可能并经常具有冲突的版本要求,并且迫使应用程序维护其自己的资源使得修补操作系统变得更容易。 而且,它确保应用程序数据和日志不会被塞进基于OS的工具所在的位置(例如,这对于httpd尤其重要)。 此外,除非存在有效的文档logging技术原因,否则应用程序进程必须以非特权用户身份运行,而不能以root身份运行。 我们在Linux中已经有了解决方法,这样像Web服务器这样的进程可以作为非特权用户运行,并接受从特权端口(80和443)转发到他们正在监听的非特权端口的连接。 为了透视,我是公司的Unix / Linux SA安全专家,我与平台技术支持专家紧密合作,以维护和执行上面列出的标准。 我的责任的很大一部分是审查通过sudo,这是集中pipe理的特权访问请求。 我们的标准Linux是Red Hat,但Ubuntu和CentOS也被考虑用于云环境。 问题在于,我们目前正在受到来自应用程序团队的请求的轰炸,以便允许他们(通过sudo)使用rpm和yum来安装Linux应用程序,因为供应商要求这样做,并且无法提供任何其他方式来安装应用程序。 这与我们的标准以多种方式冲突: rpm和yum工具必须以root权限运行。 这意味着他们所做的一切都以root身份运行,因此必须经常调整所得到的安装,使其作为非特权用户运行。 包通常指定组件必须安装在根卷中,而不是在指定的卷下。 如果可以指定包树的根,通常供应商坚持认为它保持不变,因为它们只在包中指定的精确环境中进行testing。 最后,rpm和yum从系统可用的存储库中提取依赖关系,虽然我们要求应用程序使用我们的Satellite存储库来获取Red Hat提供的任何东西,但是供应商通常会提供自己的必须包含在软件中的回购。 我的问题是,如何指定或限制在这样的环境中使用rpm和yum,以确保不会发生包冲突,并且可以安全地应用系统安全补丁,而不是完全禁止将这些工具用于应用软件我们到现在为止一直在做这些事情,并发现这是徒劳无功的)?

允许nagios插件check_dhcp在没有setuid root的情况下工作

Nagios有一个插件, check_dhcp ,完全符合你的想法。 普遍build议安装它setuid根,因为它使用SO_BINDTODEVICE ,通常只有root可以做。 当然类似的事情也可以用sudo来完成,但是check_dhcp在不需要它们的时候会以整个root权限执行。 不幸的是, check_dhcp似乎被这个用法写得相当愚蠢,并且在做它需要做的事情之后,并没有试图删除root权限。 这导致至less一个已知的安全问题 ,但通常是不好的做法 ,我不想这样做。 所以我想知道,是否有某种方式可以启用check_dhcp做必要的networking接口frobbing,而不会完全授予它所有的root权限? 也许有一些function,SELinux,AppArmor或类似的东西? 寻找一个Linux解决scheme – 特别是Ubuntu 14.04。

无法挂载'/ dev / sda'

我的服务器在软RAID 1中有两个2 TB的硬盘驱动器。 我无法挂载/dev/sda 。 parted -l输出parted -l root@rescue:~# parted -l Model: ATA HGST HUS724020AL (scsi) Disk /dev/sda: 2000GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 20.5kB 1049kB 1029kB primary bios_grub 2 2097kB 1987GB 1987GB primary 3 1987GB 1992GB 5242MB ext4 primary 4 1992GB […]