Вы можете легко управлять с помощью Rich Rule.
Первый шаг
firewall-cmd --permanent --set-default-zone=home
firewall-cmd --permanent --zone=drop --change-interface=eth0
Второй шаг - добавление расширенного правила
firewall-cmd --permanent --zone=home --add-rich-rule='rule family="ipv4" source address="192.168.78.76/32" accept'
Все порты доступны для 192.168.2.2 после того, как вы добавите расширенное правило и заблокируете каждый порт из другого источника.
Если вы добавите какой-либо порт или службу с помощью приведенной ниже команды, они будут доступны для всех источников.
firewall-cmd --zone=public --add-service=ssh
firewall-cmd --zone=public --add-port=8080
Если вы хотите открыть определенный порт для определенного IP-адреса, используйте команду ниже
firewall-cmd --permanent --zone=home --add-rich-rule='rule family="ipv4" port="8080/tcp" source address="192.168.78.76/32" accept'
Очевидно, это не самый простой способ решить эту проблему, но вот более или менее обходной путь для копирования строки без автоматического экранирования с помощью zsh:
sudo apt-get install xclip
alias zhistory_paste='echo : `expr $(date +%s) + 1`:0\;`printf "$(xclip -o clipboard)\n"` >> ~/.zsh_history && fc -R'
Теперь, когда вы хотите что-то вставить, вы можете просто использовать zhistory_paste
, а затем нажать клавишу со стрелкой _вверх, чтобы выдернуть строку.
В то время как @JdeBP предоставил отличное объяснение того, что происходит, я, кажется, не вижу здесь, что можно сделать с этим поведением.
Простое заключение URL-ссылки в двойные кавычки предотвращает экранирование zsh при вставке в:
"http://example.com/?a=c"
вставленный контент:
"http://example.com/?a=c"