使用sshpass实现ssh、scp等免密登录
ssh 登陆不能在命令行中指定密码,sshpass 的出现则解决了这一问题。它允许你用 -p 参数指定明文密码,然后直接登录远程服务器,它支持密码从命令行、文件、环境变量中读取。
安装:yum install -y sshpass
sshpass [-f|-d|-p|-e] [-hV] command parameters
-f filename Take password to use from file
-d number Use number as file descriptor for getting password
-p password Provide password as argument (security unwise)
-e Password is passed as env-var "SSHPASS"
With no parameters - password will be taken from stdin
-P prompt Which string should sshpass search for to detect a password prompt
-v Be verbose about what you're doing
-h Show help (this screen)
-V Print version information
如:sshpass -p 'root' scp /opt/file.txt root@192.168.126.135:/home
PostgreSQL常用操作
- 创建数据库:
CREATE DATABASE db_name template tpl_name;
- 删除数据库:
drop database xxx;
- 创建用户:
CREATE USER xxx WITH PASSWORD 'admin';
- 删除用户:
drop user username;
- 授权:
GRANT ALL PRIVILEGES ON DATABASE my_database TO my_user;
nginx中的server_names_hash_max_size和server_names_hash_bucket_size
使用宝塔批量创建完几百个网站后,使用 nginx -t
检查配置时,提示 nginx: [warn] could not build optimal server_names_hash, you should increase either server_names_hash_max_size: 512 or server_names_hash_bucket_size: 64; ignoring server_names_hash_bucket_size
通过优化服务器名称哈希大小,可以提高Nginx在处理大量域名时的性能。根据实际情况,适当增大哈希大小可以减少冲突,提高查找速度。记住在修改哈希大小之前进行性能测试,并确保服务器有足够的内存支持。
server_names_hash_bucket_size
默认:server_names_hash_bucket_size 32|64|128;
配置块: http、server、location
为了提高快速寻找到相应server name的能力,Nginx使用散列表来存储server name。server_names_hash_bucket_size设置了每个散列桶占用的内存大小
server_names_hash_max_size
默认: server_names_hash_max_size 512;
配置块: http、server、location
server_names_hash_max_size越大,消耗的内存就越多,但散列key的冲突率则会降低,检索速度也更快。
解决方案:
修改nginx配置如下:
http {
....
server_names_hash_max_size 2048;
server_names_hash_bucket_size 512;
....
}
NFS简介
NFS基本简介
NFS(Network File System),它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
NFS服务的端口开在2049,但由于文件系统非常复杂。因此NFS还有其他的程序去启动额外的端口,这些额外的用来传输数据的端口是随机选择的,是小于1024的端口;既然是随机的那么客户端又是如何知道NFS服务器端到底使用的是哪个端口呢?这时就需要通过远程过程调用(Remote Procedure Call,RPC)协议来实现了RPC服务(portmap 或rpcbind服务)。
CentOS 防火墙FirewallD
firewalld是centOS7默认的防火墙,也是工作在网络层,属于包过滤防火墙。firewalld与iptables都是用来管理防火墙的工具,定义防火墙的各种规则,内部结构都指向netfilter内核态实现包过滤防火墙功能。firewalld提供了支持网络区域所定义的网络连接以及接口安全等级的动态防火墙管理工具。
SM国密加密算法简介
网站开启IPv6
前置条件:已通过阿里云控制台开启IPv6及公网带宽,并对安全组放行。
本地访问:需确保本地网络开通IPv6(手机默认开启IPv6)
域名解析:
记录类型:AAAA
记录值:IPv6对应的公网IP
权重:建议权重值低于IPv4解析权重值(阿里云IPv6带宽需单独付费)
配置Nginx:listen [::]:80; ## 监听 IPv6 的 80 端口
查看:netstat -ntlp | grep nginx
验证:curl -g -I http://[xxxx:xxxx:xxxx...]
网站查询:https://ipw.cn/